home *** CD-ROM | disk | FTP | other *** search
/ Black Box 4 / BlackBox.cdr / os2 / dvidrv1.arj / EMTEX / DOC / GERMAN / MAKEDOT.DOC < prev    next >
Encoding:
Text File  |  1990-09-22  |  17.4 KB  |  421 lines

  1. ==============================================================================
  2. MAKEDOT.DOC für makedot 1.1c                               VERSION: 22.09.1990
  3. ==============================================================================
  4.  
  5. Dieses Programm wird zur Erzeugung von Parameterdateien für dvidot
  6. verwendet. Es hat zwei Funktionen:
  7.  
  8.     -   Umwandlung einer Textdatei in eine Parameterdatei (.dot).
  9.     
  10.     -   Umwandlung einer Parameterdatei (.dot) in eine Textdatei.
  11.  
  12. Wenn Sie eine Parameterdatei ändern wollen, müssen Sie diese
  13. zunächst in eine Textdatei umwandeln lassen. Diese Textdatei können
  14. Sie dann mit einem Texteditor ändern. Anschließend kann aus dieser
  15. Textdatei eine Parameterdatei erzeugt werden.
  16.  
  17.  
  18. Aufruf
  19. ======
  20.  
  21. Umwandlung einer Textdatei in eine Parameterdatei:
  22.  
  23.     makedot -c <eingabe_datei> [<ausgabe_datei>]
  24.  
  25. Die Standarderweiterung für die Ausgabedatei ist dot. Wenn keine
  26. Ausgabedatei angegeben wird, wird der Name der Eingabedatei (mit .dot)
  27. verwendet. Wenn für die Eingabedatei - angegeben wird, so wird
  28. von der Standardeingabe (stdin) gelesen.
  29.  
  30.  
  31. Umwandlung einer Parameterdatei in eine Textdatei:
  32.  
  33.     makedot -d <eingabe_datei> [<ausgabe_datei>]
  34.  
  35. Die Standarderweiterung für die Eingabedatei ist dot. Wenn keine
  36. Ausgabedatei angegeben wird, wird der Name der Eingabedatei
  37. (ohne Erweiterung .dot) verwendet. Wenn für die Ausgabedatei - angegeben
  38. wird, so erfolgt die Ausgabe auf die Standardausgabe (stdout).
  39.  
  40.  
  41. Aufbau der Textdatei
  42. ====================
  43.  
  44. Eine Textdatei kann Kommentarzeilen enthalten. Diese beginnen mit
  45. einem `*'. Alle Zeichen nach diesem Stern werden ignoriert.
  46. Auch Leerzeilen werden ignoriert.
  47.  
  48. Alle anderen Zeilen enthalten ein Schlüsselwort nach dem
  49. ein Gleichheitszeichen stehen muß. Nach dem Gleichheitszeichen
  50. folgen die Parameter für dieses Schlüsselwort. (Die Parameter
  51. können bei manchen Schlüsselwörtern auch fehlen.)
  52.  
  53.  
  54. Schlüsselwörter
  55. ---------------
  56.  
  57. In der folgenden Tabelle sind alle Schlüsselwörter aufgeführt.
  58. Sie müssen alle hier gezeigten Schlüsselwörter (außer COMMENT und
  59. VF_PATH) in der gezeigten Reihenfolge benutzen. Optionale Teile einer
  60. Zeile sind in eckige Klammern eingeschlossen, Alternativen
  61. durch senkrechte Striche getrennt. Für die verschiedenen
  62. Sorten von Argumenten werden diese Abkürzungen benutzt:
  63.  
  64.     d       Längenangabe (dimension): Zahl und TeX-Einheit (auch px)
  65.     n       Zahl
  66.     s       Druckersteuersequenz
  67.     t       Text
  68.  
  69. Diese Argumenttypen sind weiter unten erklärt. Nun folgt
  70. Tabelle der Schlüsselwörter:
  71.  
  72.     [COMMENT=[t]]               Kommentar. Der Kommentar wird in der
  73.                                 Parameterdatei gespeichert aber ignoriert.
  74.  
  75.     ENV_NAME=t                  Name einer Environmentvariablen, aus der
  76.                                 dvidot Optionen entnehmen soll.
  77.  
  78.     LOG_NAME=t                  Name der Protokolldatei.
  79.  
  80.     FONT_PATH=t                 Pfad für Zeichensatzdateien. Dies ist
  81.                                 die Voreinstellung für /pf*.
  82.  
  83.     [VF_PATH=t]                 Pfad für vf-Dateien. Dies ist die
  84.                                 Voreinstellung für /pv* und sollte
  85.                                 leergelassen werden.
  86.  
  87.     PAGE_WIDTH=d                Seitenbreite. Voreinstellung für /w#.
  88.  
  89.     PAGE_HEIGHT=d               Seitenhöhe. Voreinstellung für /h#.
  90.  
  91.     FORM_LENGTH=[d]             Blattlänge. Voreinstellung für /hf#.
  92.                                 Wird nur bei FF_METHOD=LF benötigt.
  93.                                 Wenn d nicht angegeben ist, verwendet
  94.                                 dvidot die eingestellte Seitenhöhe
  95.                                 als Blatthöhe.
  96.  
  97.     RESOLUTION=n1 n2            Auflösung. n1 ist die Voreinstellung
  98.                                 für /rx#, n2 ist die Voreinstellung
  99.                                 für /ry#.
  100.  
  101.     COLUMNS=n                   Maximale Anzahl der Druckspalten
  102.                                 im Grafikmodus. Dieser Wert ist eine
  103.                                 obere Grenze für /w#.
  104.  
  105.     ONE_LINE_FEED=[n]           Dieser Wert wird bei INIT1 und INIT2
  106.                                 zum Programmieren des Zeilenabstandes
  107.                                 des Druckers verwendet. Wenn bei
  108.                                 LINE_FEED (siehe unten) der Zeilenabstand
  109.                                 umprogrammiert wird, so muß das
  110.                                 Argument bei ONE_LINE_FEED leer bleiben.
  111.  
  112.     BLANK_WIDTH=[n]             Breite eines Leerzeichens. Leerzeichen
  113.                                 werden am linken Rand benutzt, um
  114.                                 den Druckkopf nach rechts zu bewegen.
  115.                                 Hierzu wird die Breite eines Leerzeichens
  116.                                 in Grafikpunkten benötigt. Sollen keine
  117.                                 Leerzeichen zum Einrücken benutzt werden,
  118.                                 so ist das Argument leer zu lassen.
  119.  
  120.     METHOD=n1 n2                Druckmethode. Der Wert n1 gibt an, wieviele
  121.                                 Bytes pro Grafikspalte an den Drucker
  122.                                 geschickt werden müssen (1 bis 6).
  123.                                 Der Wert n2 gibt an, wie oft eine
  124.                                 Zeile überdruckt werden soll (mit kleinstem
  125.                                 Zeilenabstand dazwischen). Wenn z.B. der
  126.                                 Nadelabstand 1/72 Zoll beträgt und der
  127.                                 Drucker halbwegs zuverlässig 1/216-Zoll-
  128.                                 Papervorschübe ausfühen kann, sollte für
  129.                                 n2 3 angegeben werden. Damit wird in diesem
  130.                                 Beispiel eine vertikale Auflösung von 216 DPI
  131.                                 erzielt. Es können Werte von 1 bis 6
  132.                                 verwendet werden.
  133.  
  134.     MAX_WIDTH=[n1 [n2]]         Wenn die Seitenbreite (in Grafikpunkte
  135.                                 umgerechnet) auf einen dieser Werte ein-
  136.                                 gestellt wird, so wird die Seitenbreite
  137.                                 um eins verringert, damit der Drucker keinen
  138.                                 Zeilenvorschub erzeugt, wenn der rechte
  139.                                 Rand erreicht wird. Auf diese Weise wird
  140.                                 am rechten Rand ein Grafikpunkt leergelassen.
  141.  
  142.     PINS=n1 n2                  Bitnummern der Nadeln. n1 ist das Bit,
  143.                                 das für die oberste Nadel zuständig ist,
  144.                                 n2 ist das Bit, das für die unterste
  145.                                 Nadel zuständig ist (meistens PINS=0 7
  146.                                 oder PINS=7 0). Es können Werte von 0 bis 7
  147.                                 angegeben werden.
  148.  
  149.     MAX_LF=n                    Dies ist die der größte mit einer
  150.                                 Druckersteuersequenz (siehe LINE_FEED)
  151.                                 erzielbare Zeilenvorschub in Grafikpunkten.
  152.  
  153.     FF_METHOD=FF|LF             Seitenvorschub mit der Druckersteuersequenz
  154.                                 FORM_FEED (siehe unten) oder mit vielen
  155.                                 Zeilenvorschüben (siehe FORM_LENGTH).
  156.  
  157.     S_OPTION=OFF|SLOW|DOUBLE_STRIKE
  158.                                 Bedeutung der /s+-Option. Bei Einstellung
  159.                                 von OFF gibt es /s+ überhaupt nicht.
  160.                                 Bei SLOW bewirkt /s+ die Verwendung von
  161.                                 INIT2 statt INIT1. Bei DOUBLE_STRIKE
  162.                                 bewirkt /s+ die Verwendung von INIT2 statt
  163.                                 INIT1 sowie das Drucken mit zwei Durch-
  164.                                 läufen pro Zeile. Wenn mit zwei Durchläufen
  165.                                 pro Zeile gedruckt wird, werden beim
  166.                                 ersten Durchlauf nur die 1., 3., usw.
  167.                                 Grafikspalte bedruckt, beim zweiten
  168.                                 Durchlauf nur die 2., 4., usw. Grafikspalte.
  169.                                 Dies ist für Drucker gedacht, die eine
  170.                                 Nadel nicht zweimal in Folge abfeuern können.
  171.  
  172.     INIT1=[s]                   Druckersteuersequenz, die zu Beginn an
  173.                                 den Drucker geschickt wird, falls /s-
  174.                                 eingestellt ist (Voreinstellung).
  175.                                 Als Parameter für Druckersteuersequenz
  176.                                 wird der mit ONE_LINE_FEED eingestellte
  177.                                 Wert verwendet.
  178.  
  179.     INIT2=[s]                   Druckersteuersequenz, die zu Beginn an
  180.                                 den Drucker geschickt wird, falls /s+
  181.                                 eingestellt ist.
  182.                                 Als Parameter für Druckersteuersequenz
  183.                                 wird der mit ONE_LINE_FEED eingestellte
  184.                                 Wert verwendet.
  185.  
  186.     EXIT=[s]                    Druckersteuersequenz, die am Ende
  187.                                 an den Drucker geschickt wird.
  188.  
  189.     GRAPH_MODE=[s]              Druckersteuersequenz, die den Grafikmodus
  190.                                 einleitet. Auf diese Sequenz folgen
  191.                                 unmittelbar die Grafikdaten. Als Parameter
  192.                                 für die Druckersteuersequenz wird die
  193.                                 Breite der Grafik (Grafikpunkte) verwendet.
  194.  
  195.     GRAPH_END=[s]               Druckersteuersequenz, die unmittelbar
  196.                                 nach den Grafikdaten an den Drucker
  197.                                 geschickt wird. Üblicherweise leer.
  198.  
  199.     LINE_FEED=[s]               Druckersteuersequenz zum Erzeugen eines
  200.                                 Zeilenvorschubs. Wenn ONE_LINE_FEED
  201.                                 gesetzt ist, muß der damit eingestellte
  202.                                 Zeilenvorschub erzeugt werden. Außerdem
  203.                                 wird diese Sequenz bei FF_METHOD=LF
  204.                                 verwendet.
  205.  
  206.     FORM_FEED=[s]               Druckersteuersequenz zum Erzeugen eines
  207.                                 Blattvorschubs. Wird bei FF_METHOD=FF
  208.                                 benötigt.
  209.  
  210.     POS_X=[s]                   Druckersteuersequenz zum direkten
  211.                                 horizontalen Positionieren des Druckkopfs.
  212.                                 Als Parameter für die Druckersteuersequenz
  213.                                 wird die horizontale Position in Grafikpunkten
  214.                                 verwendet. Nicht erforderlich.
  215.  
  216. Druckersteuersequenzen
  217. ----------------------
  218.  
  219. Die Druckersteuersequenzen bestehen im allgemeinen aus mehreren
  220. Stücken, die jeweils durch Leerzeichen getrennt werden. Für jedes
  221. einzelne Stück gibt es die folgenden Möglichkeiten:
  222.  
  223.     ASCII-Steuercodenamen und andere Codenamen.
  224.     
  225.         NUL     Code 00(hex) 0(dez).
  226.         SOH     Code 01(hex) 1(dez).
  227.         STX     Code 02(hex) 2(dez).
  228.         ETX     Code 03(hex) 3(dez).
  229.         EOT     Code 04(hex) 4(dez).
  230.         ENQ     Code 05(hex) 5(dez).
  231.         ACK     Code 06(hex) 6(dez).
  232.         BEL     Code 07(hex) 7(dez).
  233.         BS      Code 08(hex) 8(dez).
  234.         TAB     Code 09(hex) 9(dez).
  235.         HT      Code 09(hex) 9(dez).
  236.         LF      Code 0A(hex) 10(dez).
  237.         VT      Code 0B(hex) 11(dez).
  238.         FF      Code 0C(hex) 12(dez).
  239.         CR      Code 0D(hex) 13(dez).
  240.         SO      Code 0E(hex) 14(dez).
  241.         SI      Code 0F(hex) 15(dez).
  242.         DLE     Code 10(hex) 16(dez).
  243.         DC1     Code 11(hex) 17(dez).
  244.         DC2     Code 12(hex) 18(dez).
  245.         DC3     Code 13(hex) 19(dez).
  246.         DC4     Code 14(hex) 20(dez).
  247.         NAK     Code 15(hex) 21(dez).
  248.         SYN     Code 16(hex) 22(dez).
  249.         ETB     Code 17(hex) 23(dez).
  250.         CAN     Code 18(hex) 24(dez).
  251.         EM      Code 19(hex) 25(dez).
  252.         SUB     Code 1A(hex) 26(dez).
  253.         ESC     Code 1B(hex) 27(dez).
  254.         FS      Code 1C(hex) 28(dez).
  255.         GS      Code 1D(hex) 29(dez).
  256.         RS      Code 1E(hex) 30(dez).
  257.         US      Code 1F(hex) 31(dez).
  258.         DEL     Code 7F(hex) 127(dez).
  259.  
  260.     Klartext.
  261.  
  262.         'x      Einzelzeichen. Jedes Zeichen nach <'> wird direkt übernommen.
  263.         "xxx"   Mehrere Zeichen. Alle Zeichen zwischen <"> und dem nächsten
  264.                 <"> in derselben Zeile werden direkt übernommen.
  265.  
  266.     Zahlen (geben einen Zeichencode an).
  267.  
  268.         0###    Oktalzahl. # sind die einzelnen Ziffern (0-7).
  269.         0x##    Hexadezimalzahl. # sind die einzelnen Ziffern (0-9, A-F).
  270.         ###     Dezimalzahl. # sind die einzelnen Ziffern (0-9).
  271.                 Vorsicht: Bei führender Null wird eine Zahl als Oktalzahl
  272.                 interpretiert (siehe 0###).
  273.  
  274.     Steuerzeichen.
  275.  
  276.         ^A      Steuerzeichen: ^a bis ^z und ^A bis ^Z ergeben Codes 1 bis 26,
  277.                 ^@ ergibt Code 0.
  278.  
  279.     Parameter (Einfügen eines Parameters (Zahl) in die Druckersteuersequenz).
  280.  
  281.         Hier sind folgende Angaben möglich (xx siehe unten):
  282.             xx+#        Zuvor # zum Parameter addieren
  283.             xx-#        Zuvor # vom Parameter subtrahieren
  284.             xx*#+#      Zuvor Parameter mit erster Zahl multiplizieren, dann
  285.                         zweite Zahl addieren
  286.             xx*#-#      Zuvor Parameter mit erster Zahl multiplizieren, dann
  287.                         zweite Zahl subtrahieren
  288.         Nur xx ist nicht zulässig, Sie sollten stattdessen xx+0 verwenden.
  289.         Für xx gibt es folgende Möglichkeiten:
  290.  
  291.         D1 bis D9
  292.                 Der Parameter wird als Dezimalzahl (Text) mit führenden
  293.                 Nullen eingefügt (D1: eine Stelle, D9: neun Stellen).
  294.  
  295.         L
  296.                 Der Parameter wird als Binärzahl (ein Byte) eingefügt.
  297.                 Es wird das niederwertige Byte verwendet.
  298.  
  299.         H
  300.                 Der Parameter wird als Binärzahl (ein Byte) eingefügt.
  301.                 Es wird das höherwertige Byte verwendet.
  302.  
  303.         LH
  304.                 Der Parameter wird als Binärzahl in zwei Bytes zerlegt
  305.                 eingefügt (niederwertiges Byte zuerst, dann höherwertiges).
  306.  
  307.         HL
  308.                 Der Parameter wird als Binärzahl in zwei Bytes zerlegt
  309.                 eingefügt (höherwertiges Byte zuerst, dann niederwertiges).
  310.  
  311.  
  312. Beispiele für Druckersteuersequenzen
  313. ------------------------------------
  314.  
  315. 240-DPI-Grafikmodus des EPSON FX-80:
  316.  
  317.         ESC '* 3 LH+0
  318.  
  319.     Hexadezimal sieht das so aus: 1B 2A 03 n1 n2, wobei n1+256*n2
  320.     die Breite der Grafik in Grafikpunkten (Spalten) ist.
  321.  
  322. Zeilenvorschub bei NEC P6:
  323.  
  324.         FS '3 L+0 LF
  325.  
  326.     Hexadezimal sieht das so aus: 1C 33 n1 0A. Das Papier
  327.     wird um n1/360 Zoll bewegt.
  328.     
  329. Horizontale Positionierung bei C.ITOH 8510A:
  330.  
  331.         ESC 'F D4+0
  332.  
  333.     Hexadezimal sieht das so aus: 1B 46 n1 n2 n3 n4, wobei n1 bis n4
  334.     Ziffern (30 bis 39) sind, die die horizontale Position angeben.
  335.  
  336. 24-Nadel-Grafikmodus, bei dem die Anzahl der Bytes + 1 angegeben wird:
  337.  
  338.         ESC "[g" LH*3+1 5
  339.  
  340.     Wenn z.B. 100 Grafikspalten gedruckt werden, sieht das hexadezimal so aus:
  341.  
  342.         1B 5B 67 2D 01 05
  343.                  ^^^^^
  344.                  301 = 3*100+1
  345.  
  346. Sinnloses Beispiel:
  347.  
  348.         ^A "abc" TAB '  010 10 0x10 " ' "
  349.  
  350.     Hexadezimal sieht das so aus: 01 61 62 63 09 20 08 0A 10 20 27 20.
  351.  
  352.  
  353. Hinweise
  354. ========
  355.  
  356. Einige der Einstellungen können auch über Kommandozeilenoptionen von
  357. dvidot verstellt werden -- das ist der Weg der vorzuziehen ist.
  358. Pro Drucker (und Modus) sollte nur eine Parameterdatei verwendet werden.
  359. Über die Paramterdatei werden für die einstellbaren Dinge, z.B.
  360. Pfad für Zeichensätze, lediglich halbwegs sinnvolle Werte vorgegeben,
  361. die eigentliche Einstellung geschieht über die Kommandozeilenoptionen
  362. und die Konfigurationsdateien.
  363.  
  364. Bitte die mitgelieferten Parameterdateien nicht verändern!
  365. (Sie können diese aber -- unter anderem Namen -- weiterverwerten.)
  366.  
  367. Wenn Sie eine neue Parameterdatei erstellt und erfolgreich getestet
  368. haben, sollten Sie diese an den Autor (Adresse siehe readme.doc) schicken,
  369. damit auch andere Leute etwas von Ihrer Mühe haben und für jeden Drucker
  370. ein gewisser Standard gewahrt wird.
  371.  
  372. Wenn Sie Ihren Nadeldrucker nicht mit dvidot/makedot betreiben können,
  373. sollten Sie sich mit dem Autor in Verbindung setzen, so daß dvidot/makedot
  374. entsprechend erweitert werden können.
  375.  
  376. Wenn Sie für einen Drucker Zeichensätze benötigen, die bisher nicht
  377. vom Autor angeboten werden, sollten Sie sich an diesen wenden, bevor
  378. Sie Ihren Rechner mit MFjob quälen. Es reicht wenn einer die Zeichensätze
  379. ausrechnen läßt! Allerdings sollten Sie selbst geeignete METAFONT-Parameter
  380. für den gewünschten Drucker finden und mitteilen.
  381.  
  382. Wenn eine Parameterdatei in einer Druckersteuersequenz xx*#+# oder xx*#-#
  383. enthält, kann diese nicht mit älteren Versionen von dvidot verwendet werden.
  384.  
  385.  
  386. Entstehungsgeschichte
  387. =====================
  388.  
  389. Version 1.0a (21.02.90):
  390. ------------------------
  391.  
  392. Erste Version.
  393.  
  394.  
  395. Version 1.1a (22.03.90):
  396. ------------------------
  397.  
  398. -   Neues Schlüsselwort: VF_PATH.
  399.  
  400. -   METHOD=n1 n2: Nun n1 und n2 von 1 bis 6.
  401.  
  402.  
  403. Version 1.1b (22.06.90):
  404. ------------------------
  405.  
  406. -   xx*#+# und xx*#-#.
  407.  
  408.  
  409. Version 1.1c (22.09.90):
  410. ------------------------
  411.  
  412. -   Fehler beseitigt: Die Ausgabe von `makedot -d' bei LH+n und HL+n mit n
  413.     ungleich 0 war falsch.
  414.  
  415.  
  416. -   Fehler beseitigt: Die Ausgabe von `makedot -d' bei BLANK_WIDTH=<leer>
  417.     war falsch.
  418.  
  419.  
  420.                   -------- Ende von MAKEDOT.DOC -------------
  421.