• Nem Talált Eredményt

A nyomtató programozása A

N/A
N/A
Protected

Academic year: 2022

Ossza meg "A nyomtató programozása A"

Copied!
5
0
0

Teljes szövegt

(1)

Betűk <> A különböző fokozatú címeket megkülönböztethetjük a különböző betűméret és/vagy betűfajta alkalmazásával. Az azonos címfokozatokat azonban mindig azonos betűmérettel és -fajtával kell szedni. Címek szedésére alkalmas a félkövér, a kövér, a kurzív betűfajta, de alkalmazhatjuk a verzál (csupa nagybetűs) szedést is. A betűméretek megválasztásához használhatjuk az aranymetszés arányszámait, azaz ha úgy választjuk meg az alkalmazott betűméreteket, hogy azok aránya például 1:2:3 vagy 2:3:5 vagy 3:5:7 legyen, könnyebben kialakítható a harmonikus összkép.

Elhelyezés <> A címek alatt és fölött az esetek többségében helyet kell kihagyni. Itt ismét segítségünkre siet az aranymetszés szabálya: Ha az egyes címek (kivéve a bekezdés és marginális címeket) alatt és fölött kihagyott helyek aránya olyan, mint például az 1:2:3:5:7 sor számai közül bármelyik két szomszédosé, jó eredményt kaphatunk. Más szempontból elhelyezhetjük a címet balra vagy középre zártan.

Sorszámozás <> Egy komolyabb írásos mű szerkezete áttekinthetővé válik csupán a tipográfiai elemek alkalmazásával. Ha nem sikerül teljesen áttekinthetővé tenni csupán az elhelyezésekkel és a betűkkel a művet, vagy valamilyen szakkönyvvel van dolgunk, számozhatjuk, illetve elláthatjuk betűkkel a címeket.

Pontok <> Cím után sohasem teszünk pontot. Bekezdés cím végére sem pontot, hanem valamilyen egyéb tipográfiai jelet kell elhelyezni (lásd itt is). Ha a címek számozva vannak, a sorszám után pontot kell tenni, hacsak a sorszám nem kerül egy külön sorba - ekkor ugyanis nem szükséges pontot írni.

Megszövegezés <> A cím szövegének rövidnek, tömörnek, lényegretörőnek, találónak kell lennie. Kerülni kell a magyarázatokkal, utalásokkal teli, többsoros címeket.

Mi tehát a lényeg?

Meg kell találni a szövegben egy olyan egyensúlyt, amelynek segítségével az könnyen áttekinthetővé válik, a valóban lényeges látszik lényegesnek, és amelyben tartalomjegyzék nélkül is látható, hogy hol miről akarunk szólni. Hogy sikerült-e kialakítani egy ilyen harmóniát, ellenőrizhetjük úgy, hogy szemünktől kissé eltávolítva szemléljük a már kész oldalakat. Ha azok a szavak, kifejezések tűnnek szemünkbe, amelyeket lényegesnek tartunk, ha minden új témakör előtt megtalálható az adott témakör tartalmát jól lefedő cím, ha az összes, általunk lényegesnek tartott dolog szemünkbe ötlik, akkor jól dolgoztunk. Ellenkező esetben célszerű némi módosítást végrehajtani a szöveg szervezettségén.

Bujdosó Gyöngyi Debrecen

A nyomtató programozása

A nyomtató bájtokat fogad, és az ASCII karakterkészlet alapján ki is értékeli ezeket.

Ha az érték nagyobb mint 31, akkor nyomtatható karakterről, ellenkező esetben vezérlőkarakterről vagy utasításról van szó. A vezérlőkarakterek alapvetően egybájtosak.

Kitüntetett szerepe van a "CR" ASCII kódja 1 3 , az "LF" ASCII kódja 10 illetve az "ESC"

ASCII kódja 27 vezérlőkaraktereknek.

A nyomtatóutasítások több bájtból állnak, a bevezetés itt mindig az "ESC" vezér- lőszekvencia. Az utasítás harmadik bájtja gyakran "0" vagy "1". Ezek a számok az adott utasítás ki (0), illetve bekapcsolására (1) szolgálnak. A "0" vagy "1" helyett az ASCII-értéket is használhatjuk. Így CHR(48) a "0" és CHR(49) az "1" karaktereket reprezentálja. Először a nyomtató utasítás karaktereit küldjük a nyomtatóra, majd a nyomtatandó szöveget.

