ĝ˙ĝŭ13.GRAFIKĝ˙ĝŭ >>1 Hier ist nicht die Layout-šbersicht gemeint, wie sie unter den USER- Functions erreichbar ist! ĝ˙13.1.ĝ˙ M”glichkeiten >>2 UNI_ED.PRG erlaubt die Einbindung von Grafiken in den laufenden Text und deren Ausdruck auf einem beliebigen Drucker (24-Nadel uneingeschr„nkt, auf einem 9-Nadler/PCL-Drucker max. 5 Grafiken nebeneinander, beliebig viele untereinander). Die Grafiken mssen im 32'000-Byte-Screen-Format vorliegen, wie es z.B. GFABasic recht einfach selber produzieren kann (SPUT). Andere Formate werden nicht untersttzt! Das wird sich auch in sp„teren Versionen von UNI_ED.PRG nicht „ndern! UNI_ED.PRG vermag daraus 640x384 Punkte auf einem 24-Nadeldrucker mit EPSON-LQ-Kompatibilit„t auszudrucken. Das Seitenverh„ltnis bleibt dabei erhalten. Ein Kreis auf dem Bildschirm bleibt ein Kreis auf dem Drucker, weil in beide Richtungen mit 180 DpI gedruckt wird. Daraus ergibt sich eine ungef„hre Gr”že von 9x5 cm. Wenn Sie 90 DpI eingestellt haben, wird die Grafik 18*10 cm grož werden. Ein 9-Nadler nimmt 640*~390 Punkte aus dieser Grafik und druckt mit 72*90 DpI. Seine Grafik hat exakt (<5% Fehler) dieselbe Gr”že wie der Ausdruck mit einem 24-Nadler. Auf den Druckern von HP, die die Kommandosprache PCL verstehen (DeskJet/ LaserJet) wird dieselbe Gr”že erreicht, wobei aber mit (verminderten) 300 DpI gedruckt wird. Die Angleichung an die 24-Nadler-Aufl”sung braucht aber viel Rechenzeit! Es ist nicht m”glich, den Bildbereich zu begrenzen, z.B. auf 320x196 Punkte. Allerdings kann in die Grafik hinein der normale ASCII-Text hineinreichen. Dieser wird dann šBER die Grafik gedruckt. So ist es z.B. auch m”glich, einer Textpassage ein Bild zu UNTERLEGEN! Dies ist auf ĝŭallenĝŭ Druckern m”glich! UNI_ED.PRG muž alle einzelnen 245'760 Bits testen und daraus die 30720 Bytes fr den Drucker berechnen. Ein Ausdruck eines Bildes dauert gut 30 Sekunden! Links unten in der Ecke sehen Sie entweder die normale Zeileanzeige oder die momentane Pixelzeile (0 bis 383). Fr PCL-Drucker mssen 85120 Bytes (oder das Vierfache!) erzeugt werden, was entsprechend l„nger dauert! ĝ˙13.2.ĝ˙ Druckverfahren >>2 Jede einzelne Zeile wird nach einem sog. Bild-Bezeichner durchsucht. Fr das Druckmodul REVERSE24 gilt: Wurde einer oder beliebige viele dieser Bildbezeichner in dieser Zeile gefunden, werden diese Bilder nacheinander als ERSTES gedruckt. Nach jedem Bilddruck wird der 24er- Drucker mit einer ESC-Sequenz ZURšCK GEFAHREN, „hnlich wie ein Plotter. Dann erst wird der restliche Text dieser Zeile gedruckt. Dieses Verfahren hat u.A. den Vorteil, daž zum Ausdrucken der Grafik der Zeilenabstand nicht verstellt werden muž wie bei 1_WORD+ etwa. Auch die Seitenl„nge wird nicht tangiert. Auf einem 9-Nadler kann dieses Verfahren nicht angewendet werden, weil die Sequenz ESC+'j' dort nicht definiert ist. Auch wenn dies der Fall sein sollte, kann es sein, daž sich mit dieser Sequenz das Papier nicht gengend zurckfahren l„žt, n„mlich bis zu 10 cm. Das gilt leider auch fr manche 24-Nadel-Drucker. Diese mssen dann auch das 9-Nadel-Drucker- Verfahren anwenden (bei leicht 'verschobenem' Zeilenabstand!) - was ein 8- Nadel-Verfahren ist: Grafiken und Text mssen quasi gleichzeitig gedruckt werden. Nebeneinander oder auch nur sich teilweise berlappende Grafiken muž das Druck-Modul fr UNI_ED. PRG gleichzeitig im Speicher halten. Maximal 5 Grafiken k”nnen sich berlappen. Bei einem 24-Nadler mit ausreichendem 'Rckw„rts'-Betrieb gibt es diese Grenze nicht. Der Grafik-Druck muž von einem eigenen, passenden Druck-Modul bernommen werden. UNI_ED.PRG ist in der Lage, ein solches Modul zu laden und mit den n”tigen Informationen zu versehen! (Bisher existieren: DRUCK_8/9/24, REVERSE24 und DRUCK_HP) ĝ˙13.3.ĝ˙ Bild-Kennungen >>2 Mit '&_&g' wird ein Bild-Bezeichner fr ein Bild im 32-KB-Screen-Format eingefhrt. Nach diesem Bezeichner muž unbedingt die Bildnummer mit 2 Stellen kommen. Am besten schreiben Sie diese mit einer fhrenden '0', wenn die Zahl unter 10 liegt: '&_&g02' Nach einem Doppelpunkt kommt der Dateiname, abgeschlossen mit einem '&_&': '&_&g02:test2.pic&_&' Dieser Bezeichner ist normaler ASCII-Text, der aber beim Ausdruck berlesen wird. FšR DEN DRUCK DIESER ANLEITUNG MUSSTE ZWISCHEN DIE BEIDEN & DER UNTERSTRICH _ EINGEFšGT WERDEN, DAMIT UNI_ED.PRG NICHT FŽLSCHLICH ANNIMMT, HIER SEI EIN BILD GEMEINT! BITTE SCHREIBEN SIE DIE BEIDEN & ZUSAMMEN OHNE DEN UNTERSTRICH! Ist die Grafiken-Anzeige eingeschaltet, werden diese Bilder an der betreffenden Stelle angezeigt. Die Geschwindigkeit beim Scrollen vermindert sich nur dann, wenn UNI_ED.PRG die kleine Grafik mit einem einzigen PUT- Befehl ausgibt - und der Blitter nicht eingeschaltet ist. Hier macht sich der Blitter wirklich bemerkbar durch die dann fehlende Verz”gerung. Die Grafik 'flutscht' dann nur so ber den Schirm! ĝ˙13.4.ĝ˙ Bilddarstellung auf dem Bildschirm >>2 Die Bilder mssen freilich erst eingelesen werden, bevor sie angezeigt werden k”nnen. UNI_ED.PRG liest die Bilder beim ersten Einlesen des ASCII- Textes NICHT mit ein: UNI_ED.PRG war halt ursprnglich ein ASCII-Editor! Durch das Einschalten der Grafik-Anzeige im Programm unter O_ptionen werden diese Bilder eingelesen und entsprechend fr die Anzeige 'umgeformt': Da der Text auf dem Bildschirm sich natrlich in der Gr”že nicht „ndert, muž die Grafik dem Aussehen der Umgebung angepasst werden. Haben Sie vor, den Text in Elite zu drucken, muž die Grafik auf dem Bildschirm GR™SSER werden, damit Sie deren Grenzen erkennen k”nnen. Entsprechendes gilt fr den Zeilenabstand. Sie k”nnen sich dann darauf verlassen, daž die Grafik soviel Platz auf dem Papier braucht, wie sie auf dem Bildschirm einnimmt! Wenn Sie allerdings mit Elite drucken und Pica bei den Bild-Parametern angegeben haben, wird die Grafik scheinbar 'gr”žer' auf dem Papier als auf dem Bildschirm! Die erste Zeile der Grafik ist gel”scht, damit Sie den Bildbezeichner noch lesen k”nnen. Er w„re sonst zur Unkenntlichkeit durch das Bild berschrieben. Die restliche Grafik wird 'transparent' auf den Bildschirm gebracht, sodaž Sie Text, der UNTER der Grafik liegt, noch lesen k”nnen. Vor dem Drucken wird eine kurze Abfrage nach den Bilddateien durchgefhrt. Kann UNI_ED.PRG dann die Dateien nicht finden, wird das angemahnt. In den COLOR-Modi wird eventuell nur der Rahmen um das Bild angezeigt, nicht das eigentliche Bild selber! Bitte sehen Sie noch unter O_ptionen 17.16 G_rafik-Anzeige nach! ĝ˙ĝŭ14.REFORMATIEREN (Hinweise zum Spaltensatz)ĝ˙ĝŭ >>1 ĝ˙14.1.ĝ˙ AUTO-Modus ^Oww >>2 Im Auto-Modus wird beim ersten Buchstaben, der ber die rechte Umbruch- Linie hinausgeht, ein m”gliches 'Trennzeichen' VOR dieser Linie im Text gesucht und der Text danach in die n„chste Zeile bernommen. Der Cursor steht dann in der n„chsten Zeile. Konnte diese nachfolgende Zeile den Text noch aufnehmen, wird keine neue Zeile eingefgt, andernfalls muž eine neue Zeile eingefgt werden. Auf diese Weise ist sichergestellt, daž eine Eingabe den rechten Rand auf keinen Fall berschreitet! šbernehmen Sie Texte aus einem anderen Zusammenhang und einzelne Zeilen gehen ber diese Umbruchlinie hinaus, wird bei Eingabe in eine Zeile, gleichgltig, ob vor oder nach der Umbruchlinie, die aktuelle Zeile so reformatiert, daž der rechte Rand wieder eingehalten worden ist. Freilich kann dadurch der Text sehr unsch”n aussehen. ĝ˙14.2.ĝ˙ Schnell-Reformatierung ^B >>2 Einen so zerst”rten Textabschnitt k”nnen Sie schnell in Ordnung bringen, indem Sie den Cursor irgendwo in diesem Abschnitt positionieren oder auch einfach an der fraglichen Stelle belassen und die Reformatierung ausl”sen. UNI_ED.PRG reformatiert dann OHNE Rckfrage 'schnell' den betreffenden Abschnitt in der gerade aktuellen Zeilenl„nge. Die O_ption T_rennung wird aber bercksichtigt. ********************************************************* In sehr, sehr seltenen F„llen tritt noch ein Datenverlust der 1.Zeile eines solchen Abschnittes auf. ********************************************************* ĝ˙14.3.ĝ˙ Block-Reformatierung ^B >>2 UNI_ED.PRG kann anhand der Tatsache, daž ein gltiger Block markiert ist, auf diesen Modus umschalten. Nach Anwahl dieser Funktion mssen Sie noch die Spalte angeben, ab der der Umbruch vorgenommen werden soll. Geben Sie sich mit den voreingestellten 77 Buchstaben zufrieden, brauchen Sie auch nur RETURN zu drcken! Der "alte" Text wird gel”scht und an seiner Stelle der neue, re~ formatierte Block eingefgt. Eventuell mssen Sie dann noch sein "Lage" korrigieren, d.h. eine Leerzeile oben dran l”schen und eine andere unten anfgen! Der reformatierte Text bleibt im Blockpuffer, bis Sie einen anderen Block markieren oder einlesen. Damit l„žt er sich aber auch speichern oder an anderer Stelle noch einmal einfgen, bzw. beliebig oft! REFORMAT nimmt den gesamten markierten Block als EINEN Absatz und entfernt aus diesem Block alle berflssigen Leerzeichen, also z.B. auch die Einzge am Anfang eines Absatzes - bis auf den Einzug in der 1.Blockzeile. Damit k”nnen Sie aus mehreren Abs„tzen einen einzigen machen. Wollen Sie einen l„ngeren Abschnitt aufteilen, mssen Sie JEDEN einzelnen Absatz markieren und reformatieren! Was die manuelle Trennung jeder Zeile angeht, sehen Sie bitte die Beschreibung unter O_ptionen T_rennung an. Nach der Reformatierung wird die Anzeige normiert, d.h. ein Screen- Update wird aufgerufen. Dadurch kann sich die Lage des Bildschirmfensters stark „ndern! Fr die Markierung eines zu reformatierenden Blockes mssen Sie nicht genau die Marke setzen. Es reicht, wenn die Anfangsmarke irgend~ wo in der Anfangszeile und die Endemarke irgendwo in der Endzeile steht. UNI_ED.PRG setzt die Marke sowieso auf Spalte 1 und die Zeilen~ l„nge der letzten Zeile. Mit F6 und den Cursortasten k”nnen Sie so sehr schnell einen Block markieren - vorausgesetzt, der Block passt ganz auf den Bildschirm, sonst mssen Sie ^Kb und ^Kk nehmen! Bei einzeiligen Blocks wird eine zus„tzliche Leerzeile sicherheitshalber eingefgt. Eventuell mssen Sie diese wieder l”schen! ĝ˙14.4.ĝ˙ GANZEN Text reformatieren ^Uf >>2 Das ist eine sog. 'User'-Funktion, mit ^U aufgerufen. Ab der aktuellen Zeile werden alle Abs„tze reformatiert. Die globalen O_ptionen sind wirksam. Vor jedem Absatz wird dieser Absatz kurz invers angezeigt und Sie haben 2 Sekunden Zeit, mit ^C die Reformatierung abzubrechen. Der Zeitverbrauch in 'Ticks', d.h. 200stel Sekunden, wird vor dieser Zeile angezeigt. Unter gewissen Bedinungen kann UNI_ED.PRG in einer Schleife festh„ngen, wenn Zeilen reformatiert werden. Nach einer bestimmten, 'kritischen' Zeit, die auf ca. 10 Sekunden voreingestellt ist, bricht UNI_ED.PRG einen solchen Umbruchsversuch ab. Die Variable 'critical%' enth„lt den Wert von 2048 (~10 Sekunden). Durch den unter HELP V_arEdit m”glichen Direktzugriff auf Variablen, k”nnen Sie critical% verstellen. ĝ˙14.5.ĝ˙ Spaltenblock-Satz >>2 Beim Verschieben von Spaltenbl”cken mssen Sie u.U. erst Platz schaffen fr einen Block. Das tritt etwa dann auf, wenn Sie von einem Mehrspaltensatz wieder auf 1-spaltigen Satz wollen. Ein Block in der 2.Spalte rechts oben soll nach links unten unter den linken 1 Block. Da im Spaltensatzmodus keine Leerzeilen eingefgt werden drfen, mssen vorher Leerzeilen zur Verfgung gestellt werden. ^RETURN fgt soviele Leerzeilen ein, daž der Block genau hineinpasst. Wichtig ist aber, den Cursor vorher an das Ende der Zeile zu setzen, unter die der Spaltenblock kommt! Wurde ein Spaltenblock von links unten etwa nach rechts oben neben eine bereits existierende Spalte verschoben, bleiben an der ursprnglichen Stelle viele Leerzeilen brig. Mit ^D fr D_elete k”nnen Sie alle Leerzeilen bis zum n„chsten Absatz l”schen!