A nyomtató írásképe alapvetően négy tulajdonsággal jellemezhető:

betűtípus, betűszélesség, betűnagyság és betűattribútum.

A betűtípus megmutatja, hogy melyik fontkészletről van szó. A meglévő betűtípusok anélkül változtathatók, hogy elveszítenék jellegzetességüket.

A betűszélesség megadja, hogy mekkora helyet foglalnak el a betűk, mértékegysége

a cpi (karakter/inch). A leggyakoribb betűszélességek: Pica 10 cpi, Elite 12 cpi.

(2)

A b e t ű n a g y s á g m e g h a t á r o z z a a b e t ű magasságát, m é r t é k e g y s é g e a pont (1 pont =

0,35

m m ) .

A betűattribútum a betűtípus kinyomtatási módjáéit felel. A betűk megjelenhetnek például v a s t a g o n v a g y dőlten nyomtatva.

A k ö v e t k e z ő k b e n m e g a d o t t n y o m t a t ó v e z é r l ő k ó d o k E p s o n FX k o m p a t i b i l i s n y o m t a t ó k r a érvényesek.

1. Betűtípus

A betűtípus aktivizálásához két utasításra van szükség : az "ESC x 1 (LQ) vagy "ESC x 0" (Draft) segítségével az íráskép minőségét tudjuk kiválasztani. Számos LQ betűtípus létezik, amelyek közül az "ESC k n" utasítással válogathatunk:

N é m e l y n y o m t a t ó n a k m á s betűtípusai vannak, így tehát a felsoroltaktól e l t é r ő n é r t é k e k is l é t e z h e t n e k .

2. Betűszélesség

Amint m á r említettük, két alapszélesség létezik: a Pica „ESC P" és a z Elite „ESC M " . Ezeket v a l ó b a n a l a p o k n a k kell tekinteni, mivel tetszőlegesen kombinálhatók széles é s v é k o n y betűkkel. Az „ESC g" a mikróírást kapcsolja b e alapszélességként. Figyeljünk arra, h o g y e z a z ü z e m m ó d n e m hajtja v é g r e a vékonybetűs utasításokat.

3. Betűattributumok

A betűattributummal meghatározzuk, h o g y a n y o m t a t ó a k ö v e t k e z ő betűket vastagon, dőlten, duplán v a g y aláhúzva nyomtassa-e.

(3)

A „Master" utasítás a z előbbiekben említett íráskép utasítások közül szinte valamennyit tartalmazza. A „Master" nyomtatást a z „ESC ! n" v a g y decimálisan „27,33,n" utasítással lehet beállítani. Az n ekkor 0 é s 2 5 5 közötti értéket vehet fel. Ahhoz, h o g y m e g k a p h a s s u k a kívánt írásképet, ö s s z e kell adnunk a megfelelő attributumok n értékeit.

4. Vízszintes tabulátorok

A „HT ( 9 ) " utasítással a k ö v e t k e z ő vízszintes tabulátorpozíciókat lehet beállítani. A n y o m t a t ó b e k a p c s o l á s a után a tabulátorok nyolckarakteres s z a b v á n y o s távolságra v a n n a k egymástól. Gyakran saját tabulátorpozíciókra v a n szükségünk, mindenekelőtt a p r o p o r - cionális karakterekkel készített táblázatok esetében. Az alábbi utasítással legfeljebb 3 2 tabulátort állíthatunk b e n ö v e k v ő sorrendben: " E S C n1 n2 ... 0" v a g y decimálisan

„27,68,n1,n2,...,0"

Az n 1 , n2,... értékek tabulátorstopoknak felelnek m e g , 1 és 2 5 5 közötti s z á m o k lehetnek. Az „ESC D 0" v a g y decimálisan „27,68,0" utasítással a z összes t a b u l á t o r p o z í c i ó törölhető. Ha proporcionális írást használunk akkor a n y o m t a t ó Pica karaktertávolságra helyezi el a tabulátorokat. Az „ESC @ " v a g y decimálisan „27,64" inicializáló utasítás a kiindulási helyzetbe állítja vissza a nyomtatót. Ez az utasítás a z általunk definiált tabulátorpozíciókat is törli é s a szabványos tabulátorokat állítja b e ( 8 karakter távolságra).

5. Formázás

A szövegfeldolgozáshoz két n a g y o n hatékony utasítást is használhatunk. Az „ESC a n"

v a g y decimálisan „27,97,n" utasítással megformázhatjuk a szöveget.

Alapértelmezett a balra igazított szöveg. A sorkizárásnál automatikus lapszél-kiegyen- lítés történik, é s ezt a formát a z LQ ü z e m m ó d b a n lehet használni. A n y o m t a t ó c s a k a k k o r hajtja v é g r e a sorkizárást, ha a puffer megtelt, vagy ha e g y „CR/LF" vezérlőkód kijelölte a b e k e z d é s végét. A sorkizárásos nyomtatás szélességét a bal és a jobb oldali nyomtatási szélesség határozza meg. A „HIT" és a „BS" vezérlőkód c s a k a balra igazított s z e d é s e s e t é b e n hatásos.

6. Lapszélek

Az „ESC 1 n" v a g y decimálisan „27,108,n" utasítás az n-edik oszlopra állítja b e a bal oldali lapszélet, mégpedig a z aktuális karaktertávolság szerint. A p r o p o r c i o n á l i s írásnál a Pica karaktertávolság értékei a mérvadók. Ez az utasítás e g y é b k é n t törli a saját tabulátorokat és a bevitt karaktereket. A lapszélek között legalább két Pica karakternyi

(4)

(2*10 cpi) távolságnak kell maradnia. Az „ESC Q n" vagy decimálisan „27,81,n" utasítással a jobb oldali lapszélt az n-edik oszlopra állítjuk. Ez az utasítás az előzővel hasonló m ó d o n működik.

7. A nyomtató Turbo Pascalban való vezérlését bemutató példaprogramok A. A betűtípusok használatát bemutató példaprogram:

Uses C r t , P r i n t e r ; Begin

W r i t e ( L s t , # 2 7 , # 6 4 ) ;

WriteLn(Lst,#27,#120,#0, ' D r a f t ' ) ; Writeln(Lst,#27,#120,#1);

WriteLn(Lst,#27,#107,#0, ' R o m a n ' ) ; WriteLn(Lst, #27, #107, #1, ' S a n s S e r i f ' ) ; WriteLn(Lst,#27,#107,#2, ' C o u r i e r ' ) ; WriteLn(Lst,#27,#107,#3, ' P r e s t i g e ' ) ; WriteLn(Lst,#27,#107,#4. ' S c r i p t ' ) ; W r i t e ( L s t , # 2 7 , # 6 4 ) ;

End.

B. A betűszélesség használatát bemutató példaprogram:

Uses C r t , P r i n t e r ; Begin

WriteLn (Lst, #27, #64, 'Normal i r a s ' ) ;

WriteLn(Lst,#27,#87,#1, 'Szeles i r a s ' , #27, #87, # 0 ) ; WriteLn(Lst,#27,#15, 'Vékony i r a s ' , # 2 7 , # 1 8 ) ; W r i t e ( L s t , # 2 7 , # 6 4 ) ;

End.

C. Betűattríbutumok használatát bemutató példaprogram:

Uses C r t , P r i n t e r ; Begin

W r i t e ( L s t , # 2 7 , # 6 4 ) ;

WriteLn(Lst, #27,#69, 'Vastag i r a s ' , # 2 7 , # 7 0 ) ; WriteLn(Lst, #27,#71, 'Dupla iras ',#27, # 7 2 ) ; WriteLn(Lst,#27,#52, 'Dolt i r a s ' , # 2 7 , # 5 3 ) ; WriteLn(Lst,#27,#83,#0, ' K i t e v o ' ) ;

WriteLn(Lst,#27,#83,#1, ' I n d e x ' , # 2 7 , # 8 4 ) ; WriteLn(Lst,#27,#112,#1, 'Proporcionalis iras';

# 2 7 , # 1 1 2 , # 0 ) ; WriteLn(Lst,#27,#45,#1, ' A l a h u z a s ' , # 2 7 , # 4 5 , # 0 ) ; WriteLn(Lst,#27,#113,#0, ' N o r m a l ' ) ;

WriteLn(Lst,#27,#113,#1, ' O u t l i n e ' ) ; WriteLn(Lst,#27,#113,#2, ' S h a d o w ' ) ;

WriteLn(Lst,#27,#113,#3, 'Outline+Shadow',

#27,#113,#0);

W r i t e ( L s t , # 2 7 , # 6 4 ) ; End.

D. A nyomtató ellenőrzése megszakítás hívásával:

Uses Crt, D o s ; Const

IOhiba = $ 0 8 ; Papirhiany =$20;

O K =$10;

Var

Regs :Registers;

NyomtatoAllapot :Byte;

Begin

Regs.AH:=2;

Regs.DX:=0;

(5)

Intr($17,Regs)

NyomtatoAllapot: =AH And $ 3 9 ;

If NyomtatoAllapot=OK Then Writeln ('Minden r e n d b e n ! ' ) ;

If NyomtatoAllapot=Papirhiany Then Writeln('Kifogyott a p a p i r ! ' ) ;

If NyomtatoAllapot =I0hiba Then Writeln ('Hibas k a p c s o l a t ! ' ) ; End.

E: Egy karakter nyomtatása megszakítás hívásával:

Procedure KarakterNyomtat ( K : C h a r ) ; Var

Regs : Registers ; Begin

Regs.AH := 0 ; Regs.AL : = O r d ( K ) ; Regs.DX:= 0 ; Intr($17,Regs);

End;

F: Grafika nyomtatása 24/216 inch sortávolsággal:

Uses P r i n t e r ; Const

ESC = #27 ; NUL = #0 ; LF = #10 ; FF = #12 ; PrintIni = ESC + ' @ ' ; Grafika = ESC + '*' + N U L ; Sortav = ESC + '3' + # 2 4 ; Var

Sor,Pont,Szelesseg :Word;

Begin

W r i t e ( L s t , P r i n t l n i ) ; W r i t e ( L s t , S o r t a v ) ; For Sor := 1 To 3 Do

Begin

Szelesseg := 300 Div S o r ;

Write (Lst, Grafika + Chr (Szélesség Mod 256) Chr (Szélesség Div 2 5 6 ) ) ; For Pont := 1 To Szelesseg Do

Write(Lst, Chr ( $FF - Pont ) ) ; Write(Lst , L F ) ;

End;

Write (Lst, 'Próba V e g e ' ) , F F ) ; Write(Lst,PrintIni);

End.

Makó Zoltán

Kézdivásárhely

Hivatkozások

KAPCSOLÓDÓ DOKUMENTUMOK

wegs ein W erk der jetzigen Regierung sei, und wir verdanken dieselbe vielmehr der vergangenen. Bei einer Regierung zahlt die gute Gesinnung als solche gar

Az akciókutatás korai időszakában megindult társadalmi tanuláshoz képest a szervezeti tanulás lényege, hogy a szervezet tagjainak olyan társas tanulása zajlik, ami nem

[r]

crystalline, from skeletal muscle, suspended in 1.95 M ammonium sulphate solution (pH 5.5);..

Könnyen elképzelhetünk például tükörszimmetrikus kottákat (dó-ré-mi:mi-ré-dó), tükörszimmetrikusan elhelyezett mérta- ni testeket vagy számokat

Ezeket úgy építették, hogy nem ástak alapot a falaknak, hanem csak elegyengették a területet, akárcsak a kazárok vagy némely tanyák építésekor a múlt század turkománjai..

Mivel tud- juk, hogy a dallam első hangja a dó, összehasonlítjuk a többit a kez- dőhanggal, tehát minden más hang helye relatív.. Ezért nevezzük ezt az

(Ez egyébként arra is rámutat, hogy Gachot ugyan már több mint nyolc éve élt Budapesten, amikor Krúdy meghalt, azért sem találkoztak, mert bár Krúdy publikált a Nyugatban