Star Micronics 8 Series, LaserPrinter 8 Series Applications Manual

L 8
Series
A M
8
Series
Trademark Acknowledgements
LaserPrinter 8: StarMicronicsCo., Ltd. PageMaker: Aldus CqSOraticsr Apple II +, Applesoft: Apple ComputerInc. BitStream,~apf Humanist: BitstreamInc. Canon: CanonInc. Centronics: CentronicsData Computer Corporation HP, LaserJet Series H: Hewlett-PackardCompany LaserControl: InsightDevelopmentfrrc. IBM PC, IBM Proprinter: InternationalBusinessMachinesCorp. Optim~ Century Schoolbook: LinotypeCorporation Lotus 1-2-3: Lotus Development Corporation MS-DOS, Microsoft BASIC, Windows, Word, Microsoft BASIC: Microsoft Corporation MultiMate: Muhrrratefntemational TRS-80: RadioShack, a division of TandyCorporation
Epson, EX-800: Seiko EpsursCorporation
WordPerfect: WordPerfect Corporation Ventura Publisher, Hyplot, Diablo 630: XeroxCorporatimr
NOTICE
. Alf rights reserwed.Reproduction of any part of this manual in any form whatsoever without
STAR’s express permission is forbidden. . The contents of this manual are subject to change without notice. . AUeffons have been made to ensure the accuracy of the contents of this manual at the time of
press. However, sbould any errors be detected, STAR woufd greatly appreciate being informed
of them. . The above rrotwithstarrding,STAR can assume no responsibility for any errors in this manual.
@Copyright 1989Star Micrcstics Co., Ltd.
PREFACE
About this manual
ThisSrar LuserPrinter8ApplicationsManual givesyouthe information
youneed toprogramtheStarMicronicsLaserPrinter8.
Whywouldyoureadthisbook? Mostpeopleusingalaserprinterjust run
softwarepackageswithbuilt-inprinterdrivers,whichlookaftereverything
theircomputerssendtheirprinters.Butmanyofus-small businesspeople
and home computerusers, not to mentionthe wizardswho write those
softwarepackages—wanttobenefitfromallthenewfeaturesofferedbyour
printers.
Doyouwantcompletecontroloverthecharactersandimagesyoupnnt? Do
youwantto makeyourStarLaserPrinter8 worklikesomeearlierkindof
printer? Thismanual providesthesoftwarehelpyouneedto getthemost
fromyourLaserPrinter8.
ThoughthisApplicationsManual is really intendedfor intermediateto
advancedcomputerusers,we’vetriedtoaccommodaterelativenovicestoo.
The informationis organizedso youcan walkthroughthegeneraltheory underlyingprinterprogrammingbeforedancinginto specificdetails. It makessense,therefore,to readthefirstthreechaptetxbeforejumpinginto themiddle.
There’sagood reasontoreadeachchapterfromitsstarttoo.Peoplelearning howtouseanewprinteroftenfindtheterminologyabarrier. Soinsteadof buryingwhatmaybencwjargonin aGlossaryattheback,we defineeach newtermthefirsttimeitappears.Thewholefirstpartofthechapteronfonts, forexample,definesdifferentaspectsofafont (acollectionofcharactersof thesamesizeandstyle).
What’s in this manual?
.
.
.
.
In “Gettingto KnowYourStarLaserPrinter8“we provide a list of the featuresthat make this a splendidprinter,to help you choosewhich featuresyou wantto exploit. There’sa bit onhowlaserprinterswork, insideandout. Thechapterthenexplainssoftwareingeneralterms,in­cluding how to write control and Escape commandsto make those featureswork.
“ControllingYour Printer” examines the parameters and “superset”
commandsyougivetheStarLaserPrinter8to direct preciselyhowyou wantittobehave.Theselet youcontrolthe printer,managepageformats, andspecifywhatyouwantprinted.
Formostofus, the“Fonts”chapterwillbeuseful: howtousethefonts built i_ntothe LaserPrinter8, plus those that come on cartridgesor computerdisks.
Youmay neverlookat more thanoneor two of chapters 4 through7, which cover Star LaserPrinter8 commands. Your LaserPrinter8 emulatesotherprintem:itimitatesotherpnntembyacceptingthesame commandstheydo. JustthinkofyourStarLaserPrinter8 asfourprinters hidinginsideoneunit.
Ifyou wanttowriteormodifyaprogramthatusesoneoftheseprinters— theHewlett-PackardLaserJetseriesII,EpsonEX-800,IBM Proprinteror
XeroxDiablo630- chapters4 through7 showhow yourStarLaser­Printer8 canemulateto accordingly.Thechaptersfirstdescribehowto controltheprinter andto formatpages, thenhowto move theprintposi­tion,and finallyhowto usefontsandgraphics.
ThechapterontheLaserJetseries11islongerandmoredetailedthanthe others.That’s becauseyouaremorelikelytouselaserprintercommands than commandsfor dot matrix or daisywheelprinters. (If you have softwaredesignedonly fordotmatrixor daisywheelprinters,youmay have manualsfor those printers anyway.) We recommendyou use LaserJetseriesII emulationwheneverpossible,withEX-800emulation as yourbackupmode.
Thefinal“TechnicalSupplement”containingthecommandandcharac-
ter referencetableswillprobablygetthumbedthemost.
Conventions
Incidentally,oneofthoseTechnicalSupplementtablessuggestsacoupleof typographicconventionswe’lluse.Baseten(decimal)numberswillgener­allybe usedhere;if wehaveto use basesixteennumbers (hexadecimal) we’llexpresslysayso.
Andsecond,thelowercaseLispracticallyidenticaltothenumberone(1vcr­sus 1). BecauselowercaseL isusedinmanycommanddescriptions,we’ll usethecharactert’toavoidconfusion.
The Star LaserPrinter 8 Operations Manual
Thismanualis thecompaniontotheStarLaserPrinter8OperationsManual thatcamewithyour printer. Alaserprinterisa fairlycomplextoolthatre­quirescareanddelicatehandling. SotousethisApplicationsManual best, makesureyouunderstandthatOperationsManual first.
Your OperationsManual holds essentialinformationaboutthe Lascr-
Pnnter,8,suchashowto:
unpackandsetup yourlaserprinter,
connecttheStarLaserPrinter8 toyourcomputer’sserialorparallelport,
iinktheLaserPrinter8intoa networkof severalcomputers,
configuretheLaserPrinter8to yourneeds (wilhvanablcssuchaspaper
sizeand speedofdatatransfer),
loadpaperandthetonercartridge,
operate the panelswitchesanddisplay,
runthe LaserPrinter8 self-test,
lookafteryourprintertokeepit in peakcondition.
TABLE OF CONTENTS
CHAPTER 1 GETTING TO KNOW YOUR STAR
LASERPRINTER 8
1
Star
LaserPrinter8Hardware..... ............................................................1
StarLaserPrinter8Software..... .............................................................5
CHAPTER 2 CONTROLLING YOUR PRINTER
13
PrinterParameters...... ................................. .........................................13
Controllingthe Printer..........................................................................16
ControllingthePage........ .....................................................................21
Controllingthe Printing........................................................................28
TheStarLaserPrinter8 Superset.........................................................29
CHAPTER 3 FONTS
35
FontTerminology..... ......................................... ...................................35
HowtheStarLaserPrinter8 StoresFonts..... .......................................38
SymbolSets..........................................................................................41
ManagingFonts.......... ..........................................................................44
CHAPTER4 HPLASERJETII COMMANDS
51
HPLaserJetIICommands........ ............................................................51
ControllingthePrinter............ ..............................................................53
PageOrientation..... ..............................................................................56
MovingthePrintPosition..... ........................................................,.......61
ControllingFonts..... .............................................................................70
UsingYourOwnFonts...........:......,...... ................................................85
Graphics....................................... .........................................................89
Macros..................................................................................................94
CHAPTER 5 EPSON EX-800 COMMANDS
99
EX-800Commands...... ........................................................................99
Controllingthe Printer......................... ...............................................101
FormattingPages........ ........................................................................102
MovingthePrintPosition............. ........... ..........................................105
ControllingFonts.......... ......................................................................110
Graphics.............................................................................................119
CHAPTER 6 IBM PROPRINTER COMMANDS
125
ProprinterCommands..... ....................................................................125
ControllingthePrinter... .....................................................................126
FormattingPages........ ........................................................................127
MovingthePrintPosition...... .............................................................127
ControllingFonts................................................................................13(J
Graphics..............................................................................................133
CHAPTER 7 XEROX DIABLO630COMMANDS
135
DiabloCommands..............................................................................135
ControllingthePrinter... .....................................................................136
FormattingPages..................................... ...........................................137
MovingthePrintPosition..... ..............................................................140
ControllingFonts................................................................................145
Graphics
..............................................................................................
l~g
CHAPTER 8 TECHNICAL SUPPLEMENT
153
Commandsummary...........................................................................154
Symbolsets
.................................... ....................................................162
INDEX
213
ThischapterintroducesboththehardwareandsoftwareaspectsoftheStar LaserPrinter8’s personality,from fonts and print engineto ASCII and Escapesequences.
STAR LASERPRINTER 8 HARDWARE
Versatility
YourStarMicronicsStarLaserPrinter8workswithpracticallyallcommcr­cialsoftwareprogramsandcomputers.WithfeaturesthatgobeyondStar’s easy,affordable9-pinandfast,quality-printing24-pindotmatrixprinters, the Star Laser Printer is the logicalnext step in the series of fine Star Micronicsprinters.
Your Star LaserPrinter 8 produces pages that look close to typeset quality, with up to 90,000 dots per square inch— no more NLQ (near letter quality) compromises.
The Star LaserPrinter8 produceseight of those pages a minute,These numberstranslateto aboutfivetimesmore resolutionand speedthantheaveragedot-matrixprinter.
Star’snewprinterisremarkablyversatile.Youcanprintcomplicatedforms (widthwiseif you want)... detailedgraphs... yourown customizedtype­styles... digitizedphotographs... other languages(includingArabicand Japanese).
Youcan evenprintyourletterheadandlogo as you printyourletter,and reprintthem directlyonto a businessenvelope.You don’t even need to removethepapertraytoprinttheenvelope:justslideitintothemanualfeed slot.
1
TheStarLaserPrinter8isidealfordesktoppublishing.The pagesitproduces makeperfectphotocopyorinstant-printmasters.Andallthemaindesktop publishingsystems,includingAldusCorporation’sPageMakerandXerox VenturaPubisher,worksplendidlywiththeStarLaserPrinter8.With’’page makeup”programslikethese youwillbeable—maybeforthefirsttime— to deliver communicationswiththe impact of top-notchgraphics.
Font options
Youcan print withanamazinglywidevarietyoftypefontsandsizes.The StarLaserPrinter8comeswithfourbuilt-infonts,whichcanbeprintedfrom
8.5pointsto 12pointsin size(apointis about1/72of an inch). Thesefontsarc:
Courier
Prestige Elite
Tms Romn
Lino Pr i ntar
Besidesfiese, youmaybe abletouseoptionalcartridgesanddiskstogive yourStarL&serPnnter8 a varietyof extrafonts,suchasthese:
Helvet
linedrawing LetterGothic presentationfonts Bar codes opticalcharacterreaderfontsuniversalproductcode
You can load your Star LaserPrinter8’smemory with fonts stored on computerdisks. Literallyhundredsof fonts are marketedby font-supply companies.Some fontsare evenobtainablefromcomputer“usergroups”or “electronicbulletinboards”.Fontsyougetthiswayareinthepublicdomain, whichmeansyoudon’t needto pay alicencefeetousethem.
Ask your Star LaserPrinter8 dealer aboutresourceslike these. Desktop publishingwith laser printers is fast-changingterritory,and some Star Micronicsstaffpeoplehavefoundelectronicbulletinboardsandcomputer usergroupsquitehelpfulinkeepingupwiththechangingpace.Ifyouinvest a littletimethiswayit mayrepayyou’well.
2
How your Iaserprinter communicates
YourcomputercommunicateswiththeStarLaserPrinter8througheithera
parallelcableor oneof twokindsof serialcable.Theprinter’sinterj2ace,
the link or boundaryit shares with your computer,defineswhetherthe
printerwillacceptcharactersandcommandsfromyourcomputeronebyte
or onebitat a time. Abitisthesmallestunitofcomputerorprintermemory.Ithaseitheralow
orhighelectriccharge,whichwerepresentwiththedigitsOand1.Usually eight adjacentbits are groupedto form a byte. Since a byte normally representsonecharacter,thisstringofbits- O1OOOOO—mightrepresent theletter A.
The serialinterfaceacceptsjust onebit at a time fromyourcomputer.A parallelinterfacecanhandleawholebyteatonce,bymovingdatabitsside­by-sidealongseparatewires.Youchoosewhichinterfacemethodyou want to use by selectingit on the operatorpanel, as explainedin your Star
LaserPrinter8 OperationsManual.
The Star LaserPrinter 8 is a computer
TheStarLaserPrinter8firstmapsthecharactersto beprintedintoitsown randomaccessmemory(RAM).Thatis,theprinterbuildsa“picture”inits
memorycorrespondingtothepageyouwanttoprint.Whenthat’sdonethe pnntercanreproducethe pageontopaperonits own,lettingyourcomputer geton’withotherwork.
YourStar LaserPrinter8comeswithonemegabyteofRAM—theequiva- lentof aboutonemillioncharacters.AStarLaserPrinter8 optionletsyou addasecondmegabyteofRAMif,say,youneedtomapfull-pagegraphics orstoremorefonts. AccompanyingallthatRAMisanother512kilobytes ofreadonlymemory(ROM),containingalibraryofinternalfontsandthe programsthatlettheStarLaserPrinter8 emulateotherprinters.
AMotorola68000computerchipcontrolsboththe memoryandthe printing mechanismintheprinter,calledtheprintengine. Theprintcrstoresawhole pagein RAM beforeprintingit. (If a page is so densethat it overflows memory-a mostunlikelyevent—theStarLaserPrinter8printsthepageon two sheets.)
3
The Print engine
It’s tie print enginethat forms the actualcharactersand graphics.The
enginedirectsitslaser,apinpointstreamoflightpulses,throughmirrorsand
lensesontothe surface of a positively-chargedrotatingdrum.
r“’””’
Lens Laser beam
Scanning mirror
uctor laser diode
Photosensitive drum
Asthelaserscans,it“draws”thepage-mapstoredinyourprinter’smemory. Whereveralightpulsestrikes,thattinypartof thedrumdropsto aneutral electricalcharge.That spot then attractsfine toner powder as the drum rotatespastthepowdercompartment.
Asthedrumrotatesfurtheritmeetsthepaper.The paperitselfisnegatively chargedbypassing by afine coronawire.Sinceoppositechargesattract,the negativepaperclings to thepositivedrum. Then heatandpressurefroma rollermeltorjkre thedotsoftonerontothepaper,preciselyreproducingthe image.
Finallythepaperslidesintotheoutputbin.Thepaperusuallycomesoutface downso it stacksin the correct sequence.
4
STAR LASERPRINTER 8 SOFTWARE
Binary and hexadecimal arithmetic
If you alreadyknow what hexadecimalnumbersare, you can skip this sectionandgoaheadto readaboutASCII.
The decimalnumbersystemwith whichwe’reall familiaris a positional counting system. There’s the
“ones” position,the “tens” position,the
“hundreds”positionandsoon.Eachhigherpositionis worthtcntimesmore
thanthepositiontotherightofit,sincethedecimalsystemusesthebaseof ten.Moreover,weneedtensymbolsto showtheactualvaluesthatmaybe in eachposition.
Thebinary systemispositionaltoo.There’sthe“ones”position,the“twos” position,the“fours”position,the “eights”positionandsoon.Inbinaryeach positionisworthonlytwicethatofthepositiontoitsright.Andweonlyneed twosymbols-O (zero)and1(one)-to showthevaluesthatmaybeinany position.So inbinarywe getnumbersthatlooklike 1010or 10001100.
Thehexadecimalsystemismadeofbase-sixteennumbers.Hexadecimalis positionalliketheothercountingsystems.Andeachhigherpositionisworth sixteentimesasmuchasthepositionto itsright.
We need sixteendifferentsymbolsto show all the possiblevaluesone hexadecimaldigit could have. We can use our decimal system’s ten
symbols,butwe’vehadtoborrowa fewmorefromouralphabettoget all thesymbolsweneed.Inhexadecimal,therefore,you canhaveanumberthat lookslike2C7C, or evenFACE.
Here’showthe decimal,binaryandhexadecimalnumbersystemscompare:
Decimal
o
1
2 3 4
5
6
7
Binary
Ooo1 0010 0011 0100 0101 0110 0111
Hexadecimal
o
1,
2 3 4 5 6 7
Decimal
8
9 10 11 12 13 14 15
Binary
1(W3
1001
1010 1o11 1100 1101 1110 1111
Hexadecimal
8 9
A B c D E
F
5
Theimportantthingtorealizeisthatthere’smorethanonewaytoshowthe samenumericvalue.Computerprogrammers,forexample,occasionallyuse thehexadecimalsystembecauseit’sso compact.(Programmersoftenjust say“hex”.)Thisbinarynumber:
101001011111110100110111111011010010110100001001
looksquiteabit tidierwhenitiswrittenasA5FD37ED2D09,whichmeans thesamething.
TheASCII table
Wheredoes the Star LaserPrinter8 get the charactersand instructionsit needsto printin the firstplace?It gets themfromyourcomputer,which sendsa streamof textandcommandsto yourprinter.
Theprogramin yourcomputerthatcontrolseverythingsentto the printer (calledthe printer driver)will usuallybe includedwith your computer programsrsuchasyourwordprocessor.Butthecommandscouldalsocome fromaprogramyou’vewritten,perhapsinBASIC,aprogramminglanguage thatusescommonEnglishwords.
Internally,computemandprintersuse only the binarynumbersystemto representboth commandsand all the alphabetic,numericandother key­boardsymbols.Nearlyallofthosemachinesusethesameschemeto code thosesymbols,theAmericanStandardsCodefor InformationInterchange (ASCII).
Anexample:inourfamiliardecimalsystem,binary01001010addsuptothe number 74. Dependingon which program your printer is using, it can interpretthatbinarystring01001010aseitherthenumber74orthesymbol J. The printerstoresthesymbolJ at position74in a tablein its memory.
Thateight-bitbinarystring,orbyte,canbebrokenintotwohalves.Theleft orhigh-orderpartcontaining0100iscalledthezoneportion;therightpart holdingthe1010iscalledthedigitspdion. Andinthehexadecimalnumber system,the zoneand digitparts of that byte are representedas 4 and A respectively(lookthemup in thelistabove).
SothelaserprinterunderstandsthesymbolJ as 01001010,whichwecan alsorepresentas the decimalnumber74 or the hexadecimalnumber4A. We’veprintedthisbyteverticallyandhorizontallybelow,showinghowit addsup todecimal74 andhex4A.
6
o x 27
1x 26
0x25 0x 24
1x
23
0
x 22
1x 2’
ox 2°
zone
0100
4
=
o
= 64 =
o
n
o
=
8
=0 =
2
=
Q
74 Decimal
digits
1010 Binary
A
Hexadecimal
The ASCIItablein theTechnicalSupplementshows all theseequivalent
representationsfor the symbolsyourlaser printerunderstands.The table organizesthem in ascendingorder.Infact,ASCIIisorganizedinawaythat ac@allymakessense.
Flipbacktherefor aquicklookrightnow.Seehowyoucan slicethetable into clumpsof 16 or 32, basedon what’s in the zone portionunderthe hexadecimalcolumn?Theseclumpsmakesubgroupsof similarsymbols:
hex00 to IF arethecommandsymbolscalledcontrolcodes,
hex 20to 40 arcthecommonkeyboardsymbolsandnumerals,
hex41 to 60 arecapitallettersandthelesscommonkeyboardsymbols,
hex’61to 7F arelowercaselettersanda fewfinalsymbols.
That takes care of the first 128ASCII symbols.However,nearly every co’mputerand printer manufacturertreats the second half of the table differently. Hewlett-Packard,for example, puts a variety of accented foreignlanguagecharactersintopositions128-255(oftenreferredtoashigh ASCII). Epson gives you a choice of either italics charactersor IBM charactergraphics.
Control codes
TheASCIItableshowssymbolslikeJor2 thewaytheyactuallyprintonthe laserprinter.ButASCIIincludesmorethanjust printablecharacters:none of thecontrolcodecommandsatthebeginningof thetableactuallyprint. Instead,when your computersendsa controlcode to the laser printer it makesyourprinterdootherthings,suchas sounditsbccpcr.
7
I
Controlcodesmostlyhandlecommunicationsbetweenyourcomputerand thepnnter.atthelowestlevel,atcablelevel.Forexample,acoupleofcontrol codesmakesuretheprinterbufler(yourprinter’sstoragememory)doesn’t overflow. In this book we’ll indicatecontrol codes enclosed by angle bracketsto their abbreviationsin the table:<FF> means the Form Feed controlcode,whichadvancesthe printerto thenextpagejustasthePRINT buttondoes.
Escape sequences
Controlcode 27, <ESC>or Escape, is a particularlyimportantone for
printers.Totellyourprinter allthe thingsyou might need— setting margins, saying where to print, choosing a particular font, starting graphics and so on— requires many more thanjust two or three dozen control codes. So the
<ESC> control code has a special meaning: <ESC> means “the next character specifies a command, not something to be printed”.
Thereforeif yousendjust thecharacter4 totheprinterit willprinta4 and that’sall. 13utifyousendthe<ESC>codejustbeforethe4 thentheprinter
(in EX-800
mode) will switch over to italics text. Extending the control
codes this way gives you many more commands to control
yourprinter.in fact,these“Escapesequences”makeupmostoftheStarLaserPnntcr’slan­guage.
In this book we’llleavespaces betweencharacterswhenwe showescape sequences.You’llfind
<ESC>
(SopIOh12vos3T
a bitmorereadablethan
<ESC>(sOp10h12vOs3T
Butrememberthatyouarenotto sendthose spacesifyousendcommands
to theprinter. To sumup, printer commandsareoftwotypes.A controlcodeis asingle-
charactercommandthattellsyourprintertodosomething,likemovedown oneline.AnEscape sequencecontrolsa printeroperationtoo,butis more thanonecharacterlong.Sincetheyarecommands,neithercontrolcodesnor escapesequencesamusuallyprintablecharacters.
8
Printer drivers
Mostsoftwarepackagesalreadyincludetheprintercommandstheyneed. Theprogramsthatsendcommandstotheprintersoyoudon’thavetoenter themyourself are calledprinterdrivers.
Manyprogramsaskyouto installor configureyourprinter,whichusually meanskeyingintoamenutheparticularsetupinformationdescribingyour StarLaserPrinter8.Youentersuchthingsas howyouwant to underline, alterlinespacing,ormoveto a newprintposition.
Someprograms,suchas WordPetiect andthesystemsfromLotusDevel­opmentCorporation,let youput printerEscapesequencesbeforeor right insidethedocumentyouwanttoprint.Toturnonboldface,forexarnple,you mighthold downspecialkeysonyourkeyboard,oftenlabellcdCONTROL orALT,asyoupressanotherkey.OryoumightuseaspecialFunctionkey,
suchas F6. Infact,totakerealadvantageofyourStarLascrPnnter8’sspecialabilities,
youmightoptforawordprocessorthatletsyouspecifyfontchangeseasily. WordPerfectandMicrosoftWord arestrongatthis,butarebynomeansthe onlygoodfontmanipulators.
If youhavetroubleusingaparticularprogramwithyourStarLaserPrinter 8, you’ll probably get answers most quickly by asking your software supplierhowtheprograminteractswithyourprinter.
Inthismanualwerefertoprograms,fontsandotherproductssoldbyseveral companies.PleaserealizethatmentioningtheseproductsdoesnotmeanStar Micronicsendorsesthemin anyway.
Sending your own printer commands
Withouta printerdriver,sendingcontrolcodesand Escapesequencesto yourprinterproperlyrequiressomeknowledgeofaprogramminglanguage likeBASICorPascal,orat leastofhowtoput suchcodesintoa program. Withprogramminglanguages,thecomputerdoesn’tacton thecommands youput intoa programuntilyoutellit to runthatprogram.
Whenyougivea commandto theprinterfroma computerprogram,you normallyentereachpartofthecommandasaseparatecharacter.Thisway youdon’taffectanythingelsehappeningon thecomputer.Youoftensend eachcodeor characterinthecommandbygivingitspositionin theASCII table,as a decimalor hexnumber.
9
A BASIC example
Here’s an example you can typoin right now, to clarify what we’re saying. It’s
writtenin MicrosoflBASICfor a computerthat uses the MS-DOS operatingsystem,soif youhavea differentcomputeror BASICyoumay haveto translateabit.We’11showcommandsthewaythey’rewrittenforan Epsondot-matrixprinterbecauseyourStarLaserPrinter8understandsthose commands.
TheLPRINTcommandsall senddatatotheprinter.Ifthedataissomething youwantprintedyoujust putit inquotationmarks.If thedatais acontrol codeyoujustsaywhereitisintheASCIItable,givingitspositionasaregular decimalnumber.
BASICusuallysendsacarnagereturnafterevery80characters,tokeepthe print positionmovingwhenit hitsthe endof aline.Unasked-forcarriage returnscanmessupyourprinting,however,so ii’sagoodhabitto putina WIDTHstatementas shown.Thatletsus printoverthe wholepagearea.
The<BEL>controlcode—ASCIIcode7— issentinBASICasCHR$(7). The<ESC>codeitselfisCHR$(27).Andbecausewe’reusingthecharacter 4 as
part of an <ESC>command,wetypeCHR$(52)insteadof“4”.
Soif youstartBASICandtypethesecommands:
NEW
10 ‘ EXAMPLE 20 tiIDTH “LPT1 :”, 255 30 LPRINT CHR$(7)
40 LPRINT CHR$(27) ;CHR$(52)
50 LPRINT “ITALICS ! “ 60 END
RUN
youmaketheprinter(inEX-800mode)firstsoundits bell—mostpeople callit abeeper—andthenprinttheline:
ITALICS!
Generally,whenyousendacontrolorEscapecodeitstaysactiveuntilyou deactivateit. That’swhathappensin line 40 of our programabove.All subsequenttextwillbeitalicizeduntilyouchangeitbacktouprightagain.
10
Mostprogramminglanguages,andsomeversionsof BASIC,letyoutreat theprinterasa fileto whichyoucansenddata.Whenyouwritea program withoneoftheselanguagesyou“open”the printerfile, printintoit,andthen “close”thefilewhenyou’redone.Thisprogrammingjargonsoundsfunny if you‘renotusedto it—butit works.
Afewprogramminglanguagesletyousendcommandstotheprinterathird way. Applesoft BASICis one. With it, you can switchbetweenprinter outputand screenoutput.
Printer emulations
You noticedthat we said “in EX-800mode”up there?YourStar Laser­Printer8respondstothesameescapesequencecommandsthatseveralother printersuse.BeingabletoemulateprintersliketheDiabloorEpsonEX-800 letsyouuseyourStarLaserPrinter8 witholderprogramsthathaven’tbeen updatedtotakeadvantageoflaserprinters.Infact,becauseitemulatesfour of themostpopularprinters,youcanusethe StarLaserPrinter8withjust aboutanymicrocomputerprogramaround.
Unfortunatelythose printers often use different escape sequencesfor exactlythe same function.Thoseprinters,moreover,provideescape se­quencesfor functionsthe Star LaserPrinter8 doesn’tneed, such as the Diablo’sChangePrintwheelcommand.(Printwheels— sometimescalled “daisywheels”- areflatmetalorplasticprintelementsthatholdcharacters outfromahubon “petals”.)Whenyourprintergetsa commanditdoesn’t support,itjust ignoresthecommand.
Macrosaresinglecontrolcodesyoucandefineyourself,whichdothework
ofawholelongseriesofprintercommands.Ifyouareaprogrammeryouwill behappyto heartheStarLaserPrinter8 supportsupto 99 macrosatonce.
11
12
:-m
-
,’ ,. .; . ; ,. ,: ,, .:.. ,. ,’ , ,’.: ~:,, ,. .., ,,.,,. \ ;,, $.
~~•‘eotitroiling’r’ -
-,,vd&fipfi3$6+;;:,i; ,.
Youcancontrolyour StarLaserPrinter8 intwoways,eitherthroughfront
panelparameters or through softwarecommands. In thischapterwewill
considerprinter controls mostly from the perspectiveof the frontpanel. However,we’llalsomeetfourspecialcommands,the Star LaserPrinter8
superset.
Throughout this manual we approach parameters and commands the same
way:overall pnnter-level controlsfirst,then page-level controls (layoutand
print position movements), and finally character-level controls
(fontsand
graphics).We’lldiscussthesein generaltermsin thischapter. Thespecificcommandsyoucansendtoyourprintertomakeit emulare,or
worklike,otherprintersare describedin chapters4 through7. The most importantfactaboutprinter commands,though, is thatyou maynot even needto knowhowtousethem.Ifyoursoftwaresystemsincludetheirown printer drivers, you may want to read only this chapter and skip all of chaptem4 through7.
PRINTER PARAMETERS
The front panel
TheeasiestwaytocontrolyourStarLaserPrinter8isthroughitsfrontpanel, asexplainedinmoredetailinyourStarLaserPrinter8OperationsManuai.
Whenyourprinteris online(connectedto and underthe controlof your computer),its front panel display shows you the printer’s status. For example,the READYlight blinkswhen the printeris warmingup. The DATAlight comesonwhenevertheprinterisholdingdataithasn’tprinted yet.
Whenyoupressthe ON
LINE button,theprinterchangesfromnormalto
ofline modeandcannotacceptdatafromyourcomputer.Whentheprinter isofflineyoucanusetheotherpanel buttons.Forinstance,ifyoupressthe
TEST/PREVIOUS button when the laser printer is offline,it finishes
13
I
printingthecurrentpageandthenfeedsin andprintsa statussheet. Somebuttons on thepanellet youperformtwo functions.Holdingoneof
those buttonsdown, rather than quickly pressing it, selects a different operation.Forexample,holding down the TEST/PREVIOUS buttonfor overfivesecondsmakestheStarLaserPrinter8printitstestpattern.
Parameter settings
Fromthe panelyoucan alsochangethe parametersthatdefinehow your printerworks.Parameter
just means “variable”. If you’refamiliarwith
earlierkinds of printers, you’llunderstandthat laser printerparameters controlprettymuchthe samethingsDIPswi~chesdo.(ADIPswitchor’’dual in-linepackageswitch”isasetofsmallswitchesthatcontrolvariousprinter functions.)
character (whatcharacterfontto print) layout (howpageswillbeformatted) paper feed(whatpapertheprinterwilluse) command (whichcommandstheprinterwillaccept) interface (howtheprintercommunicateswithyourcomputer)
Theprinterstorestheseparametersaseasy-to-useprogrammenuitemsthat
youcan selectfromthe controlpanel.Theseparametersspecify:
.
. . .
Adefaultisthe settingtheStarLaserPrinter8willuseifnone isspecifically selectedbyqprogram.Whenyoufirstturnonorlatcrresetyourprinterthese defaultsettingswilltakeeffect.
Yourmainuseforthe frontpanelwilllikelybe tosetthedefaultsettingsyou want for these parameters.However,you will probably find the panel
convenienttoo when you wantto switchbetweenmanualand automatic
paperfeed.
Four versions of parameters
TheStarLaserPrinter8actuallystoresfourversionsoftheseparameters:
its “ultimatedefault”factorysettings,
thepower-onsettingsin effectwhenyoufirstturnontheprinter,
yourinitialsettingsfor oneparticularsession,
andthe currentsettingsthattheprinterisusingnow.
These
are in priorityorder,Thecurrentsettingsalwaysoverridetheinitial
sessionsettings,whichinturnoverridethepower-onsettings,whichinturn overridethefactorysettings.
14
FactorysettingsarcprogrammedintotheStarLascrPnntcr8whenitisbuilt
at the factory.Yourprinterkeepsthe factorysettingsforiLsparametersin
ROM;theyncvcrchangc.Youcancopythcmiruothecurrentsettingsorany
other settings as needed.Butthe only way you can returnto the factory
dcfaulLsis fromthe frontpanel;nocommandsdothis.
A few
factory default settings arc as follows:
Itcm
Factory default setting
Emulation
HP LaserJet series II
Fccdcr
Paper cassctle Number of’Copies 1 Oricntatim
Portrait Font 1(1-pitch12-point
Councr(intcmal)
Lines/inch 6 linesper inch
The power-onsettingsarc the normaldefaultsettings.The printer keeps
thcmevenwhenyouturnoffthe power.Whenyou turnonthepnntcr,these power-onsettingsgetcopiedintotheinitialandcurrentpararnctcrsctlings.
Youprobablywillnotof’tcnchangetheStarLaserPrinter8‘sinitialsettings (sometimescalled“sessionsettings”).You’lllikelyonlychangethcmwhen you want to use a differentpnntcr cmulation than normal.These initial settingsstaythesameasthepower-onsettingsuntilyouchangethcm.
Ontheotherhand,your software willprobablychangethecurrentsettings
manyJimcs withinthe samedocument,witheverychangeof fontor print
style.
How to change parameters
Withthepnntcroffline,ifyoupressthe PROGRAMbuttonthe printergoes
into“program”mode.Youcan then step throughthe laser printer’sfour ICVCISof programmenuto configureyourprinlcr.That’sthe processof changingcertainprintersettingssoyourcomputerandprintercancommu­nicateproperly.
It’sactuallyprettyeasy.Flippingthroughand settingparametersfromthe panelisdcscnbcdin detailintheStarLuserPrintcr8 OperationsManual.
Basically,allyoudo is pressthe
NEXT or PREV1OUS buttonsto scroll
throughthescqucnccof possibleparametersandvalues,which is clearly
shownonthepaneldisplay.Youpress
ENTER whenyouwanttogodown
15
andscrollthrough a lowermenulevel.AndyoualsopressENTER when youwanttosaveaparticularmenuitcmasthevalueforacurrentparameter setting.
Thethreelastmenuheadingsletyouloadone versionoftheparametersinto anotherversion.Two movethe currentparametervalues into either the initialor power-upparameters.Thefinalmenuoptiongoestheotherway, lettingyouloadthefactoryparametersettingsasyourcurrentsettings.
CONTROLLING THE PRINTER
In thissectionyou’ll meettwo separatecontrolsoverhowthe StarLaser­Printer8 itselfworks.The INTERFACEparametercontrolscommunica­tionsbetweentheprinterandyourcomputer.AndtheCOMMANDparame­terdetermines,amongotherthings,whichsetofcommandstheprinterwill use. You can settheseINTERFACEand COMMANDparametersonthe frontpanel.
The INTERFACEparameter
The INTERFACEparameter,the mostbasicof the Star LaserPrinter 8’s
configurationsettings,defineshowyourcomputerconnectsto theprinter. You can set the INTERFACEto either Serial or Parallel (in IBM or Ccntronicsmode).Inmost single-computerenvironmentsyou’lloptforthe fasterParallelinterface;inamulti-usernetworkyoumaybe betteroff with Serial. ~
The particularprinter interface settingsdon’tmatter asmuch asmaking sure
theymatchthoseon your computer.If youuseanMS-DOScomputer,you can set yourcomputer’sparameterswiththe MODEcommand.See your MS-DOSmanual.
MostMS-DOSandAT-compatiblecomputerssupportupto threeparallel
andtwo serialports,whichcomeon expansionboardsyoupluginto your
computer.Whenyouinstallsuchboards youmustsetswitchesto indicate
thenumberandaddressesoftheseports.Ifyouspecifythewrongaddresses, youwon’tbe ableto print.
Serial interface: rate IfyouaskfortheSerialinterfaceyou’llhavetotellyourprintermoreabout howthedatawillbecomingin—inparticularitsrateandunitsizeandthe meaningsof anyspecialbits.
16
The Rateparameterspecifieshowfastdata willbe arriving,measuredin baud(namedaftertheFrenchcommunicationsengineerJeanBaudot).pick anyof thefollowingdatatransferrates:
300baud 600baud
1200baud 2400baud 4800baud 9600baud(thedefault)
19200baud.
Roughly,one character asecondworksoutto 11baud.1fyou‘renot surehow fast your computer will transmit, the general rule is to cxpcrimcnt. Try sending a page to print at the highest speed, and
workyourwaydownuntil
thepnntcr’soutputlooksOK. Serial interface: specialbits
In-Serialmodeyou’llalsohavetospecifyifyourcomputersendsdatabits in groupsof seven(mostcomputerssendeight,thedefaultfor a byte).
Somelimesanextrabitgets appendedto makethe sumof all bitsin each characteralwaysodd oreven;that’scalledparity. Aparitybitcanhelpspot transmissionerrors.Ifyourcomputersendsthatextraparitybit,you’llhave to say whetherit producesan even or odd number of “on” bits in the character.
You’llalsohave toindicateifyourcomputersendstwostopbitstoindicate thecndof abyte,insteadofone,thedefault.Theseserialintcrfaccsettings
aredcscnbedinmoredetailinyourStarLaserPrinter8OperationsManual. Serial interface: protocol
Finally,in Serialmodeyourcomputerwill use one of threeprotocolsto
ensure data is sent properly. Protocol (sometimes also called “handshak-
ing”)means“whosayswhatwhen”,andis thewayyourprintertellsyour
computerit’sreadytoreceivedata.Yourcomputerandpnntercommunicate bysendingprotocolcontrolcodes(they’reatthe frontof theASCIItable).
SomeprogrammerscalltheXONandXOFFcontrolcodes“kissonandkiss off’;otherscall thesameprotocolDC1andDC3(fordevicecontrol).Either way,thesecodesletyourprinterruntheshow,tellingthecomputerwhento startandstopsendingdata.Yourprinteraskstohavedataheldbackwhen itsmcmoryis nearlyfullor whenitsensesan ERRORcondition.
17
I
DTR(DataTerminalReady)protocoldoesthe samethingslightlydiffer­ently.The,printersendsa continuoushigh-voltagesignaloverthecableas long as it can accept data, but drops the voltageto say “whoa”to the computer.
Conversely,it’sthe computerthatholdsthereinswiththe ETX/ACK(End­of-text/Acknowledge)protocol.ThecomputersendsanETXcontrolcode aftereachstringofdata,andwhentheprinterfinallygetsthatcodeit sends anACKcodebackto thecomputer,askingfor more.Thisprotocolis less used by modem computersbecauseit doesn’thold back data when the
printer’smemorygetsswamped, Look in your computer’soperationsmanual,in the sectiondealingwith
communicationsprotocols,to sce whichis bestfor yoursystem.Youcan
sticktotheprinter’sdefaultsifyourcomputerusesneithertheDTRnorthe
ETX/ACKprotocol,butdoesuseXON/XOFF.
If you wantto enableDTRor ETX/ACK,or disableXON/XOFF,you’ll
have to set thoseparametervaluesaccordingly.Turningon onc of these protocolsautomaticallyflipsoff theothers.
Checking your connections
Yourcomputerandprintermayhavetroublecommunicatingwhenyoufirst introducethcmtoeachother.Thequickwaytofindoutif yoursettingsand
printercableareworkingistosendyourprinteraprintoutfromyourscreen
(CHW-P withMS-DOS).
Whenthat’s doneyouwillalsohavetopresstheprintbuttonontheprinter, whichm’akestheprinteradvancetoanewsheet.Nolaserprinterprintsand ejectsapage untilit’stoldtofeedaform,oruntilithasreceivedallthelines thepagecanhold.
If yourStar LaserPrinter8 doesn’tprintwhat’son thecomputerscreen, recheck your connectionsand interface settings. With an applications
programlikeLotus1–2–3orMicrosoftWord,youuscapnntersctup routine to match yourcomputerwithyourprinter’soperatingcharactcnstics.So double-checkyoursoftwaresettings;your computer’soutput,forcxarnple, mightnotbegoingto theproperport.
18
Printer emulations
OK, you’ve gotyourpnntcr andcomputerconncctcdproperly.NowIct’s focuson howyourpnntcrworks.
Your Star LaserPrintcr 8 understands and uscs the same commands as several earlier kinds of pnntcrs. Your printer works by emulating onc of these:
Hewlett-Packard LaserJet series H
Xerox Diablo 630
Epson EX-800
cIBM Propnntcr
Otherlaserprintersmayoffersuchemulationstoo,butoftenrequireinstal­lationof a ncw circuitboardfor eachemulation.StarMicronicshas built thesefouremulationsintotheStarLaserPnntcr8.
You
select which emulation you want either by sclccling it from the print program menu on the Star LascrPnnter 8’s front panel, or by sending the pnntcr onc of the supcrsct commands at the
cndof thischapter.
What are the emulated printers like?
MostofthetimeyouwillprobablychooseHPLaserJetseries11emulation, whichisthe defaultwhenyouturnontheStarLaserPrintcr8.That’sbecause the LaserJetseriesH, like theStar LaserPrinter8, is a laser printer.This cmulationmode givesyouthebestcontroloveryourpnntcr’sfeatures,and workswithmostpopularapplicationsprograms.
TheEX-800emulationisquitepowerfultoo.It includesallthedot-matrix pnntcr commands(includinggraphics)used by hundredsof programs. Mmtly,you’llchoosethisoptionwhenyourunaprogramthatcannotsend laserprintercommands.
TheProprintcr,adot-matrixprinterliketheEX-800,hasasimilarcommand
set.YoulikelywilloptforProprintcremulationonlywhenyouwanttouse computer programs spccilicallydesigned for the Propnntcr and IBM computerenvironment.
WhenyouwanttoemulateadaisywheelpnntcryouwillprefertheDiablo emulation.You may alsochoosethisif you use an older textprocessing programthat can’tccntcrorjustifyits printing;Diabloprintercommands can lookafterthosethingsfor you.
19
I
The Command parameter
The Star LaserPrinter8’s Emulationsetting defines which printer it is
imitating: Hewlett-PackardLaserJetseries II, Xerox Diablo 630, Epson EX–800or IBMPropnnter.
Mostof theotherCOMMANDvaluesbelowcanbe changedwithEscape codesaswellas fromthepanel.
Asthe
Number of Copies setting suggests, the Star LaserPrinter 8can print
citherjust one copy of each page sentto it,or multiple copies up to 99. Most
wordprocessingandotherpackages,however,let youlookaftermultiple copiesof adocumentwithoutusingthiscommand.Youmayconsequently preferto leavethisatthedefault(onecopy),changingit onlyasnecessary throughsoftwarecommands.
Twosettingsarconly meaningfulwhenyouareusingHPLaserJetseries11 commands.First,ifyouenableMacroOverlay,fromzeroto99 macroscan be active.
Second,mostof thetimeyou’llwantto printacrossthewidthof thepage, butoccasionallyyoumaywanttoprintupthelengthofthe page.Unlikemost otherlaserpnntem,yourStarLaserPrinter8 lets yourotatefontsto print eitherway—youdon’t haveto buyseparatefontsto printsidewaysonthe
page.
Yourprinternormallyfeedsa new formwhenyou rotatea font,to avoid accidentallyprintingbothorientationsonthesamepage.Butifyouwantto
intermixorientations,just change the valueof FF on Rotateto NO. (Font orientationisexplainedinmoredetailbelowwiththeLAYOUTparameter.)
AfewcomputerschangecertaincontrolorEscapecodeswhensendingthem totheprinter,whichnaturallycausesconfusion.Moreover,manyprogram­mersprefertoscchexadecimalprintoutwhentheyare debuggingprograms. To helpwiththesesituations,youcanmakeyourStarLaserPnntcr8print inhexadecimalratherthanthe usualASCIImodebyswitchingONtheHEX DUMPparametersetting(seethesidebarbelow).
ThelastthreeCOMMANDvaluesconcernthephysicalmachine.Youcan settheintensityoftheprinter’sLCDdisplayfrom1(faint)to7 (bright);its defaultsettingis 4. You can enable or disableboth the beeper and the WarningAlarm(whichsoundscontinuously).
20
I
Hints: The hex dump
To makeyourStar LaserPrinter8 printin hexadecimalratherthanthe
usualASCIIsymbols,pressthe frontpanelbuttonsthat putthe pnntcr offlineandinPROGRAMmode.MovetotheCOMMANDparameter’s
HEXDUMPsettingand selectON.
SomccontrolorEscapecodescanbeproblemsonafewcomputcrs;those
computerschangecertaincodeswhensendingthemtotheprinter.Ifyou thinkyouhavethisproblemyouneedtoseeexactlywhatyourprinteris receiving.Werecommendyourunashortprogramthatloopsthroughand printsthe ASCIItable.PrintinhexadecimalratherthantheusualASCII symbols.
If youspota problemcodeyoucantryto bypasstheproblem,eitherby
sendingeachcodedirectlyto theprinter,orby changingyoursystem printerdriver. Suchcomputer-specificsolutions,though,arebeyondthe scopeof thismanual.Wesuggestthatif necessaryyouconsultanother programmermorefamiliarwithyourcomputer.
Actually,ifyouaredebugginganyprogramyou mayfindthishex-dump
modehelpful.It canbe a greattrouble-shooter.
CONTROLLING THE PAGE
In this section we look at two controls you have over how the Star LaserPrinter8 handlesand formatsits pages:You can set valuesfor the PAPERFEEDandLAYOUTparametersonthefrontpanel.Atthe end of thissectionwe’llalsopreviewdifferentwaysto movetheprintposition.
The PAPER FEED parameter
ThePAPERFEEDparameterletsyouspecifybothwhatkindofpaperyou wantandhowtheprinteristo handleautomaticprint-positionmovements (carriagereturnsandsoon).
Oneconvenientthing aboutalaserprinteristhat it doesn’tneed
continuous
forms,
sometimescalled~an~okipaper. Otherprintersfeed in a stack of forms—withpagesalljoinedbyperforations-by havingsprocketsengage andpull
alongpinfeed holespunchedalongeachsideofthepaper.Afterit’s
printedyou have to tearoff the pinfeed-holestrips andthen separatethe pages.
21
WiththeStarLaserPrinter8youcanprintonavarietyofordinarycutsheet pages.
FortheFeedervalue ofthisPAPERFEEDparameter,youfirstentereither cassetteor manualfeed to indicatewhereyou want paper fed from.The cassettetray automaticallyfeedssinglesheets,muchlikesheetfecdemon othertypesof printers.Manual feedmeansyoufeedeachsheetby hand.
Thedefault papersizeis 8.5by 11inchletter-sizepaper;a different-sized tray automaticallyselectsthatdifferentpapersize. If youchoosemanual feedyoucanspecifyothersizestoo:
8.5 by 14 inch legal-size paper
A4 international (used in every country except North America)
(210
by 297 mm)
B5 international (used in every country except North America)
(182
by 257 mm)
the narrower “executive”size(7.25by 10.5inches)
Oneothernicethingyoucan do is printdirectlyon envelopes.Withthis Paper Size parameteryou can specifyenvelopesin sizes #10, Monarch,
EuropeanC5 andDL.Thenjust workoutwhereto putthe address,setthe orientationto landscape(see below), and slide your envelopeinto the manualfeed slot.Easy!
Inanyemulationmodeyoucansendyourprintercommandstochangepaper
sizeorfeedin,papermanually;you canalsoselectthoseparametersfromthe panel.Either,way,a messagein theprinterdisplaytellstheoperatorwhat papersizeto use.
Auto parameters Thepnntposition
referstothepointonthe pagewherethenextcharacterwill beprinted.Whentheprinterreachestheendof aline,theAutoParameters settingstellit whetherornotto automatically:
returntheprintpositiontotheleftmargin(carriage return, sometimes
just called“Return”),
or moveit downoneline(h%e~eed),
or keeptextoutof thesidemargin(aurowrap ),
or keeptextoutof thebottommargin(jbrmfeed ).
22
Hints: Paper, labels and transparencies
.
.
ThebestpaperfortheStarLaserPrinter8 hasa smoothfinishandisof
20 to24 poundweight.Anypaperdesignedforphotocopiersshoulddo thetrick though;Xerox4024andCanonNP printnicely. Highquality
cotton bond paper,whichcontainsupto25 percentcottontibres,works
passablywellwithevenheavierweights. The absolute limits arc 16-poundpaperal the lightend and 35-pound
stockattheheaviest.Withhcavypaper,openthetraysothepageswillbc dclivcrcdfaceup andwon’thaveto bendoverthefinalrollers.
Beawarethatanypuckeredor wovenfinishmaynotprintassharplyas you‘dlike.Avoidshinycoatedpaperormultipartforms.Anddon’teven thinkaboutputtingin stapledor rippedpages.
If you frequentlychangepaperweights,youwillprobablygetskewing problcms—linesthatprintal an anglebecauseof misfccding.Forbest results,whenyourStarLaserPrintcr8isfirstsetuphavethepaperfccdcr “squared”forpaperof-atIcast20pounds.Lighterpaper,thoughchcapcr, isn’treallythewayto cconomizc.
Wantto printon yourownpreprintedIcttcrhcad?Fine—solongasyour logoisn’tthermographed.Thickcoloredinkmaylook luxurious,butit canalsowindupstuckall overyourpnntcr’sroller.Stayawayfromany inksthatsoftenatrelativelylowtemperatures;your printerfusespagesat
200: c.
Thiswarningappliestocoloredpapertoo,ifithasbeentintedwitha1ow-
tcmpcraturcdye. ThetoncrcartridgcinyourStarLascrPrintcr8shouldprintatleast4000
pages,20 refillsofthepapertray.Thecostofreplacingatonercartridge
is not muchmore than thatof replacingprintwheels and ribbonson a
daisywhcc.1printer.
Butyou
canextendthelifeof acartridge:Settheprintdensityto 7 or 8
formost of yourprinting—firstdraftsandinternalcompanywork—and
just turnthedialbackto4 or 5 forreportsor lettersthatmustlookgreat.
CAUTION:
the rollers beside the dial may be very hot.
23
.
.
.
Whenprintingstartsfadingbecausethetonerislow,removethecartridge andgentlyrockitbackandforthhalfadozentimes.Don’ttipitupor the tonermayspillout.Redistributingthe tonerpowderthiswaycankeepthe cartridgegoingforanothertrayof paper.
No question,workingwithsinglelabelsheetsis moreconvenientthan withcontinuouslabelstock.Laserprintersarefasterandproducebetter­lookinglabels than other printers.But laser printers, which work by electrostaticphotographyrather than impact pressure, put different stressesonlabelpaper.Eachsheethastobendoverandthroughtheguide rollers; moreover,fusing toner to the paper involvesheat. You can
eliminatetroubleby alwaysfeedinglabelsheetsmanually.
BothAvery’s“Lasergraphic”labelsand Canon’slabelsseem to work fine.Yourmainconcernis thatthelabelscompletelycoverthebacking sheetsoitshowsonlyattheoutsidemargins.Thatwayindividuallabels can’teasilypeeloff.
Thesafestapproachistolaser-printsharpmastercopiesonpaperandthen photocopythoselistsontolabels.Thiswill avoidputtingyourprinter’s adjustmentforpaperthicknessoutof adjustment.
If you wantto print transparenciesfor youroverheadprojector,some films will actuallymelt in your laser printer.Stick to 3M’s medium­weighttransparencyfilm(type501)or to Hewlett-Packard’sW2285J.
24
The LAYOUTparameter
The layout orformat or setup of apagerefersto howtextis positionedon
the page. Layoutincludespage orientation,marginsand the spacingof charactersacrossandlinesdownthepage.Youcancontrolthesewiththe LAYOUTparameter.
You probablywon’t use the LAYOUT parameteron the front panel’s programmenuverymuchthough.Mostof thetimeyou’lleitherleavethe StarLaserPrinter8 with itsdefaultsettings,or lookafterpageformatting withcommandsyousendfromyourcomputer.
Page orientation
Apage’s orientation tellsyouinwhichdirectiontheprintgoesonthepage. Whenyouuseportraitorientationthelinesareprintedastheyareinanormal businessletter,acrossthewidthofthepage.Aportraitpaintingof aperson is
usually vertical-hence the name.
Landscape
Portrait
Whenyouuselanakcape orientationthewordsareprinted“ontheirsides,” verticallyupthelengthofthepage.Textwrittenwithlandscapeorientation onlylookscorrectwhenyouturnthepagesoitslengthrunsside-to-side,just likethe paintingofa landscape.’
Envelopesmustbe printedwithlandscapeorientation.Youalso will use
landscaperegularlyto printchartsor banners,andspreadsheetsor reports
withso manycolumnstheywouldn’totherwisefiton thepage. Allinternalfonts,andalmostallcartridgeanddownloadedfonts,arestored
in theStarLascrPnnter8 withportraitorientation.
25
Margins, columns and lines
Youcanchangemarginsettingsforallfouredgesofapage.Theleftandright sidemarginscanhavevaluesfromOto 132,definingthemargincolumns betweenwhichwordsandimagescarIbeprinted.Andthetop andbottom
marginscanbe setat anywherefromOto 112 lines.
Top Margin
@19
Side Margins
Text
Length
{
/
{
‘\Line
Column
/
Porlrait
Bottom Margin
Landscape
Orientation
Orientation
Theactualmeaningofacolumnis definedby thesettingforthe
horizontal
motion index
(HMI).The HMIjust meanshowwideyou wantthe space characterto be.Eachcolumn,ruining frompagetopto bottom,willbethe widthof a space.
Youprobablywillletyoursoftwareworryaboutthespacewidth.Butif you want,youcan setthe HMIparameteronthe panelin incrementsof 1/120 inch—anywherefrom 1to255increments.
Similarly,themeaningofaline(sometimescalleda“row”)isdefinedbythe
verticalmotion index (VMI).Theprintermovestheprintpositiondowna
line whenit getsa LineFeed code,usuallywhenit bumpsinto the right margin. Again,you’llprobablylet yourcomputerprogramsetthe linedepth.But from the panel you can set the VMI value in incrementsfrom 1/48to 255/48of an inch.
26
P
Moving the print position: a preview
Wlthdot-matnxanddaisywheelprinters,youpickwheretoprint onthepage eitherbymovingthepnntheadbackandforthorbymovingthepaperitself.
Laserpnntemdon’thaveprintheads,buttheprincipleremainsthesame:you havetosayexactlywhereonthepage eachpictureandstringoftextistogo,
so eachpagecanbeconstructedin theprinter’smemory. Insteadoftalkingaboutprintheadswetalkaboutmovingtheprint
position
(some people call it moving the “cursor,” using the computer-screen analogy).Horizontally,youcanmovetheprintpositionwithbackspaceand carriageretumcommands.Vertically,youcanmovetheprintpositiondown thepagebyprintingsomanylinesperinch,orbysendingline-feedandhalf
line-feedcommands.Youcan alsomoveto tab settingsbothhorizontally
andvertically(handyfortablesandblankforms,ormakingroomforyour
diagrams).
Butthosearen’tall.Dependingonwhichprinteremulationyou areusing, you”cantellthe StarLaserPrinter8 to movetheprintpositionverticallyor
horizontallyin incrementsof:
1/10,1/12or similarfractionsof aninch(pitchsettings),
1/48,1/60,1/72,1/120or 1/216inch(lineor column definitions),
l/3CN)inch(dots),or
1/720inch(tenths of apoint).
These incrementsreflectthehistoryof twentiethcenturyprinting.
Pifch,
referringtothe numberofcharactersprintedineachhorizontalinch,derives fromhowtypewritersspacetheircharacters.
Lines andcolumnswerefirst
usedby earliercomputerprinters(onwhichtheyarecalledhorizontaland verticalmotionindexes).YoualreadyknowabouttheStarLaserPrinter8 beingableto print300dotsto the inch.Andtheunitby whichtypesetters havemeasuredtextforcenturiesisthe
point, aboutl/72ndof an inch.
Onehintaboutmovingtheprintposition:youcanconfuseyourselfif you usemorethanone ortwodifferentunitsduringthesamesession.Sodecide beforehandhow accuratelyyou need to move the print position (not
forgettinganygraphicsyouwantto include).Then stickto theunit(s)you choose.
Thecommandsthatmovetheprintpositionin allthesewaysaredescribed inchapters4 through7,withthespecificprinteremulationyouwant touse.
27
CONTROLLING THE PRINTING
The EMULATEATT../BUTES parameter
TheEMULATEATTRIBUTESparameterdefinesfontattributesandsetup values(ifany)foreachoftheStarLaserPrinter8’sfouremulationmodes.
Afont’s
attributesorcharacteristicsdeterminewhatthatfontwilllooklike
whenit isprinted.Thenext chapter,“Fonts,”exploresthedetailsofallfont attributesin more detail.But let’s have a quickoverviewnow, because you’llmeetthesetermson thefrontpanel’sprogrammenu.
Font attributes: a preview
Orientation(portraitorlandscapeasdescribedearlier)isusuallythoughtof as one attributeof a font;it’snot reallya pageformattingissue.Besides orientation,thefontswithwhichyouprinthavetheseattributes:
Symbolset is sometimescalled“characterset”- whichcanbe confusing, sincesomepeople say“characterset”whentheymeana font.Symbolsets are subgroupsof a font’ssymbolsthatare mostappropriateforparticular countries,suchastheUK(f), France(h),LatinAmerica(fi)orJapan(%).
Spacing andpitch arelinked. Characterscanbespacedon theline propor- tionally, so
anarrowlettersuchasi takeslessroomthana wideletterlike
W. Orcharacterscanbespacedallthesamewidth:twelvecharacterstothe
inchis the
monospaced spacingcalled 12pitch.
Pointsize dcfincshowbigcharacterswillprint,suchasIOor 12pointshigh.
Styledefines whethercharactersprintin uprightor
italic style.
Stroke weight defineshowbold a typefaceprints.
Finally,
typeface itselfmeansthe artisticdesignof a font. Yourpnntcr’s
internaltypefacesincludeTms Romn,LinePrinter,CourierandPrestige Elite.WiththeStarLaserPrinter8 youcanalsouseHelvet,Gothic,Script, Caslon,Oratorandhundredsmoretypefaces,whichyouloadintotheprinter fromcartridgeor computerdisk.
Whenyouenablefont
setupparameters onthefrontpanel,itmeansyoustart
off with particularfont attributesas defaults when you first choose an emulation.WiththeEX-800andDiabloemulationsyoucanenablepropor­tionalspacingandboldprintassetupparameters.EX-800modealsoletsyou startupwithhalf ofyour symbolsetasgraphicscharactersinsteadofitalics.
28
THE STAR LASERPRINTER 8 SUPERSET
Do you need to send commands?
Here’s an importantfact: you can set nearly every one of the above pararnctcrsby sending your printer a corresponding Escape sequence command.ThoseEscapesequencecommandswilloverrideanysettingyou makefromthefrontpanel.
Themainthing to realizeaboutmost printercommands,though,isthatyou
probablydon’t need to use them. Nearly all popularsoftwarepackages includeprinterdrivers,whichsendcommandsto theprinterso you don’t haveto typethemyourself.Someof thoseprogramsaskyouto keyin set­up paramctcn about your printer. Other programs let you put printer commandsbeforeorinsidethedocumentyouwantto print.
Butmaybethesoftwareyouusedoesn’thaveprinterdriversforanyprinter yourStarLaserPnntcr8emulates:Youstillmightnothavetowritepnntcr commandsyourself.
Severalcompaniessellprogramsthatlook afterlaser-printingcommands for such software.Ask your dealer about
LaserControl, Printworks for
Lasers, PCLPak
andRAM Resident Printmerge. There’snotmuchpointin
reinventingthewheel.
The Star LaserPrinter8 superset
Besides the commands that emulate other printers, your laser printer understandsfourothercommandscalledtheStarLaserPrinter8
superset.
The Star LaserPrintcralways understandssupersetcommands;it doesn’t matterwhichemulationmodeyourprinterisusingatthemomcnl.Supcrsct Escapesequencecommandsstaflwilh<ESC>[ so you can quicklyspot
themin a listof commands. Onesupcrsetcommandgivesyouanotherwaytoswitchfromoneemulation
to another: you sendthe ChangeEmulationsupersetcommandinsteadof usingthe frontpanel.The secondsupersetcommandletsyou changethe printingorientation,so you canprint sidewaysup the lengthof the page,
insteadofacrossits widthintheusualway.Thethirdsupcrsctcommandlets
youchangethepapersize.Thefourthsupersctcommandletsyouchangethe
papercassette for thedual-cassetteprinter.
29
The Change Emulation command
YoucanthinkofthesupcrsetChangeEmulationcommandasthekeytoyour Star LaserPrinter8. The ChangeEmulationsupersetcommandlets you switchfromone setof printercommandsto another“onthefly,”through software.
ThisisthecommandthatdefineswhatothercommandstheStarLaserPrinter
8will accept.WithChangeEmulationyouindicatewhichprinteremulation programyouwanttheprintertouse.
Whenyoustarta newemulationyoualwaysstarta newpage.
Note:alwayssendCarriageReturnandFormFeed(controlcodes<CR>and
<FF>)justbeforeyougive thisChangeEmulationcommand.Theseforce theprintertoprintanypartialpage in itsmemoryandstartanewpagewith thenewemulation.If youforgettoissuethesecontrolcodesfirstthe Star
LascrPrinter8willdothemforyou—butyourChangeEmulationcommand
willjust resettheprinter’sparametersto theirinitialdefaults,andnotgive youthe emulationyouaskfor.
You issue the ChangeEmulationcommandwith the followingEscape sequence:
<ESC>[E n
Forthevalueof n youenteranumberfromthistable:
n< EMULATION
O(zero)HPLaserJetII J (one) Diablo630 2 EpsonEX-800 3
IBMProprinter
30
The Select Orientation command
The Select Orientationsupersetcommandletsyouchangethe“attitude”in
whichtheStarLaserPrinter8prints. Tochangefromoneorientationtothe otheryousendthis SelectOrientation
Escapesequence:
<ESC>[ O n
Forthevaluen youput O(zero)forportraitorientation,
or 1(one)forlandscapeorientation.
When you send this command to print in landscapemode, the printer automaticallyrotates its currentfontso thatit printsaslandscape.
The spotor line whereprintingstartson thepageis sometimescalledthe
origin or top ofform.
Theoriginchangeswhenyouswitchorientations.
Thatstartingprintpositionisintheupperleftcornerforaportraitpage,but
in thelowerleftcomerfora landscapepage.
TheStarLaserPrinter8letsyoumixportraitandlandscapeorientationson thesame page.Becausethestartingprintpositionchangeswhenyouswitch orientationsthough,you have to rememberto re-orientcommandsthat move the print position.If you don’t want to allow the printer to mix orientations,usethefrontpanelprogrammenuto changetheCOMMAND parameterFFon ROTATEvalue to NO.
Youprobablywon’twanttochangeorientationallthatoften.Everytimeyou do,th~StarLaserPrinter8alsoresetsthe pagemarginstoitslimits,andalso howitdefines linesandcolumns.SowheneveryougivetheSelectOrien­tationcommandyoumaywanttofollowitwithEscapesequencestochange thesideandtop marginsandpaperlengthsettings.(Alternatively,youcould putrheprinterofflineandresetthesefromthe frontpanel,asdescribedunder LAYOUTearlier.)
31
The Paper Size command
ThePaperSizesupersetcommandletsyouchangethepapersizein which theStarLascrPrinter8prints.
This is the commandthat defineswhat sizethe Star LaserPrintcr8 will accept. You issue the Paper Size commandwith the sequence:
<ESC>[ S n
Forthevalueof n youentera numberfromthistable:
n SIZE
1 Lettersizepaper
2
Legalsizepaper
3
A4 Internationalsizepaper 4 Executivesizepaper 5
B5 Intcmationalsizepaper
11 Monarchsizeenvelope 12 Com-10sizeenvelope
13 InternationalDLsizeenvelope
14 InternationalC5sizeenvelope
followingEscape
This commandcontrolsthe size that the printer should use when nexl
feedingfrom the selectedpaper feeder.If the printerdoes not have the requestedsize, the frontpanel willdisplaya messageinstructingyou to inserttherequestedpaper/envelope.If theoperatoroverridesthatrequest, therequestedsizeis ignored andthesizeofthecurrentcassetteis used.
If youhavepreviouslysetthecassetteselectionto “automatic”,andoneof thecasscttcscontainsthepapersizerequestedinthecommandabove,that papcrcasscttcwillautomaticallybeselected,andpaperfeedwillcommence
fromthere.Thelampsonthefrontpanelwillchangeafterthiscommandhas
beenproccsscd,to showyouwhatcasscttchasbeenselected.
32
The Paper Feeder command
ThePaperFeedersupersctcommandletsyouchangethepaperfeederfrom whichthedual-cassettetype printerfeedspaper.
To changethepaperfeederyousendthePaperFeederEscapesequence:
<ESC>[ C n
Forthevalueof n youentera numberfromthistable:
n
PAPERFEEDER
1 Uppercassette
2 Uppercassettefor onesheet,thenswitchesto thelower
cassette
3
Optionalenvelopefeeder
4
Lowercassette
5
Lowercassettefor one sheet,then switchesto the upper casscttc
Thiscommand,ifgivenatthebeginningofapage,controlsthefeederofthe
sheeton whichtoprintthatpage. Ifthecommandisnotatthe beginningofthepage, itwillforceaFormFeed
andcontrolthe feederof the sheeton whichto printthe ncwpage which follows.
Thiscommandisignoredforthesingle-cassettetypepnntcrsincethistype
printerhas onlyonecassette.
33
I
Select Simplex/duplex mode (DX type only)
Youcan changebetweensimplexandduplexmodeusingsoftwarecom­mandsin anyemulationmode.Thecommandtodo thisis:
<ESC>[ D n
wheren is an ASCIIvalueof either“1”or “2”.If n is set to”1”, then the printerwillentersimplexmode,andifnis“2”,theprinterwillenterduplex mode.
Iftheprinterisinsimplexmode,the”1”optionwillhavenoeffect.Ifthe “2” optionis chosen whiletheprinter is in duplexmode,it isonlyvalidif then
face-downoutput stackhasbeen selected.Thepagecontainingthis com­mandwillbecomethe faceof thedouble-sidedpage.
If the printer is in duplexmode, the “l” option will force single-sided printing,commencingwiththepagecontainingthiscommand.Iftheprinter isalreadyinduplexmode,the pagecontainingthiscommandwillbcforced to be thefaceof thenextdouble-sidedpage.
The DUPLEXlight on the frontpanelwill indicatethe currentsimplex/ duplexstatusof theprinterfollowingreceiptof thiscommand.
34
Thefontsyouusedeterminewhatyour pageswilllooklike.In thischapter we’llfirst clarifythe meaningsof wordspeopleusewhentheytalk about fonts.
Nextwe’llexaminethethreekinds of fonts(internal,cartridgeanddown­loaded)that you can use on your Star LaserPrinter8. We’ll cover the particularsetsof symbolsyoucanchoosefor thosefontstoo. Finally,we’llfindouthowto loadtheprinterwithyourselectionof fonts.
FONT TERMINOLOGY
Typefacesand fonts
First,a fewdefinitions.A typefaceisa familyof characterswiththe same
basicdesign.Theartisticcharacterdesignyouchooseestablishesthe“tone
of voice”for allyourdocuments.
Several variables can characterizetypefaces, including weight (light,
mediu’m,bold),width(condensedorextended),andstyle(uprightoritalic).
Courier,forexample,isa typefacefamilythatincludesthecharactersinboth
Courier medi
urnitalic andCourier bold upright
Let’sconsiderthesevariables.Boldpnntissometimescalled“emphasized”
or’’double-strike”.Onearlierprintersboldfaceisgeneratedbyprintingeach
charactertwice;dot-matrixmachinesprintthesecondimpressionjust ahair
beloworto therightof thefirstone. Withthe StarLaserPrinter8 youcanhavedifferentstrokeweightsin two
ways, dependingon which emulation you are using. You can have two differentfonts,storingandswitchingbetweenaboldanda mediumversion ofthefont.Oryou canusejustonefontandsetboldonandoffwithEscape sequences.Thelatterwayusesjust halfas muchfontmemory.
35
Narrowcondensedfacesusedtobecalled“compressed”.Theycramabout fivecharacteminthespacewherethreeusuallygo-ideal forspreadsheets. An extendedface, particularlyon a dot-matrixprinter,goes by several
names:“expanded,
““enlarged”or’’double-width’’printing.Nomatterwhat it’scalled,extendedprintiswiderthanitishigh,andcanbefairlyeffective in pageheadings.
Italiccharacters(sometimescalled“oblique”)areslanted.Ordinaryupright charactersareoftencalled“reman”.YourStarLaserPrinter8comeswitha
built-inuprightCouriertypeface.Moreover,from anyof the Star Laser­Printer 8’s built-intypefacesyoucan selecta subsetof uprightsymbols calledRoman-8.
Afonf isacompletesetofcharactersinapafiicularsizeandtypeface.Inthe worldoflaser printers,thethreevariablesmentionedabove—weight,width and style—area few
fontattributes(sometimescalled“fontcharacteris-
tics”).Let’sconsiderthreemoreattributes:fontheight,spacingandpitch.
Fontheight
Thebaselineistheinvisiblelineuponwhichcharactersoftypesit.Sincethe
firstletterblocksweremadeofleadalloy,thedistancefromonebaselineto
thenextis calledleading(pronounced“ledding”).Typeitselfis measured fromthetopofanascender(thepanextendingupinthebork, forcxample) to thebottomof a descender(thedown-strokeof they or q ). Themeasurementsusedtodescribefontsarepointsandpicas(derivedfrom themarksandlettersinmedievalchurchalmanacs).Thereare 12pointsto the pica, and almostexactly 6 picas (72 points)to the inch. Your Star LaserPrinter 8 quitehandilyprintstypefrom6 to 36pointsin size.
Laserprintersforcomputersmeasurefontheightinpoints.Onlaserprinters the“whitespace”aboveascendersandbelowdescendersdependsonhow the line is defined,so the line correspondsto leading.This type you’re readinghasa font heightof 12points,and isspacedalittlelessthan5 lines
per inch.
36
The o has been kerned
The font height (24 points) is measured
closer to the f.
from
scender to descender.
I
4
A font is a complete set of
~ characters in a particular
~~~~~~~
t
size and type~ace.
B.ss@line
Uu
Proportional
Serif
spacing
L;ading is the baseline to bas-line measurement.
Fontspacingandpitch
Youprobablyfirst heard the wordpitch in comection with typewriters. Typewritersnormallyuse monospacedspacing:theygiveeachcharacterthe
sameamountof spaceontheline. Abouthalfthe fontsavailableforlaserprintersusemonospacedspacingtoo.
Pitch is alwaysexpressedas so manycharactemper inch.Ten-pitch,for example,meansa fontwithtencharactersineachinchof theline.
Typesetter forcenturieshaveusedtwospecialsizesoftypeformosttext. EfitecharactersareIOpointshighand print12charactersperinch.Andpica chararactersare 12 pointshigh and pitchedat 10 charactersto the inch. You’ll,often run acrossthesemonospacedfontsizesin thelaser printing world.
Ideallyeachcharacterinawordshouldnestleagainstitsncighbourssothey appearevenly spaced.Butadjacentroundcharactersare apt to look100far apart,whileflat-sidedcharactersmay appeartooclose.
Proportionalspacingtakesintoaccountthe differencesin widthsamong letters(compareii withWW).Proportionallyspacedprintingiseasiertoread than typewriter-styleprintingin whichall characters,includingpunctua­tion,havethesamewidth.
Realtypesettersequipcertaincharactemwithkerns,letterpartsthatextend out to overlapadjoiningletters.In this word Typethey is kernedclosely
againsttheT. Kerningseparatesgreattypefromgoodtype.
37
HOW THE STAR LASEI?PRINTER8
Bit-mappedfonts
STORES FONTS
StarMicmnicshas earnedareputationforattractive,well-designedfontson
itsprinters,andthislaserprintercontinuesthetradition. TheStarLaserPrinter8 usesbit-mappedfonts.Eachcharacterismadeup
ofa patternor “map”ofdots,just likecharacterson adot-matrixprinteror on yourcomputerscreen.Resolutionmakesthe difference:to makeeach charactertheStarLaserPrinter8 usestenortwentytimesasmanydotsas
a dot-matrixprinterorcomputerscreendoes.
Everysizeofprintyouwant,pluseveryitalicorboldfaceversion,hasitsown bitmapandis normallyconsidereda separatefont.It takesa gooddealof printermemorytoholdallthefontsyoumightwantatanygivenmoment.
Star LaserPrinter8 fontscan be groupedinto three categories:internal,
cartridge,anddowrdoadablefonts.
Internalfonts
The StarLaserPrinter8 hasfourbuilt-ininternalfontsthat resideperma­nentlyin its read-onlymemory(ROM).That’swhy theseare sometimes called“residentfonts”:
Courier
Prestige Elite
Tms Romn
Line Printer
Courieristhefaceusedon themostcommonelectrictypewriters.Neither
CouriernorPrestigeElite,anothertypewriterface,areprintedwithpropor­tionalspacing.TmsRomnhowever,is alwaysspacedproportionally.Tms Romnis probablythemostreadableandmostpopularcommercialtypeset­tingface.TheLinePrinterfont,desi~ed originallyformainframecomput­ers,is smallanddesignedtopackalotofcharactersintoeveryinchofprint
(greatfor spreadsheets). Withthesemost frequentlyusedfontsin ROM,a pagecan be assembled
muchfasterthanifthe fontshadtobeloadedintotheprinterforeachprinting
job.
38
Cartridgeanddownloadedfonts
YourStarLaserPrinter8canusetwootherkindsof fonts,alongwiththose
builtintotheprinter. Cartridgefonts,like the internal ones, are permanentlystored on ROM
chips.ThedifferenceisthatthoseROMsaminremovablecartridges.Your
StarLaserPrinter8 hasslotsfortwo fontcartridges.
Eachcartridgemayholdanywherefmmhalfadozentotwodozenfonts,all
differingfromtheinternalfonts in size,style,strokeweightor symbolset. You’llfindthatcartridgefontsopenupawiderrangeoftypefacestoo,such as HelvetandLetterGothic.Generally,cartridgeand internalfonttypefaces aresuitableforbothtextandheadlines.
The third kind of font is neitherbuilt into your Star LaserPrinter8 nor
availablejust by slippingin a cartridge.Youdownioadthiskind of font, which means you use a computerprogram to send characters from a
computerdisktoyourprinter’smemory.Anydownloadedfont(sometimes called a “soft” or “installed”font)that you put into the printer’sRAM
disappearswhenyouturnofftheprinter,soyouhavetodownloadthatfont
againnexttimeyouwantit. Downloadablefonts run the gamutfromEgyptianhieroglyphicsto those
eye-catchingdecorativefarmknownasdisplayfonts.Theyalsoincludethe more exoticforeign-languagecharacters,suchas Arabicor Cynllic, and symboland mathematicalfonts(sometimeswithfractions).
Howcan you compare cartridgeanddownloadablefonts?Whenyou use cartridgefontsyoudon’thaveto taketimeto downloadthcm.Theydon’t
takeanyofyour StarLaserPrinter8‘sRAMmemoryeither. Butdowrdoad-
ablefontsoffermanymorechoices.Downloadablcfontsusuallycostless
too. Theprinteralwaysknowswhereitsinternalfontsarc.Foreachemulation
program,it alsokeepstrackof cartridgeanddownloadedfontsin apartof
itsmemorycalledthe~onttable.
SowiththeStarLaserPrinter8youcanhavemanyfontsavailableatanyone
time—theinternalfonts,thefonts on anycassettesyou’vepluggedin, and
any fonts you have downloaded.You can change fonts in mid-lineto emphasizea word or two wheneveryou want. You can mix internal,
cartridgeanddownloadedfontsin thesamedocument.Youcanuse fonts
frombothcartridge slotswithinthe samedocumenttoo.
39
I
Hints:Wheretoget fonts
Youcati printanydownloadablefontthatworksontheHPLascrJctseries
II. Severalothercompaniesselldownloadablefontswhicharecompat­iblewithyour StarLaserPrinter8.TheBitstreamCorporationinBoston isoneofthemorepopular;Conographicisanother.Xeroxincludesaset of fontswithits VenturaPublisherdesktoppublishingsoftware,which
youcan usewithyourprinter’sLaserJetIIemulation.
The SoftCraftcompanynow markets a Bitstmam-developedproduct
called“Fontwarc”.WithFontwareyoucangeneratebit-mappedfontsof
anysizefroma libraryof outlinefonts.Inoutlinefontseachcharacter’s profileisdefinedjustonceandtheprintergeneratesanyfontheightfrom thatprofile,whichsavesprintermemory.
Outlinefontsdemand awesomecomputingpowerof theprinterthough,
so they’ve been availableonly on laser printers considerablymore expensive than the Star LaserPrinter 8. Now, with programs like Fontware,your StarLaserPrinter8 canturnoutelegantprintinanysize
withoutthathighprice.
Don’thesitateto ask yourStardealerwhereyoucan buycartridge and
downloadablefonts.If you reallycan’tfind theoneyouneed,youcan designand downloadyourowncustomizedfonts.Thisisnoemyjob,but if you’recuriousit’sdescribedin chapter4.
40
SYMBOL SETS
Let’ssummarizebriefly,toputthe subjectof symbolsetsin context. The attributesof a fontdeterminewhatthatfont willlooklike whenit is printed.We coveredall but orientationat the start of this chapter, and orientationin thelastchapter.A font’sattributesinclude:
. . . . . .
orientation (portraitor landscape) symbol set (whichwe’lllookat next) spacing (monospacedorproportional) pitch (10or 16.66charactersperinch,forexample) font height (measuredinpoints)
style (uprightor italics) stroke
weight (light,mediumorbold)
typeface (LinePrinter,TmsRomn,Courierandso on)
Thoughthey are not font attributes,suchprintingfeaturesas subscripts,
superscriptsandunderliningaretreatedalongwith fontsin the following
chapters.Eachemulationhasitsownwayof providingthesefeatures. Incidentally,thebestwayto underlineis to usethe underlinecommandin
theemulationyouareusing,insteadof backspacingandoverprintingwith theseparateunderlinecharacter(–).Ifyoudothelatterwith
proportionally
spacedtext,you’ll usuallyfindtheunderliningistoo longfor thetext.
Whatare symbol sets?
Keyboardsdifferfromcountrytocountry.TheBritishneedtheirf symbol, theFrenchneedtheirQand6,theSpanishneedtheir~andiletc. Scientists needparticularmathematicalsignstoo.Thereeasilycouldbefourhundred or morepossible symbolsfor anygivenfont.
However,thenumberof symbolsprintersstorefora fontislimitedto 256 slots,asinASCII.Sosomesymbols,ortheorderofsomesymbols,candiffer in anyfont.Eachuniqueselectionandarrangementof symbolsisa symbol set (sometimescalleda “graphicset”or“characterset”).
The symtmlatposition 91 forexampleisan openbracket,[ , in theusual
ASCIIsymbolset. Butthesamepositionholds A(capitalAwithanumlaut) in theGermansymbolset.
41
Youprobablywon’tchangesymbolsetsveryoften,unlessyouneedspeciaI symbolsforyourtradeor regularlywritein alanguageotherthanEnglish. Whenyoudoneedthem,though;inoneoranotheremulationmodeyourStar Laserl%intcr8 supportssymbolsetsforallthesecountries:
U.S.(ASCII) UnitedKingdom
France
Germany
Sweden
Finland
Italy
Denmark
Norway
Spain
Besidesthese yourprintersupportssetscontainingjustsymbols,suchasthe Greekalphabet(B),logicsymbols(S),arrows(#),theregisteredtrademark symbol(Q) andso on.
Each emulat~onhas symbol sets
Yourlaserprinterworksby emulatingor followingcommandsdeveloped originallyforotherprinters.OneoftheStarLaserPrinter8’sadvantagesis thatitoffersyouachoiceofseveralbuilt-insymbolsetsforeachfontineach emulation.
TheactualEX-800,PropnnterandDiabloprintersdon’tusesymbolsetsto produceinternationalaccentedcharactersandspecialsymbols.Instead,the EX-800 and Propnnter let you define which charactersyou want with parameter settings, and the Diablo lets you change pnntwhcels. Both approachesproducemuchthesameeffectasswitchingsymbolsets,how­ever,so we~llstickto thissingleconceptthroughoutthismanual.
WhenyourStarLaserPrinter8 isemulatingtheHPLaserJetH, thenormal default’symbol set is the Roman-8set. Roman-8includesall the usual keyboardcharacters,numbersandsymbolsinASCII,plusaccentedforeign­languagecharactersandspecialsymbols(butnothingforlinedrawing).
Tocomplementthese, in theProprinteremulationyourStarLaserPrinter8
offerstwoseparateIBMsymbolsets.Theseincludestandardline-drawing andmathematicalsymbolsalongwithforeigncharacters.Thatmakesthe StarLaserPnntcr8agoodmatchforhundredsofwordprocessingandother
programs that expect these symbols, which most font designemomit
(especiallytheIBMHappyFace).
42
I
The EpsonEX-800emulationis reallyversatile.Itlets you havebothof
thoseIBMsymbolsetsplusEpson’sownstandardsymbolset.ThisEpson symbolset isunusual:itcontainsbothuprightanditaliccharacters in the same set. You may also choose from symbolsets for all the countries mentionedabove,plusaseconduniquesetforeachof DenmarkandSpain.
Withthe Diabloemulation,Roman-8isthe normalsymbol set.
Default font attributes
Whenyoupoweronyourprinterandchooseanemulation,theinternalfonts startoffwithdefaultattributeswhichyoucanchangeasneeded.Thedefault symbolsetsdependon theemulation:inLaserJetII andDiablomodesthe defaultisRoman-8,inProprintermodeit’sIBMSet1,andinEpsonEX-800 modeit’sEpsonStd USA.
Besidesthese,allinternalfontsdefaulttoportraitorientation,uprightstyle (notitalics)andmediumboldness.Thetablebelowshowsthcirotherdefault attributes:
Typeface Spacing
Pitch Font height
Courier
monospaced 10
12point
PrestigeElite monospaced 12
10point
TmsRomn proportional
10point
LinePrinter monospaced
16.6
8.5point
Technically,youcanuseanyofthe StarLaserPrinter8’sresidentfontswhen
yousendcommandsemulatingaparticularprinter.Buteachemulationonly
printsproperlywiththefontsdesignedforit.Furthermore,youcanonlyuse
symbolsets, or arrangementsof those fonts, which that emulationcan handle.So be awarethat, if you try usingfonts otherthan those recom­mended for a particularemulation,you will usually get printing in the emulation’sdefaultfont.
If youwanta characterthat’snotinthefontyou’reusing,don’thesitateto grabit. JustsendtheEscapesequencesthatselectyourdesiredsymbolset, printwithit, thengobackto youroriginalfont.
43
MANAGING FONTS
Youcan sccwhichfontsarecuncntlyselectedon yourStarLaserPrinter8 byprintinga status sheetinofflinemode,asmentionedatthebeginningof thischapter.AnotherTESTmodemenuitem,describedintheStar Luser­Printer8 OperationsManual,alsoletsyouprintout a listof all thefonts
availableon theprinterat anygivenmoment.
Selectingfonts
Most popular software packages,particularlyword processors,let you choosefontsfromwithintheprogram.Theysendtheappropriatecommands to theprinterandyoudon’tneedto understandhowtheydo it.A4uhiilfate uscspitchto identifydifferentfonts,forexample,whileWordPerfect
uses
printformats.Thepointis,youmaynotevenhaveto worryaboutselecting whichfontto use.
Butnotallpackagesdothejob foryou. If youarcin thissituation,youcan selectanyfontattnbutc mentionedabove,eitherfromthe frontpanelor by sendingan Escape sequencecommandinoneof theemulationmodes.
Ifyouuscthefrontpanelinprogrammode,you’llscctheseattnbutcsunder theFontAttnbutcs levelof theEMULATIONAttributes menu.Just pressthe
NEXT buttonto get to the fontattnbutcyou wantto set, press
ENTER togettoitspossiblevalues,pressNEXT toscanthroughthem,and
finallypress
ENTER to slapin thevalueyouwant.
Theproceduresforselectinga fontfroma computerprogramisa bitmore complicated,anddependson whichemulationmodeyou areusing.These
fontselectionmethodsaredetailedinthenextfourchapters.
Hints:Desktoppublishingandpage design
Desktoppublishingsystcmshelp youautomateyourspecificationsfor
margins,coverdesign,typefaces,fontsizes,placementof graphicsand regular features.You build the specificationsyou want in tempfates, standardpage designsyoulatersimplycallup onyourscreenandfillin withtext.
Somcdcsktoppublishingsystems,suchasAldus’sPageMaker,arepage-
oncnted:you put each pagetogetherindividually.These are great for shorter documents,such as newsletters, brochures and letters. Other
44
systems,such as Xerox’s VenturaPublisher,are document-oriented. Thatmakesthem bettersuitedtotechnicalmanualsandlongproposalsor reportsthatgo throughmanydrafts.
Otherwaysin whichsuchsystemsdifferincludewhethertheyshowon yourscreenwhatyouwill getonpaper(code-basedprogramsdon’t),how wellthey handle pictures,andhowhard theyarc to learn.Thinkabout yourneedsbeforechoosinga desktoppublishingsystem.
A few of today’scomputerprogramslet yousee severaldifferentfont
sizesandtypefacesonyourcomputerscreen.Thatcapabilityisncccssary if youwantto seeon-screenexactlywhatwillprint on yourStarLaser­Printcr8. Desktoppublisherscallthis capabilityWYSIWYG—“what
yousee is whatyouget”. While“screenfonts”that matchthe fontsyou useon yourStar Laser-
Printer8werenotavailablewhenthis manualwaswritten,youmayeven-
tuallybeabletoget them.WYSIWYGdependsonwhatsoftwareyouarc using.
Whenyoudesignyourpages,don’tvaryfontsizejust to fittextintothe
spaceavailable.Go witha sizethat’seasyto readandbe consistent. Ncvcrbctcmptedtousealluppercaseletters.Whenyouwanttohighlight
text,switchto a boldfontor drawa boxaroundit.
Don’tbe afraidtouscwhitespace.Whitespacerclicvcscyefatigueand
looksmoreattractive.
45
I
Optional fonts
ManyoptionalfontsavailableforyourStarLaserPrinter8 complementits internalfonts.Thesecangive youmorevarietyinsymbolsets,spacing,font height,styleand strokeweight.To yourCourierorTmsRomn fonts,for example,youmightadditalicsandbold,legalormathsymbolsets,andsizes rangingfrom7 to 14points.
Optionalfonts offerdifferenttypefacestoo.AskyourStarMicronicsdealer aboutcartridgesordisksforthefollowing:
Helvet linedrawingfonts LetterGothic presentationfonts
Barcodes opticalcharacter~ader fonts
universalproductcode
Using cartridge fonts
To gainaccessto afonton acartridge:
1)presstheON LINE buttonto puttheprinteroffline,
2) slidethecartridgeyouwantintooneofthecartridgeslotsonthefront of theprinter,
3)pressthe ON LINE buttonto puttheprinterbackonline,
4) useeitherthefrontpanelmenuoracommandfromyourcomputerto selectthe fontyouwant(explainedfor eachemulationin following chapters).
Note: Do notinsertorpullcartridgesoutoftheprinterwhiletheprinteris
online. Youcan use fontsfrombothcartridgeslotswithinonedocument. A coupleof intcrcslingnotesaboutdefaultcartridgefonts:First, say you
haveselcctcdonthefrontpanel menua cartridgefontasyourdefaultfont. Lateryouturnofftheprinter.Ifyouslipthecartridgebackinbeforeyouturn on theprinteragain,thatfontwillstillbeyourdefaultfont.
Second,somecartridgescontaintheirowndefaultfont.Thatmeansassoon as you slidesuch a cartridgeintotheprinter,thatcartridge’sdefaultfont becomes the printer’s new default font automatically.To change the printer’sdefaultfromthatonthecartridgeyoumustselectanotherfontfrom the frontpanel.
46
How to download fonts
To downloadfontsfromcomputerdiskyou’llneedmomthana small64K microcomputer.Werecommendatleasta 512Kcomputerwithacoupleof diskdrives(aharddiskis better).
Many commercialfont-managementprogramsare now on the market,
including Insight Development’sL.userControl,Blaha Software’s Hot
Lead, SoftCraft’sLuserFonts,and the PCLprinter driverin Microsoft’s
Windows.Theseutilityprogramshelp you downloadfonts,then let you
accessthefontsautomaticallyfromyourwordprocessororotherprograms. Mostfont files on disk that youbuy to downloadinto your printerhave
Escapesequencesrightin thefile,whichsimplifytheprocess.Usuallyall youhaveto do is copy the file from yourcomputerinto yourprinter(in LaserJet11modeyoumustassignafontIDnumberfirst).Ifyoudownload fontswiththe MS-DOS COPYutility,makesuretouse theCOPY/Boption. Thatwillkeepyour computerfrom“interpreting”thedatayousend,which sometimesproducesbadlyshapedcharacters.
OK,let’slookat a coupleof examples.
Downloading a font: example one
Exampleoncis fora computerrunningjust MS-DOS. Sayyou’veboughtHewlett-Packard’sCenturySchoolbookfontsandwant
to downloadtheregular(upright),italicsandboldfacecharacters.The HP disk Iabels for each tile are CN1OORPN.R8P,CNIOOIPN.R8Pand CN1OOBPN.R8P.Incaseyou’reinterested,that’sHP’scodefor CeNtury,
100dccipoints,Regular(orItalicor Bold),ProportioNal,Roman-8symbol
set,Portrait. One of the disks you get also contains a batch tile named
DOWNLOAD.BAT.To load the regularuprightfont you makesure the printerisonline, then afteryourcomputer’sA>promptyoutype:
DOWNLOADCN1OORPN.R8P
WhentheprogramasksforthefontIDnumberyoukeyinanumberbetween Oand32767.ThenwhentheprogramaskswhetheryouwantLhefontstored permanentlyor temporarilyyou type either P or T (a tcmporary font disappearsif youpresstheprinter’sRESET button).Finallytheprogram asksif youwantto printa sampleof thefontandyoureplyY or N forycs or no.
47
I
Youthendo thesamefortheitalicsandboldfacefiles,forexampletyping fortheitalicsfont:
DOWNLOADCN1OOIPN.R8P
Thepromptswillbethesame,butyouhavetoremcmbertouscdifferentfont
IDnumbersfortheupright, italicandboldfacefonts.
Downloading a font: example two
Exampletwo is for a computerrunning AldusCorporation’sPageMaker desktoppublishingprogramwithMicrosoftWindows.
PageMaker providesa print dnvcr called HPPCL.DRV,and a program calledPCLPFM.EXEwhichcrcatcsthedatait needstoprintagivenfont. TocreatefontdataforyourCenturySchoolbookfonts,attheA>promptyou type:
PCLPFMCNIOO*.R8P
Theastc&k, a“wildcardcharacter,”indicatesthatPCLPFMisto createa datatileforallthreefonts—regular,italicsandbold.Theprogramasksif
youwanttocreateafilecalledAPPNDWIN.INItoappendintotheWindows fontmenutile:typeY foryes.
AfterPCLPFMhasmade thefontdatafile,withyourwordprocessoropen theWindowsfilecalled WIN.INIandkeyinthefontdefaultsyouwantto
apply. At the section refcrnng to the HPPCLprinter driver, insert the
APPNDWIN.INIfileyoucrcatcdearlier. That’sit!Fromnowon yourCenturySchoolbookfontswillappearon the
print menusof all yourWindowsapplications. Withbothexamples, how youusc theformdependson yourapplications
software.As youknow,sendingcommandsto changefontswillprobably requiresomeexperimenting:bepatient.Thesecommandsaredescribedin thefollowingfourchapters.
The process of downloading a font you’vedesignedyourself is not so
straightforward.AsyoucanonlydothisinHPLaserJet11mode,creatingand
downloadingfonts is dcscribcdfurtherin chapter4.
48
Hints: Managing memory
.
.
.
.
Piintingfancy stuffcanbequitecumbersomeforyourprinter.Youtrade offfancinessagainstspeed:ifyouoptforfewerflourishes,yougive your printerbreathingroom in memory.And that rewardsyou with faster output.Anyof thefollowingwillslowdownyourlaserprinter:
- textover20points,
- lotsof linesorpatterns,
- graphics,
- macros,
-justifiedtext. YoumaychoosetoaddanoptionalRAMboardtoyourStarLaserPnnler
8 if youneedto downloadmanyfonts. Altcmatively,consider either a softwareor hardwareprint
spooler if
printingholdsupyourcomputermorcthanyou’dlike.Aspoolerprovides
a separatetemporarymcmory space that holds the documents10bc
pnntcd,andis particularlyhandyin a multi-usersystem.
Some page makeup programs automaticallydownload each font as needed,thenflushthatfontfromprintermemorytomakeroomfor the next font.This approachcan makegood senseif you’resharingyour printerwith otherpeoplein a computernetwork.It keepsthe pnntcr’s
RAMfrombecomingoverloaded.However,thedownloadingtimecan
sigriificantlyslowdownyourprinter’sthroughput.
Moretypically,youwilldownloadafontinthemorning(perhapswiththe MS-DOSCOPYcommand)beforeyou printyourfirstdocument,and
that font will then stay in the printer’smemory.If you use a single
downloadedfont(or macro)throughoutthe day, you will findit most
efficientto keepit in thelaserprinter’smemory.Youdefinitelyshould
downloadfontsthis wayifyouuseaprintspooler.Ifyou’reinanc[work,
however,makesureyoudon’tdownloadduplicatefonts.
Howmanydownloadablefontscanyouhave inonedocument?That’snot
so easyto answer.Mostof yourlaserprinter’smemoryisnot available
for storingfonts,becauseit hasto storeeachpagebeforeprintingit, as
WC1las anymacrosor overlaysyouareusing.
49
I
To see how much memoryis availablefor extra fonts,put the printer offlineandpress theTESTbuttontoprintastatussheet.Yourprinterwill beepand showa front-panelmessageif youtryto overloaditsmemory by downloadingtoomanyfonts.It then willcontinueprintingwiththe closestavailablefontto thatrequested.
Asageneralrule,youcanincludeatleastadozendowrdoadablcfontsin adocument.Addedtotheinternalfonts,thatshouldbeplenty—itdoesn’t
make good design sense to mix many typefaces.A telltale sign of
amateurishlaserprintingis toomanyfontsin onedocument.
To keep a widevarietyof extra fontsin memory, however,manyStar LascrPrintcr8users(especiallythosesharingthe printeron anetwork) preferto addtheoptionalboardwiththesecondmegabyteof RAM.
TheHewlett-PackardLaserJetseriesIIisanearlierkindoflaserprinterthan
yourStarLaserPrinter8.Youshouldhavenotroublerunningmostpopular softwarepackagesinHPLaserJetIImode,asthoseprogramslikelycansend LaserJet11commands.
BecausetheLaserJetII
isalaserprinter,though,itscommandscangiveyou
morecontroloveryourStarLaserPrinter8 thanis possiblewiththeother built-incommand sets.Youwillprobablyusethisemulation’scommands morethanthe others. Recognizingthatreality,we’veputmoreexamples intothischapter.
Wefollowthe samesequenceinthischapteras wedid in Chapter2: first
some printer managementand page setup commands,then we’ll cover commandsthatpoisethelaser“pen” overthepaper, nextwe’llpick afont,
andfinallywe’lllaydownourwordsandpictures. Attheendofthechapterwedescribehowtocreateanduseyourownfonts,
andalsohow to sav~timeby writingcommand
HP LASERJET II COMMANDS
What do LaserJet
II commands
macros.
look like?
The LaserJet11emulationmodeincludesa dozencommoncontrolcodes (suchas<CR>forcarnagereturns)andsingle-characterEscapesequences (such as cESD E for resettingtheprinter).But all the other LaserJetII emulationcommandsyoucan‘sendyourStarLaserPrinter8looklikethis:
<ESC>ccn C
in whichthecc prefixis a symbolor two showingthegeneralcategoryof commandstowhichthisonebelongs,n issomevariableyouwanttousein thiscommand,andC is the specificcommandyouwantperformed.
51
I
TwoimportantdetailsmakeLaserJetIIcommandsdifferentfromtheother
printeremulations.First,all Escapesequencesendwitha capitalletter.If youdon’tmake thelastcharacteruppercase,yourprinterwon’tknowwhen
theEscapesequenceendsandwilltreatfollowingcharactersas partof the
samecommand. Second,inLaserJetIIcommandseachnumbcrorcharacteryouputafter the
cESC>codeisanactualASCIIsymbol.Withtheothcremulations,usually
any number you put after an <ESC>code identifiesa characterin that
positionin the ASCIItable.
Forexample,theLaserJet11commandthatsetstherightmargintocolumn
65 is:
<ESC>&a 65M
whichyouwouldcodein BASICas:
10 LPRINTCHR$(
27 ) ; “&a65M”
That commandsends your printer the symbols “6” and “5,” which its LaserJet11programinterpretsasthecolumnnumber.
Howcvcrifyou wereusingEpsonEX-800emulation,the commandthatsets therightmarginlooks likethis:
<ESC>Q 65
whichin BASICyouwouldwritethisway:
iO LPRINTCHR$(27) ;“Q”;CHR$(65)
Thatcommandsendsthepnntcrwhatevercharacterhappenstobein ASCII
position65. Yourprinter’sEpsonProgram,though,interpretsit onlyas a
decimalnumber meaningcolumn65.
Combining Escape sequences
Laterin thischapterwedescribeone waytoselect a font,byjust specifying
whatfontattributesyouwant,suchasboldorproportionalspacing.Ifyou selectafontbyspecifyingeveryoneofitsattributes,youcanbecertainthat you’reselectingsuccessfully.Butitcouldmeanafairbitofrepetitivetyping
eachtimeyouchoose a font.Thisappliesto othercommandstoo,notjust
fontselection.
52
Here’s a way you can save yourself a few keystrokes:type in those commandsthathavethe samecommand-categoryprefix asjust one long Escapescquencc.To combinecommandsthis way, typethe <ESC>and command-categoryprefixjust once,andcapitalizeonlythelastcommand character.
Forexample,todefinethestyle,weightandcharacterfacefortheprimary font,youmightsendthesecommand:
<ESC>
(S 1S
<ESC>
(S 7B
<ESC>
(S 5T
whichwouldproduceitalicsboklface
TmsRomn. But thissinglecommand
doesthe samething,allwithoncblow:
<ESC>
(S IS 7b ST
CONTROLLING THE PRINTER
Self test
Youcan checkhow yourLaserPrinter8 is printingandhavea look at its
parametersettingsby sendingthisSelfTestcommand:
<ESC>
Z
Noticethatthezislowercase;thisistheonlyLaserJetIIcommandthatends with~smallletter.Afteryousenda SelfTestcommand,thepnntcrfinishes printinganypagesleftinitsmemory.Thenonanewpageitprintsitscurrent parameters(just importantitemssuchasnumberofcopiesandfontsinuse). The printer finishes off the page with a continuousdisplay of all the charactersin itsdefaultfont.
Theprinteralsoquicklychecksitsinterface.Assumingit findsno trouble, theprinter is thenreadyforyour nextpage.If theprinterdetectsaproblcm it shows a front panel message, which you can look up in your Star
LaserPrinter8 OperationsManual.
53
Set number of copies
Youcan printup to 99 copiesof eachof thepagesyou sendto theprinter. Youmaysendthiscommandanywherewithinthetextonapage;itwillstay in effect for that and all subsequentpages until you send anothersuch command:
<ESC>&!n X
Allyouhaveto do is changethe n signinthiscommandto thenumberof pagesyouwant.(The!characterafterthe&is a lowercaseL.)
Set feed se/ection
Onethingyoucandoisprintdirectlyonenvelopesaswellasregularpaper. Youusethis FeedSelectcommandtotellyour printertoselecteitherapage fromthepapertray,or a pageorenvelopefromthemanualfeed slot:
<ESC>&tn H
For n enteroneof thenumbersfromthistable:
n
FEEDSELECTED
O(zero)theprinteronlyejects the currentpage
1(one) thepnntertakes itsnextpagefmmthepapercassette(upper
cassettefor thedual-cassettetype)
2
theprintertakesa regularpagemanually 3’ theprinteracceptsan envelopeyoufeedin manually 4
theprintertakes itsnextpagefromthelowerpapercassette 6 theprinteracceptsanenvelopefromtheoptionalenvelope
feeder
Shouldan unprintedpagebe in theprinter’smemorywhenyougivethis command,thepaperforthatpagewill feedfromwhereyou’veindicated.
Thereforeyou can makethis thelast commandon a page.The new feed
settingstaysin operationuntilyouchangeit.
Reset
Mostsoftwarepackagesautomaticallyresettheprintertothe initialdefaults beforestartingaprintjob.It’sagoodideaforyoutofollowthesamepractice,
just to makesureyougetthesettingsyouwant.
54
Whenyouwanttosetallyourlaserprinter’sparametersbacktotheirinitial defaultvalues(somepeoplecall this “initializing”theprinter),send this command:
<ESC>E
Theprinterwillfinishprintinganypagesleftinitsmemorybeforeresetting the parametem.Resetting clears unneededtemporary fonts from your
printer’smemory.Anypermanentfontsor macrosyouhavedownloaded, however,will stillbethereafteryousendareset command.Permanentand temporaryfonts are describedat the end of this chapter’s“Controlling Fonts”section.
Example: Printer controls
Let’sseewhathappenswhenweputthesecommandstogether.Sayyouhave
just turnedon yourlaserprinterandselectedLaserJet11emulationonthe
frontpanel.Whathappenswhenyousendthefollowingcommandstoyour printer?
<ESC>
Z
<ESC>E <ESC>&t’2h2X
As a BASICprogramthesewouldlook like this:
<NEW
10
WIDTH “LPT1 : “ ,255
20 LPRINT CHR$( 27 ) ; “
Z “
30 LPRINTCHR$(27) ; “E” 40 LPRINTCHR$(27) ;“&12h2X” RUN
First, if it is workingproperlythe printerprintsa test print with all the charactersin itsdefaultfontforthisemulation(Courier).
Next theprintersetsallitsparametervalues—includingfeedselectionand
numberof copies—to theirinitialsettings.
Thelastcommanddoestwothings:ittellstheprintertoacceptpaperyouwill
feedin yourself,andtoprinteachpagetwotimes.Thisis handywhenyou wanttwo copiesof a letteron preprintedletterhead.
55
I
Youcan now sendyourletterfromyourwordprocessingprogram to the printerandfeedinthosepages.Whenyou’redone,youmaywanttosendthe <ESC>E commandonemoretime.
PAGE ORIENTATION
Youmightreasonablythink of pageorientationasa pageformattingissue. Toprintwordswidthwiseonapage,however,eachletterineffecthastolie onitsback.Soorientationisactuallyafontattribute,and is treatedassuch lateron in thischapter.
Page Length
Thepapertrayyouhaveinstalledsetsthedefaultpagesize for yourlaser printer.Whenyouwantadifferentsize,andwhenyouchangethetray,you’ll need to reset that page size. You shouldalwayschangethe page length be~oreyou send text for printing.The Page Length commandsets the numberoflines thatcanprint on apage(linesperinchtimesthenumberof inches).
ThePageLengthcommandformatis:
<ESC>&/n P
wheren isthenumberoftextlinesonthepage;itcanbeanynumberbetween 5 and 128.
Thedefaultnumberof linesisthelengthof thepapertraytimes6 linesper inch.For 11-inchlener-sizepaperthatworksoutto66lines(that’salsothe defaultwhenyouhaven’tputin a tray).
If you don’t want the defaultlength,you shouldsend the Page Length commandbejbreyousendtext forpnnting.Thetablebelowshouldhelpyou
picktheright numberoflines.Decidewhichorientationandpapersizeyou want,thenuscthen underyourpreferredlines/inch:
If you havesetthe paperfeederfromthe frontpanelto “AUTOSELEC-
TION”,a“selectpagelength”command(<ESO&tn P) willautomatically
selectthecassettewhichcontainsthepaperselectedbythecommand.Ifno cassettecurrentlycontainstherightsizeof paper,thedisplaywillaskyou to inserttheappropriatesizeof paper.
56
1
ORIENTATIONPAPERSIZE
@
6 LINESilNCH n @ 8 LINES/tNCH
Portrait Portrait Portrait Portrait Landscape Landscape Landscape Landscape
Executive
Letter
A4 Legat Executive
Letter
A4
Legat
60 66
70
84 43 51 49
*
80 88
93
112 58 68 66 58
* Printinglandscapesonlegalpaperis trickier.First seton portraitmode
andsendthecommand<ESC>&t’84Pandthenchangethe orientationto landscape.
Anexample:Sayyouwanttomanuallyprintlegal-sizepagesateightlines perinch.The followingcommandscombinemanualfeedingwiththatpage length:
<ESC>&t’2h112P
Ifyourcommandspecifiesapagelengthdifferentthanthepaperinthetray,
theprinterwill go offlineanddisplayamessageasking for thepropertray.
Afteryouchangethetray,presstheON LINE button to restarttheprinter.
Itdoesn’thurttoprintshort pagesonlongpaper.If youinadvertentlyprint
a Iegal:sizepageontoexecutiveor letter-sizepaper,theprinterwillscroll thatpageacrosstwosheets.
Also,thePageLengthcommandputsallmarginsbacktotheirdefaults.So
after you send it, check whetheryou have to send any of the following margin-settingcommands.
Side margins
Marginsettingsdefinethatpart.ofthepageonwhichtheprintercanprint.
Yousetsidemargins to particularcoh.wv.zs.The widthof acolumndiffers
foreachfont,dependingonits pitch.Ten-pitchCourier,forexample,puts
column30 threeinchesfromtheleftedgeof thepage(columnO).But 12­pitchPrestigeEliteputscolumn30just twoanda halfinchesin.
57
Youcannotsettheleft marginfurtheroverthantherightmargin.Usethe followingcommandtosettheleftmargin,settingntobethecolumnnumber
whereyouwanttheleftmargintostart:
<ESC>&a n L
Similarly,tosettherightmargin,yousendIhiscommandwithyourdesired columnnurnbcr:
<ESC>&a n M
Ifyouwanttoputbothleftandright marginsbacktotheprinter’sprintable limits—inotherwords,to“clear”thesidemargins—sendthiscommand:
<ESC> 9
Top margin
Vertically,theLaserPrinter8confinesitsprintingtoits“textlength,”which shouldalwaysbelessthanitspage length.Botharemeasuredinlines.You canchangethemeaningof a“line” withline-spacingcommandsdescribed laterin thischapter.
Whenyou set the top marginthough,it doesnotchange,evenwhenyou
changethe definitionof a line.You can usethis commandto set the top marginanytime.Justbcawarethat ifthecurrentprintpositionisbelowyour margin,you’llhavetomovetheprintpositionbackup.Naturally,youhave to keepyourtop margininsidethepage-lengthlimit.
Usethiscommandtosetthetopmargin,settingn tobcthenumberoflines down from the top of the page thatyou wantleft blankbeforeyou start printing:
<ESC>&t’nE
Notethatthecharacterfollowingthe“&”is a lowercase“L”.
Text length and the bottom margin
By default, the LaserPrinter8 automaticallygives you top and bottom margins of the same size. So you only need to send the Text Length commandwhenyouwantdifferenttop andbottommargins.
Ifyouwantadifferentbottommargin,firstdecidehowmanytextlineswill producethe marginyou want. Checkthatthey won’tproducea bottom marginlowerthan thepagelength. Then sendthe followingText Length command,enteringforn yourdesirednumberof lines:
58
<ESC>&t’tzF
ThePageLength,TopMarginandTextLengthcommandsthereforework togetherto setthebottommargin:
bottommargin= pagelength - (topmargin+ textlength). Thebottommarginiscalledthe“perforationregion”withprintemthatuse
continuousforms.Younormallywanttoskiptheperforationsbetweenthe continuouspages,but sometimesyoudon’t(forexamplewhenyou print
labels). Thoughyoulikely won’toftenwanttodo it,theStarLaserPrinter8willlet
youcompletelyignorethebottommargintoo.If youchoosetoprintbelow thebottommargin,rememberthatyoumightlosewordsorgraphicsinthe unprintableregionattheedgeof thepage.Thecommandlookslikethis:
<ESC>&tn L
Ifyouwantto allowprintingbelowthebottommargin,forn enterO(zero). Butif you wantto forbidprintingbelowthe margin,whichis thedefault,
enter 1(one). In Laserjetmode,you can tell the printer whetheryou want to print in
simplexorduplexmode,andalsotodefineshort-orlong-egeprinting.The commandtodo thisis:
<ESC>&/’/zS
(notethatthe characterfollowingthe“&”is a lowercase“L”),andn is an ASCIInumberwhichmaybeeither’’O”,“l’’or’’2”.Ifnis“O”,simplexmode willbeselectedforthenextpagetobeprinted.Ifnis”1”or“2”,thenduplex modewillbeselectedforthenextpage —” 1“selectinglong-edgebinding, and“2” selectingshort-edgebinding(regardlessofpageorientation).Any othervalueswillbeignored.
59
Page Side Selection (DX type only)
The followingcommandallowsyouto selecton what side of a pagethe
followingdatawillbeprinted-whentheprinteris induplexmode:
<ESC>&a n G
wherenisanASCIIvaluefrom“O”to“3”.If nis“O”,thefollowingdata will
beprinted on thenextsideafterthe currentside(ifthecurrentsideisa face
side,thenextsidewillbe aback,andviceversa).If n is” l“, thenextside willautomaticallybecomea faceside(ifthecurrentsideisa faceside,the currentpagewillbeejectedwiththebacksideblank).If n is setto “2”,the nextsidewillautomaticallybecomeabackside(ifthecurrentsideisaback side,thenextpagewillbeprintedwiththefacesideblank).
Example: Page formatting
OK,let’s haveago atformattingapage.Thepictureofthepagewewantis
just below.Theactual widthofthetextonthepagedependson whichfont
weuse.Let’splanonusingour 16.66-pitchLinePrinterfontateightlines perinch.
column10
column70
top margin= 8 lines
texr length.
100lines
bonom
margin
4 lines
{
i
1
,,,,
,,.,
\
I
r
pegs length = 112 ines
\ cccaeiordfootnotes
Asitprints,wealsowanttopermittheoccasionalone-linefootnotebelow thenormalbottommargin.Andwhenwe’refinishedprinting,let’sresetthe sidemarginssowe canswitchto ourusualfontwidth.
60
Hereare thecommandsthatwillproducethisformatforus:
<ESC>&tl 12P <ESC>&a IOt’70M <ESC>&t’8eIOOfOL
(We’llsendourpagehere.) <ESC>9
MOVING THE PRINT POSITION
Many ways to move
The LaserPrinter8 providesexcellentcontrolover the print position—
whereyoupoiseyourlaser“pen”.Horizontally,youcansendbackspaceand carriagereturncommands.Vertically,youcanmovetheprintpositiondown thepagebyprintingsomanylinesperinch,orbysendingline-feedandhalf line-feedcommands.Youcanmovehorizontallyorverticallytotabsettings as well.
Thosearen’tall.Youcan alsotelltheStarLaserPnntcr8 to moveitsprint position,eitherverticallyor horizontally,in incrementsof:
1/10,1/12or 3/50inch(pitchsettings), 1/48or 1/120inch(lineor columndefinitions),
<1/300inch(dots),
1/720inch(tenths of a point). Allthesecommandsaredescribedbelow. Onehintabout movingtheprintposition:youcanconfuseyourselftrying
to usc more than two differentunits duringthe same session.So decide beforehandhowpreciseyouneed to be in movingthe printposition,not
forgettinganygraphicsyouwantto include.Thenstickto theunit(s)you
choose.
Lines per inch
Thisverticalline-spacingcommandgivesyoumoreoptionsthanjustthesix
oreight linesperinchofearlyprinters.Usethiscommandto sethowmany linesyouwantin eachverticalinchof yourpage:
<ESC>&tn D
61
Forn youenterthenumberoflinesperinchyouwant—anyof: 1,2,3,4, 6,8, 12,16,24or48. If you enteranumberotherthanthesetheprinterwill ignorethecommand.
Defining the space and column
Beforeyouuseprintpositioningcommands,youfirstmaywantto change thedefinitionsofthelineorspace(sometimescalled“verticalandhorizontal motionindexes,”VMIandHMI).Thesedefinitionsdon’tactuallymovethe print position.Instead,they definetwo basic units you can use in print positioncommands.
What’simportantaboutthespaceisthatitdefineshowfartheprintposition travelsforeverycharacteryouprint(exceptforproportionallyspacedtext). Thespacecanalsobethoughtofasthewidthofaverticalprintcolumn.One columnwidthisthewidthofthespacecharacterinthecurrentfont,nomatter whetherit is monospacedorproportionallyspaced.
Occasionallyyou maywantto changespacewidthto overridethecurrent pitchsetting. Let’slookatanexample.Thespacewidthcomesin unitsof
l/120thofaninch,andtheCourierfontcanprintIOcharacterspcrinch.Each charactercovers a tenth— 12/120the of an inch, so that font’sdefault spacewidthis 12units.If we changeits spacewidthto 6, each character wouldhalf-overlaptheonebeforeit.
If youareusing<S1>and<SO>toshiftbetweenaprimaryandsecondary font,it’sa goodideato changethespacewidthaftereveryshift.
To changethe spacewidthyousendthiscommand:
<ESC>&k n H
inwhich fornyoucanenteranumberfromO(zero)to840. AwidthofOwill printcharactersontopof eachother;a widthof 840willprintthemseven inchesaprt.
Defining line depth
Thelinedepth(sometimescalledthe“verticalmotionindex”)specifieshow fardownapagethe printpositionwillmoveforeachlinefeed.Youprobably won’tusethelinedepthasmuchaslines-per-inch.Line depthcanbemore precisebutitisn’taseasytocalculate.Thelinedepthcomesinmultiplesof
l/48thof an inch.
Theimportantfactaboutthelinedepthisthatwhenyouchangeit youare
62
changingtheactual meaningof a “line”.
Whenyouincreasethelinedepth youeffectivelydecreasethenumberoflinesperinch,andincreasethepage length.
Thecommandyousendtosetthelinedepthlookslikethis:
<ESC>&?nC
(notethatthecharacterafterthe “&”isalower-case“L”)inwhichfornyou canenteranumberfromOto336.Ifn iszero,lineswillbeprintedontopof eachother,andif 336,theywillbeprinted7 inchesapart.
Moving the PRINT position horizontally
Youcan usethreedifferentunitsto movethe print positionhorizontally: columns(space-widths),dots(eachl/300thofaninch),ortenthsofapoint (decipoints).Bothcolumnsanddecipointscanbe fractionsto twodecimal places, such as 45.75 dccipoints—which provides a great degree of accuracyfor graphicsapplications.
Moreover,foreachoftheseyoucanmovetheprintpositionhorizontallyin twoways.Youcanmove absolutelyfromtheleftedgeofthepage.Oryou canmoverelatively,awayfromthecurrentprintposition.Toshowyouwant tomove awayfromthecurrentprintposition,youputaplus(+)orminus(–) signbeforethenumberof unitsyouwanttomove.
Ifyou send acommandthatwouldputtheprint positionoutsideeitherside margin,theLaserPrinter8willletyoudojustthat.However,youcan’tsend theprint positionfurtherthanits printablelimitsattheedgesofthe page.
Horizontal moves: by columns, decipoints and
dots
To move the print positionhorizontallya numberof columns,send the command:
<ESC>&a n C
inwhichfornyouenterthenumberofcolumnsyouwishto movetheprint position. So to movetocolumn45yousendthecommand:
<ESC>&a45C
Buttomove45 columnstotherightofthecurrentprintposition,yousend:
<ESC>&a+45C
63
Tomove theprintpositionhorizontallyacertainnumbcrofdecipoints,send thecommand:
<ESC>&an H
inwhich fornyouenterthenumberofdecipointsyouwishtomovetheprint position(precededbya+or– signifyouwanttomoveawayfromthecurrent position).
Youcanmovetheprintpositionhorizontallybydotsboth waystoo.Youcan
moveanumberofdotsawayfromtheleftedgeofthepage,oryoucanmove
a numberof dotsawayfromthecurrentprintposition.
To movehorizontallythisway,sendthecommand:
<ESC>*pn X
in whichforn youputeitherthenumberofdotsawayfromthepageedge, or (precededby a + or – sign)the relativenumberof dotsaway fromthe currentposition.
Soto move20dotsfromtheleftedgeyousendthiscommand:
<ESC>*p20X
Andtomove20dotsto theleftof thecurrentpositionyousend:
<ESC>*p–20X
Youcanalsomovethecursor8columnsatatimehorizontallybyuscofthe horizontaltab command.Simplysendatabcharacter:
<HT>
to do this.Reversetabbingisnotpossible.
Moving the print position vertically
Youcan uscsimilarunitstomovetheprintpositionvertically:lines,dots, or decipoints.Bothlines and decipointscan be fractionsto two decimal places.
Youcanalsomovetheprintpositionabsolutelydownfromthetopedgeof thepage,orrelatively,awayfromthecurrentprintposition.Again,toshow youwant to moveawayfromthecurrentprintpositionyouputaplus(+)or
minus(–) signbeforethenumberofunitsyouwantto move.
64
The importantdifferenceaboutmovingverticallyup or down is whatthe printerdoeswhentheprintpositionhitsthepagetopor bottom.Ifyoutry to moveabovethetop margin,theprintposition staysrightat themargin. Andif youmovetheprintpositiondownoffthepage,thepageisejectedand printingcontinuesonthenextpage.
Verticalmoves: by lines, decipoints and dots
To movethe print position verticallya certainnumberof lines,send the command:
<ESC>&an R
in whichfor n youenterthe numberof lines you wishto movethe print position.Sotomoveto line45,measuredfromthctopedgcofthe page,you sendthe command:
<ESC>&a45R
Butto move45 linesdownfromthecurrentprintposition,yousend:
<ESC>&a+45C
Tomovetheprintpositionverticallyacertainnumbcrofdecipoints,sendthe command:
<ESC>&a n V
inwhichfornyou enterthenumberofdccipointsyouwishtomovetheprint positiondown(orprecedethe numberwitha +or– signifyouwanttomove up or downfromthecurrentposition).
Finally,youcanmoveanumberofdotsdownfromthetopedgeofthepage, oryoucanmoveanumberofdotsupordownfromthe currentprintposition. Tomovetheprintpositionupordownanabsoluteorrelativenumberofdots, sendthe command:
<ESC>*pn Y
inwhichfornyouputeithcrtheabsolutenumberofdotsdown,or(preccdcd by a + or – sign)the relativenumber of dots up or down fromthecurrent position.
Soto move20 dotsdownyousendthecommand:
<ESC>*p20Y
65
I
Andto move20dotsup yousend:
<ESC>*p–20Y
Combining move commands
Onethingaboutmovingtheprint positionwiththeabovecommandsisthat
theylet youthinkof yourpagein termsof Cartesiancoordinates. Allwemeanisthatyoucancombinehorizontalandverticalmovementsthat
usethesameunits.If yousendthiscommand,
<ESC>*p40x20Y
theprintpositionwillmovetoa spot40 dotsfromtheleftedgeofthepage and20 dotsdownfromthetopedge.Andif yousendthisone:
<ESC>&a+40h–20V
theprintpositionwillmoveright40 decipointsandup20 decipoints.
Backspace
TheBackspacecontrolcodeworksexactlyasyoumightexpect:itmovesthe printpositiononecolumnto the left.
<BS>
Movingtheprint positionbackdoesnotdestroyanycharactersalreadysent. In fact, because of that, this commandcan be quite useful. It lets you supcrimpow”onecharacteroveranother.
Sayyou’wanttoindicateablankspaceastheletter
b withaslash/ through
it,anoldprogrammingsymbol.Justsendthe
bandthenfollowitwith<BS>
andtheslash,andyougetthis:~.
Carriage return
TheCarriageRctumcommandbyitselfonlymovestheprintpositionback to theleftmarginof thelineon whichitcurrentlysits:
<CR>
If youwanttheprintpositionto movedownalineaswell,senda separate Line Feed command each time, or use Define AutomaticLine Ends
(explainedbelow)to couplethesetwo controlcodes.
66
Line feeds
me
LineFeedcommandadvancestheprintpositionone linedownthepage.
Themeaningof alineis setby theLineDepthcommand. To send a linefeedjust sendthiscontrolcode:
<LF>
The Half Line Feed commandis the one you want for subscripts.This commandmovestheprint positiondownthepageonehalfthecurrentline
depth:
<ESC>=
To send a reverseHalfLineFeed,movingtheprintpositionup to let you
printa superscript,uselhiscommand:
<ESC>&a–.5 R
Form feed
Thiscommand,likethePRINTbutton,makestheprinteradvancetoa new sheetofpaper.WhenyousendthecFF>controlcodeyouarcalsotellingthe printer to print all its stored page information.Rememberto send this commandtomakesureanylastpartial pageinyourprinter’smemorygets printed:
<FF>
Define automatic line endings
Whenyou pressthe CarnageReturnkeywhat do youexpectto happen? Mostpeoplethink acomputerkeyboardshouldworklikeatypewriter,with
a CarnageReturnstartinga newlineas well.
Butcomputerprogramsdon’thavetosticktothatanalogy.Someprograms (particularlygraphicspackages)wanta CarriageReturntojust movethe printpositionbackto theleftedgeofthepage.Andtheywanta LineFeed tomovedowntoanewlinewithoutgoingbacktothebeginningoftheline.
So youcanspecifyexactlyhowyouwant<CR>,<LF>and<FF>to work withthiscommand:
<ESC>&k n G
67
For n enteroneof thenumbersfromthistable:
n
AUTOMATICCOMMAND
O(zero)cCR>,cLF> and<FF>workaccordingtotheirbasic
definitions,
1(one) <CR> willalsogenerateacLF>(butcLF> and<FF>stay
thesame),
2
cLF> or <FF>willproducea<CR>too(<CR>by itself won’tchange),
3
<CR>generatesa<LF>too,andeither<LF>or <FF> producesa<CR>.
Afteryou sendthecommand<ESC>&k2 G forexample,everytimethe printergetsa Line Feedcommanditwillmovetheprintpositiondownand overto thestartof theline.when it getsa FormFeed,theprinter willalso movetheprintpositionbacktotheleft.
Autowrap
Onenicething wegetusedtowithawordprocessingprogramisnothaving to worryabout wordsgoingpastthe right margin.Wedon’thaveto listen forthattypewriterbellatthemarginanymore.
This commanddoes pretty much the same thing your word processing programdoes.Theimportantdifferenceisthatitdoesnotwrapwords.When
youturnon Autowrap,ifyou sendtoomanycharactersfora linethelaser
pnntcrprintstheoverflowonthenextline.
IfAutowrapison,whentheprintergetsacharacterthatwouldprint beyond
therightmargin,itreturnstheprintpositionforthatcharacterbacktotheleft
andone linedown(CarnageReturnandLineFeed).
TheAutowrapcommandworkslikea toggleswitch:
<ESC>
&S m C
If for n youenterO(zero)thenthiswrap-aroundmodewillapply. Butif forn youput 1(one)thisautomaticwrappingof characterswillnot
happen.Thedefaultif youdon’tsenda commandisno wrapping. Note: Even whenAutowrapis on,the printerwillprintbeyondthe right
margin if you have sent one of the direct positioningcommands describedabove,whichmovetheprintpositionpastthemargin.
68
Also,notethatAutowrapdoesn’tmovethewholeworddownto thenext line—that’sajob for a wordprocessor,notyourlaserprinter.
Pushing and popping the print position
Thisprovidesa wonderfulwayto keeptrackoftheprintposition.it works by lettingyoukeepalistof upto 20 printpositions.
Youcan“push”thecurrentprintpositionontothetopof thelistwhenever youwant.Later,youcan“pop”offwhateverpositionisatthetopofthelist,
makingitthecurrentprintposition.
When would you want to save and restore print positionsthis way? Wheneveryouneed tointerruptwhatyou’reprintingnowtosticksomething specialontothepage.Thisismosthandywhenyouneedtojumpfromtext to graphicsandback.
Sayyou’vewrittenoneroutinethatputsthepagenumberinthesameplace on.evcrypage, and anotherthat under certaincircumstancesprintstwo heavyIincs.Youprintmcrnly alonguntilyouhaveto printthelines.You thenpushthecurrentprintpositiontoexecutetheline-printingroutine.
Butpart waythroughthatyouhitthepage-numberspot.So you pushthe printpositionagainandrunthepage-numberroutine.Thenyoucanpopthe printpositiontoprintthesecondline.Andwhenthat’sdoneyoupopitagain to returnto printingtext.
As you mightsuspect,thiscan involvefairlycomplicatedprogramming, typicallyusing the macrocommandsdescribedlaterin thischapter.
To pushorpop a printpositionyousendthiscommand:
<ESC>&f n S
For n youenterOto push(save)thecurrentprintposition,
or 1to pop(restore)thelastpositionsavedoffthe list.
Note: The last positionpushedonto the list will alwaysbe the first onc
poppedbacklater.
69
I
CONTROLLING FONTS
Font selection
The LaserJetII emulationlets you defineand selectfontsthreeways: as primary and secondaryfonts, or by font identificationnumber, or by description.We’lllookatthefirsttwowaysnow,andexplainselectingafont
by itsattributesalittlefurtheron. Howeveryouchoosetorefertofonts,rememberthatafontmustbeavailable
beforeyouselectit.Soifyouwanttoselectacartridgeordownloadedfont, youfirst haveto putin thecartridgeor downloadthe font.
Selecting primary or secondary fonts
Ofthethreeselectionmethods,youwillsavethemostprogrammingtimeby
shifting back and forth between primary and secondaryfonts. That’s
counterbalanced,though,by the factthat you oftenneed more than two
fonts.
Typically,you use primary and secondaryfonts to flip back and forth
betweentwodifferentsymbolsets—forexampleIBMsymbolsets1and2. Youcandesignateanytwofonts,whetherinternal,cartridgeordownloaded, as primaryandsecondary.
The way you show you’re talking about a primary font in an Escape
sequenceis to follow the <ESC> symbol with a left parenthesis.For example,
<ESC>
(S 10H
meansyou want yourprimaryfont pitchedat ten charactersto the inch. Typinga rightparenthesisinsteadmeansyouarereferringtothesecondary font:
<ESC>
)S 10H
Youdefinea fontasprimaryorsecondaryas youselectit.Tomakea font
yourprimaryorsecondaryfont,youusefont-descriptionEscapesequences suchas thosejust above,specifyingtheattributesyouwant.
If youdon’texplicitlyindicatewhatattributesyouwantforthe primaryor secondary font, the printerwill use the same defaultfont for both.This defaultfont’sattributesincludetheRoman-8symbolset, 10-pitchspacing,
12-pointheight,uprightstyle,mediumweight,andCouriertypeface.
70
Afteryourprimaryfont isselected,youcanchooseitforprintingbysending thisShiftIn controlcode:
<S1> Alltic textyousendafterthatcommandwillprintin theprimaryfont. Yourlaserprintershifts to thesecondaryfontwhenyousendthisShiftOut
code:
<so>
Assigning font ID numbers
ThesecondwaytodctineandselectfontsisbyusingfontIDnumbers.You maypreferthismclhodifyoufrequentlyusemanyfonts.Whilenotasshort as<S1>and<SO>,it’squickerthandescribingfontattnbutcsoverandover again.
Togive an IDnumberto aninternalorcartridgefont,youfirstmakeit the primaryfont.Thatis,you sendaleft-parenthesisEscapesequence(a font attributecommandasdescribedbelow)andtheShiftIncontrolcode.Then, to assignan ID numberto thefont,yousendthiscommand:
<ESC>*cn D For n you can enter any numberbetweenOand 32767as the font’s ID
number.(Notthatyoucanhavemorethan64fontsintheprinteratonce,even with the optionalmemory board. A printer would need an elephantine memoiyto hold32767fonts!)
Selecting downloaded fonts
TheeasiestwaytoselectamongdownloadedfontsistousefontIDnumbers. Whenyoudownloadafontyoumake the AssignFontIDcommandabove
thefirstcommandinyoursequence(see“Howtodownloadyourownfonts” laterinthischapter).Afteryou’veassignedanIDnumberto adownloaded font, you can select it as your primary font with this Select Font ID command:
<ESC>( n X in whichn is yourdesiredfont’sIDnumber. If youusemanyfontsyou’llusethatcommandtoselectamongthem.But
whatif youprefertojust use<S1>or<SO>to shiftbetweenprimaryand
71
I
secondaryfonts?YouwanttoselectadownloadedfontIDasyoursecondary font.Thisis thecommandto send:
<ESC>) n X
Font attributes
Thethirdwayto selectafontistosimplydescribewhatfontattributesyou
want.(Remember,selectingafontdoesnotmodifyafont.Youcan’tgetbold
or14-pointcharactersifyoudon’thaveaboldor 14-pointfontintheprinter.)
Inlistingtheattributesyouwant,itwillhelpyoutoprioritizethemthesame wayyourLaserPrinter8does.Yourpnnterranksthevariousattributesafont can havethisway(frommosttoleastimportant):
orientation
symbolset
spacing(proportionalor monospaced)
pitch(charactersper inch)
fontheight(inpoints)
style(italic or upright)
strokeweight(lighttobold)
typeface
The laser printer just zips down this chain of attributes one by one, eliminatingfonts thatdon’tmatchwhatyouwant,untilit getsdowntoone uniquefontthatmatches yourrequest.Iftheprintermatchesdownto,say,
styleorweightbutcangonofurther,itwillgiveyouitsclosestfonttoyour request.
And if youdon’tspecifya particularvaluefor someattribute,the printer assumesyouwantthevaluethatattributehadinthe lastfontyouspecified (orthedefaultvalueifyou’vejustturnedontheprinter).Thiscansaveyou someeffort:ifthefontyouwanthasanattributethesameasthecurrentfont, youdon’thaveto specifythatattributeagain.
Orientation
Portrait orientationprints text across the width of a page. Landscape orientationprintstextsidewaysupthelengthofa page.
The StarLaserPrinter8 ismoreflexibleaboutorientationthanmostother laser printers; it lets you simplyrotateany portraitfont to the landscape
orientationorviceversa.Tostartyouoffwhenyouchangeorientation,the printerresets all its marginsand its columnand line definitionsto their
72
defaultsettings. Whenyouwantto selecttheoppositeorientation,sendthiscommand:
<ESC>&tn O
in whichfor n youput Oto getportraitorientation,
or 1to getlandscapeorientation.
(Notice:the/characterafterthe&is a lowercaseL.)
Symbol sets: a review
Eachfontcanhavemanysymbolsets,eachbeingasubsetofallthepossible charactersof the font. These subgroupsinclude different symbols for different nationsor for lawyers or artists or mathematicians.Any two
symbol sets, moreover,may store the same symbol at a differentfont positionin theprinter’smcmory.
ThedefaultLaserJetIIemulationsymbolsetisRoman-8,whichincludesall
ASCIIcharactersplusdozensofaccentedletters.Butyoucanuseanyofthe sets shown below. Technicallyyou can pair any symbol set with any internal,cartridgeordownloadedfont;howeveritdocsn’tmakemuchsense to printtextwitha mathor line-drawingsymbolset.
LaserJetHmode providestwo differentsymbolsetcommands.Youput a codeintoonecommandto selectaparticularsymbolsetforyourprimary orsecondaryfont.YouU.SCtheothercommandtoselectthecurrentordefault
symbolset foryourprimaryorsecondaryfont.
Selecting a symbol set
Thisfirstsymbolsetcommandletsyouselectaparticularsymbolsetforthe current font. To select a symbol set for your primary font, send this command:
<ESC>( n
Forn enteroneofthefollowingsymbolcodes.Thefirstcharactermustbe a digit andthe secondan uppercaseletter.
CODEn
SYMBOLSET
OA
Math-7symbols
OB
LineDrawcharacters
OD
1S0 60:Norwegian
OE
RomanExtension
OF
1S0 25:French
OG
HPGerman
73
01 OK ON 00 OQ 0s Ou
OY
ID IE IF IG 10
IQ 1s
IU
2K 2Q 2s 2U
3Q
3s 4s 5s , 6S
8M
‘8Q
8U
8Y 9Q
10U 1lQ 1IU 12U 15U
1S0 15:Italian JIS ASCII ECMA~94Latin 1 OCR-A Math-8Asymbols 1S0 11:Swedish
US-ASCII
BarCode3 of9
1S0 61:Norwegian 1S0 UK 1S0 69:French 1S0 21:German OCR-B Math-8Bsymbols HP Spanish Legal 1S0 57:Chinese Pi font-Asymbols 1S0 17:Spanish 1S0 IRV OCR-BExtension 1S0 10:Swedish 1S0 16: Portuguese 1S0 84:Portuguese 1S0 85:Spanish Math-8symbols IBM-PCSet Roman-8 BarCodeEAN/UPC IBM-PCExtension IBM-PC(US) ECMA-947Bit IBM-PC(Denrnark/Nonvay) PC-850 Pi fontsymbols
To selecta symbolsetcodeforyoursecondaryfont,fliptheparenthesis:
<ESC>) n
andfor n substituteyourchoicefromthecodesabove. 74
I
Selecting the current or default symbol set
Yourprintercan useeithertheprimaryorthesecondaryfontas itscurrent font. And that currentfont has its currentsymbolset. Your printeralso remembemitsdefaultfontandsymbolset,whichareCourierwithRoman­8 (unlessyou’vechangedtheirinitialparametervaluesthroughthe front panelmenu).
The followingcommandlets youselectoneof thosesymbolsetsfor your primaryfont.
<ESC>( n @
For n enteroneofthe followingselectionvaluesforyourprimaryfont:
n VALUE
SELECTION
O(zero)or 1(one)
Selectsthedefaultsymbolset
2
Selectsthecurrent font’ssymbolset(this forcesthe printertoselectits bestmatch­ing font)
3
Selectsallof thedefaultfont’sattributes (notjust symbolset)
Similarly,youcanselecteitherthedefaultorthecurrentsymbolsetforyour secondaryfont. You alsomay want to use the same symbolset for both
primaryandsecondaryfonts. To do thesetasks,you can send the followingcommandto select which
symbolset youwantfor yoursecondaryfont:
<ESC>) n @
For n enteroncofthevaluesfromthistable:
n VALUE
SELECTION
O(zero) Selectsthedefaultsymbolset
1(one) Selectssamesymbol set as primaryfont
2
Selects’thecurrentfont’ssymbolset
3 Selectsall the default font’s attributes(notjust
symbolset)
Example: Symbol set commands
Let’stakeashortlookathowyouusethesecommands.Here’sthescenario:
YouarealreadyusingtheTmsRomntypeface,butwanttousetheGerman symbolsetasyouarewritingareportforyourBerlinofficeandneedumlaut charactersforseveralnamesin thereport.
75
I
Thenin thereportyoudecidetouseaproprietaryproductname,so wantto nipouttograbthe@symbolonalegalcartridgefontyou’vealreadyloaded, thenreturnto yourGermanset.Whenyourreport’salldone,youwantto returntheprinterto itsRoman-8default.
Herearc thecommandsthatwilldo thejob forus:
<ESC>( OG
(youstartyourreporthere)
~ESC>( IU @
<ESC>( OG
(youfinishyourreporthere)
<ESC>( O@
Ifyouhadfinishedwith<ESC>(3@theprinterwouldreturntoitsstandard Courierfont:not just itsRoman-8symbol set.
Spacing
If youspecifymonospaccdfor a font,eachcharacterprintswiththe same width.Butif youspecifyproportionalspacingthedesignof eachcharacter determinesits width.To definehowyou wantyourprimaryfont spaced, sendthiscommand:
<ESC>
(S /z P
in whichforn youput O(zero)toget monospaced,
or 1(one)to getproportionalspacing.
Ifyouspecifyproportionalspacingitdoesn’tmatterifyoualsospecifypitch,
becausespacingisa.higherpnorityfontattribute.Theprinterwilljustignore
thepitchrequest.
76
To definespacingfor yoursecondaryfont,usethe samenumbersandjust
fliplheparenthesis:
<ESC>
)S ~ P
Pitch
Pitchdefineshowmanycharactersper inchyou wantfor a monospaced-
pitchfont.Your StarLascrPrinter8‘sinternalmonospaccd-pitchfontshave settingsof 10, 12or 16.66charactersper inch. Cartridgeor downloaded fontswithmonospaccdpitchesoftenhaveothersettingsforcharactersper inch.
To selectthepitchyouwantfortheprimaryfont,sendthiscommand:
<ESC>
(S ~ H
wherefornyouput inhowmanycharactersperinchyouwant.Forexample, <ESC>(s 12H willpacktwelve charactersintoeachinch.
Thecorrespondingpitchcommandforthe secondaryfontis:
<ESC>
)S ~ H
Youcanuscadifferentcommandinsteadoftheseforgcncralcharacterpitch setting.Thiscommand,sinceitdoesn’thaveparentheses,coversboththe primaryandsecondaryfonts.It looksIikc this:
<ESC>&kn S
For n youentera pitchcodefromthefollowingtable:
CHARACTERSPER INCH
PITCHCODEn
10cpi(pica) O(zero)
16.66cpi(condensed) 2
Font height
The heightof the charactersyou print is measuredin point sizes. The LaserJetII cmulationprovidesfontsin
6,7, 8.5, 10,12,14, 16,18,24 and
36pointsizes.Ifthefontheightyouspecificallyaskforisnotavailable,the printerwillselectthefontwiththesizeclosestto yourrequest.
To selectfontheightfor theprimaryfontusethefollowingcommand.For n enterthe fontheightin points thatyouwant:
<ESC>(s n V
77
I
To selectfontheightforthesecondaryfont,sendthiscommand:
<ESC>
)S /z V
Style
Styledefineswhetheryourtextisprintedin italicsorupright,thewaythese wordsare.Sendthiscommandtoselectthestyleyouwantfortheprimary font:
<ESC>
(S rz S
in whichfor n you
enter Oif youwantnormaluprighttext,
or 1if you
want italics.
Toselect styleforthesecondaryfont,justreversetheparenthesisandusethe
samen numbers:
<ESC>
)S ~ S
Rememberthatstyleisarelativelylow-priorityattribute.Ifaparticularfont
satisfiesallhigherpriorityattributesbutdoesn’tcomeinthestyle youwant, you’llgetthatfontwithoutyourstyle.
Stroke weight
Theweight of a fontdefines howlightlyor boldlyit prints. WithLaserJet11emulationyoucan be more flexibleaboutstrokeweight
thanwiththeboldon/offcommandsoftheotheremulations.Thefollowing commandgivesyou a rangeof 15degreesof boldness,thoughnolmany fontsexploitthatrange.
Sendthiscommandtoselectaprimaryfontwithyourdesiredstrokeweight:
<ESC>
(S /z B
in which youreplacen withanumberfrom–7 (meaninglight)to +7 (very
bold).Youneedthenegativesigntogetthelighterweights.A weightof O
(zero)producesmediumprint.
To selectthe strokeweightforlhe secondaryfont,use thesamenumbers
withthiscommand:
<ESC>
)S /z B
Anincidentalnote:Youwilllikelyuseoptionalfontsto giveyouboldface, soprobablydon’tneedto knowthis.Butit’spossibletoprintboldwi~houl evenhavinga boldfontintheprinter.Youjustprintthetextyouwantinbold twotimes,withtheoverprintoffsetby4 decipoints.
78
So youcanuse the command <ESC>&a n Hto backup, youjust needto
knowthe widthin decipointsof whatyou wantto overprint. In a mono­spaced-pitchfontlike Courierthat’seasy:just keep track of how many charactersyou print.Inaproportionalfontyou’dkeeptrackofthedecipoints byusingacharacter-widthtable.Afterbackingup4 decipointslessthanthe totaltextwidthyou just print yourtextagain.
Typeface The
lastattributeyou can givetocharactersistheirtypeface.Thedesignof charactersis whatfont designersoftenthinkof asthemaindeterminantfor a font.Butwhenyouselectalaserprinterfont,typefacesitsatthebottom of thelist.
To assign the particularface you want for your primaryfont, send this command:
<ESC>
(S ~ T
For n enteroneof thefontcodenumbersfromthistable:
TYPEFACE n Lineprinter
O(zero)
Pica
1(one)
Elite
2
Courier
3
Helvet 4
<Tms Romn 5
Gothic
6
script
7
Prestige
8
Caslon
9 Orator 10 Presentation 11 LineDraw 12 PCLine
13 OCR 14 BarCode
15
Toassignacharacterfacetothesecondaryfont,justfliptheparenthesisand usethesamen numbers:
<ESC>
)S rI T
79
Example: Font attributes
Let’sputthelasthalfdozenfontaltnbutcstogetherin anexample.Saywe wanttoselecta nicefont—asmallLinePrinter- forthefootnotesinareport we’vefinished.Let’smakeitoursecondaryfont,sincethebodyofourreport is donein theprimaryfont.
We’ll go with the defaultsfor orientationand symbol set. But let’s be specificabouttheotherattributes,andlet’sremembertoputtheminpriority order.
Wedecideonamonospacedof 16.66charactersperinchandaheightofjust sevenpoints(footnotesshouldlooksmallerthanourregulartext).To keep itreadable,weoptfortheordinaryuprightstyle andmediumweightin the LinePrintertypeface.Oursequenceof individualcommandswouldlook likethis:
<ESC>
)S OP
<ESC>
)S 16.66H
<ESC>
)S 7V
<ESC>
)S OS
<ESC>
)S OB
<ESC>
)S OT
Sincethese font attributesall start with the same )s command-category prefix,let’sput themalltogetherinonccommand:
<ESC>
)S OP 16.66h 7V@ObOT
TheBASICstatcmentwccouldsendto selectourdesiredfontwouldlook
likethis;
100 LPRINTCHR$(27);“)sOp16. 66h7vOsObOT”
And assuming we have such a font in our printer, we‘d get a font that looks like this sentence for our footnotes.
Underline
Underliningis printingfeature,nota fontattribute. Youcanunderlinein twoways:asa print feature,or withthe– underline
character.If youbackspaceandusetheunderlinecharacter,however,you oftenfindtheunderlinedoesn’tcomeoutthe samelengthas yourtext.
The underlinecommandworks better. When you turn on the underline 80
featurethisway,theprinterwillunderlineallsubsequentprintablecharac­ters,includingspaces.
Sendthiscommandto turnontheunderliningmode:
<ESC>&dn D
in whichfor n youput O(zero)to getfixedunderline,
or 3 to getfloatingunderline.
Andsendthiscommandto turnofftheunderlinemode:
<ESC>&d@
How toprint Escape sequences and control codes
Youuse bothEscapesequencesandcontrolcodestoprint.Sohowdo you printEscapesequencesandcontrolcodes?
Butyouactuallycanprintcommands,andintwodifferentways.Youwould dothiswhenyou wanttoseeeverythingexactlyasitissenttotheprinter— forexample,todebuga stringoftextandcommandsthatdocsn’tprintthe wayyouthinkit should.
The Transparentprint commandprintsthe string of data that followsit withoutpayingattentionto any embeddedEsca~ sequencesor control codes.TransparentprintevenprintsCarriageReturncodeswithoutzapping theprintpositionbackto theleftmargin.
TouscTransparentprint,justputthiscommandimmediatelyinfrontofyour
printdata:
<ESC>&pn X For n youspecifythenumberof bytesofdatayouwantto print. Display Functions,like the Transparentprint command, prints Escape
sequcnccsandcontrolcodeswithoutactuallyexecutingthcm.ButDisplay FunctionspaysattentiontoCarnageReturncodes,sotextlooks morelike the way it normallyprints. DisplayFunctionsalso prints commandsas blanks,not as symbols.
DisplayFunctionsactuallyinvolvestwoEscapesequences,onetoturniton andanothertoturnitoff.To turnonDisplayFunctions,sendthiscommand just beforethedatayouwantdisplayed:
<ESC>Y
81
I
And to turn off DisplayFunctions,sendthis commandat the end of the
displayedprintdata:
<ESC>Z
ThatEscapeZ sequenceitselfprintsas a blankfollowedby a Z.
Font control
TheFont Controlcommandhastwomainfunctions:definingafont’sstatus, anddeletingfonts.
Youcanmakea fonteitherpermanentor temporarywiththeFontControl command.Thishelpsyou controlwhichfontsyoudelete,aspermanentfonts donotgetdeletedwhenyouresetthesystem.Thepermanentortcmporary statusyougivetoafontwillapplyonlyto thefontyoulastspecified,using oneof the fontID commandsdescribedabove.
Whenyourprinter’smemorygetsstuffedwithfonts,youcanalsousc this command to delete some of them. You can only delete fonts you’ve downloaded,asinternalandcartridgefontsareneverdeleted.Notextwill getlostwhenyoudelete a font,evenwhenthatfontisonanunprintedpage in thepnntcr’smemory.
To control fontsyousendthiscommand:
<ESC>
*C n F
For n enteroneof thenumbersfromthistableof functions:
FUNCTION
n
Deletealltemporaryandpermanentfonts
O(zero)
Deletealltemporaryfonts(anotherwaytodelete
1(one) ailtemporaryfontsis to senda resetcommand) Dclctcjust thefontwiththemostrecentlyspecilicdID 2 Deletejust thelastcharacterof thefontyouhave downloaded
3
Makethe current fontIDtemporary 4
MakethecurrentfontIDpermanent
5
Makea temporarycopyof thecurrentfont
6
Abitofexplanationaboutthatlastfunction6: WhenyougiveafontID to anyfontyoufirstneedatemporarycopyofthatfontinmemory.Thatcopy isalreadythere fordownloadedfonts. Butyouwillneedfunction6tocreate a temporarycopyof aninternalor cartndgcfont.
82
Here’showto assignIDnumberstoaninternalorcartridgefont.Youfirst
selectthefont,thensendthe FontIDcommandtogiveitanIDnumber,and finallycopythefont intomemorywithFontControlfunction6.Ifyouwant that copy to stay in RAM when you reset the printer, you concludeby
sendingFontControl function5.
Example: Controlling fonts
Let’sseehowthoselastfewcommandswork,translatedintoBASIC.
Pretendyouwanttomakeashorttestwithyourcurnmtfont(itdoesn’tmatter
whatit is): youwantto printwhat’sin ASCIItablepositions128through
130.There’snothingtherein yournormalRoman-8symbolset,but some
othersetskeepcontrolcodesor internationalcharactersthere.
AssumingyoulikewhatyouseeprintedfromthoseASCIIpositions,you
then wantto makethatcurrentfontpermanent.Finally,youalso wantto
dumpallthetemporaryfontsfromprintermemorytomakeroomforsome
graphicsyou’llbeprinting.
Let’sstart with a resetandan underlinedheadingfor yourtestprint:
100 LPRINTCHR$(27) ; “E” ;
110 LPRINTCHR$(27) ;“&dOD”;
120 LPRINT “Underlined heading for test print
of ASCII 128 - 130”; 130 LPRINTCHR$(27) ;“&d@” 140 LPRINTCHR$(27) ;“&p3X”;
150 LPRINTCHR$(128) ;CHR$(129) ;CHR$(130) ; 160 LPRINTCHR$(12) ; 170 LPRINTCHR$(27) ;“*c5f IF” ;
Line100isjustthe<ESC>Eresetcommand.Lines110and130turnonand off theunderlinefeature.
Line 140 turns on transparent printing, which forces printing even for normallyunprintablecontrolcodes.Thethreebytesyouwanttoprintarein line 150.To seewhat’sthere,yousendaformfeedcommandin line 160.
Andfinally,line170usesthefontcontrolcommandtomakethecurrentfont permanentandthendeletealltemporaryfonts.
83
Example: Assigning font numbers
Nowlet’sdo a program in BASIC. First we’llassignfont numbers to the
Courier
andPresigeresidentfontsandto acartridgefont,IBMPCCourier.
Thenwe’llprintsamplesofeachfont.
100 LPRINTCHR$(27) ; “(8U” ; 110
LPRINTCHR$(27 ) ; “ ( sOp10h12vOs Ob3T” ;
120 LPRINT CHR$( 15) ; 130 LPRINT CHR$(27) ; “*cID” ; 140 LPRINT CHR$( 27 ) ; “*c6F” ;
150 LPRINT CHR$( 27 ) ; “ ( 8u” ; 160 LPRINT CHR$(27) ; “ (sOp12h10vOsOb8T” ; 170 LPRINT CHR$(15) ; 180 LPRINT CHR$(27) ; “*c2D” ; 190 LPRINT CHR$(27) ;“*c6F” ;
200 LPRINT CHR$(27);’’(1OU” ;
210 LPRINT CHR$(27) ;’’(soplOhl2vOsOb3T’” ; 220 LPRINT CHR$(15); 230 LPRINT CHR$(27) ;“*c3D”; 240 LPRINT CHR$(27); ’’*C6F” ; 250 LPRINT CHR$(27) ;“(lX”;
260 LPRINT “Font 1 - Resident Courier”
270 LPRINT CHR$(27); ’’(2X” ;
280 LPRINT “Font 2 -
Resident Prestige”
29Q LPRINT CHR$(27); ’’(3X” ; 300 LPRINT “Font 3 - Cartridge PC Courier” 310 LPRINT CHR$(27); ’’(1X” ; 320 LPRINT CHR$(12)
Line 100and 110 callstheinternalCourierfontandline 120makesitthe pnmaryfont. Line 130givesit font ID number l, and line 140makesit temporary.
Lines150through190dothesamethingforthePrestigefon~andlines200 through240forthccartridgcfont NoticethatthccartridgefonthastheIBM symbolset code 10U.
Lines250through300printout samplesofthethreefonts.Finally,line310 resetsthedefaulttoourintemalCounerfont,andline320performsthefinal formfeed toprintthe page.
84
USINGYOUR OWN FONTS
Font design is tedious
A warning:font design is an art. Don’t expectto turn out professional­lookingfontsina fewhours.
Sometimes,though,you havetobuildyourowntypeface,evenifyoudon’t workwith a companyin thefont-sellingbusiness.Youmay,for example, want to print yourown customizedcompanylogo.It meansbuildingup characterswithinacellorgrid,perhaps50dotshighand35 wide—lotsof dots.
Because defining your own typeface is so tedious, make sure you’ve checked out as many downloadablefonts as you can find from font developmentcompanies.
The next handiest way to do thejob is to ask around,maybewhereyou boughtyourLaserPrinter8,toseeifyoucangetoneofthefont-creatingor
font-editingutilityprogramsnowonthe market.FontGen[V+isone.Keep
aneyeout,too, fornewwordprocessingtoolsthatmightsaveyouthetrouble
of painstakinglyfiguringoutdetailslikekerning. Evenwithaidslikethese,buildingacustomfontis an intricateprocess.It
callsforthecreationofa familyofup to200characterssharingacommon designandproportionalscheme,andthat’sjust foronctypesize.No mean
feat.
How to download your own fonts
Charactersthat you define and store yourself are called “user-defined” characters.Let’sassumeyoualreadyknowwhattextistobeinyourcustom font,andhavedesigneditstypeface,weight,widthandstyle.Onceyou’ve createdyour owncharacters,you’llneedto downloadthem to yourlaser printer.
Theprocessofdownloadinga fontyou’vedesignedyourselfis somewhat
detailed.To downloadyourfont,youfollowthefollowingsteps:
1) assigna fontIDnumberto yourfont,
2) downloada fontheader,
3)
identifythepositionof eachcharacterto be downloaded,
4) sendacharacterdescriptorandbitmapforeachcharacter,
5)
specifywhetherthefileisto bepermanentor temporary.
85
I
1) Assigning a font ID to your font
Toassign anIDtoyourfont,yousendthiscommand(describedaboveunder “Assigningfont ID numbem”)with an ID number for n betweenOand
32767:
<ESC>*C n D
Beforesendingthat commandthough,check whetherthe ID numberis alreadyallocatedto another font.If it is, thatexistingfontwillbe deleted withthenextcommand.
2)
Downloading a header for your font
Evenif theprinterdoesn’thave enoughmemorytocreateyourfont,itwill deleteanyexistingfontwiththesameIDnumberwhenyoudownloadthe headerfor yourfont.
A font’s headeris thelistof itsattributes,whichyourprinteruscstoselect thatfont.Eachfontheader,26 byteslong,issto~d atthe frontof thefont. Yousend-afont headercommandto yourprinterjust beforeyoudownload the font’scharacters.
Theheadercommandlookslikethis:
<ESC>
)S n W
and must be followed immediatelyby the data describing the font’s attributes.The n valueis the actualnumberof bytesof descriptiondata, almostalways26.Note:unlikeotherLaserJetIIcommands,youmustenter theASCIIsymbols2 and6 here,notthenumber26.
Here’satypical fontheadercommand:
<ESC>)S 26WO<SUB>OIOOO<RS>O<RS>O2OO1<FF>OdOWOOOOdWX>
Asidefromthe actualcommandatthefront,the restlookslikegobbledy­gook?But there’s26 bytesthere,each onean ASCIIcharacter,each one specifyingaparticularfont attribute.(Theencloseditemswithbracketsare
singleASCIIcharactersthathappentobe controlcodes.)
Eachbytein theheaderis a number,whichyousend as whateversymbol happensto be storedat thatnumericpositionin the ASCIItable.Coding someofthesenumbersistricky,however,andwerecommendyouaskyour
StarMicronicsdealertohelpyoubuildyourfontheader.Togetyoustarted,
thetablebelowshowswhateachof thosebytesmeans:
86
BYTE o-1 2
3
4-5
6-7 8 9
10 11 12 13 14-15 16-17
18-19 20-22 23 24
25
MEANING headerlength
blank fontsize blank baselinepositionforcharacters blank cellwidth blank cellheight orientation
spacing symbolset
pitch
linespacing blank style strokeweight typeface
3)
Positioning each character in your font
Beforeyoudownloadeachcharacteryouhavetotelltheprinterwherein its fonttableto putit.Youindicatewhereby sendingthiscommand:
<<ESC>
*C n E
Fornyouputthedecimalnumber,betweenO and255,ofthepositioninthe
fonttablewhereyouwantyourcharacterstored.
Yourprinter’sfonttableisjust liketheASCIItable.Beforeyousendeach character,sayg, youhavetosaywhereyouwanttoputit.IntheASCIItable, g is atdecimalposition103.Soyou sendthiscommand:
<ESC>
*C 103E
Andimmediatelyafterit yousendthebitsthatmakeupthe characterg.
4)
Describing each character in your font
Thenextstepisto describeeachofyourcharacters,“mapping”whereyou
wanteachdotto go.Sendthiscommandbeforeeachcharacter:
<ESC>
(S n W
Forn youenterthenumberofbytesyou’llbesendingafterthiscommand,
87
I
to describe and map your character. Sixteen bytes are needed for the description;the bit-map takes as many bytes as you’ve put into each
charactercell— perhapstwoor threehundredbytes. Aswiththefontheader,eachbyteinthecharacterdescriptionis a number,
sent as the symbolat that positionin the ASCII table.Codingcharacter descriptionsis tricky too, so again we recommendyou ask your Star Micronicsdealer for help.The table below showswhatthe bytes in the characterdescriptionmean:
BYTE MEANING
o
descriptionlength
1
blank
2 always14
3
always1 4 orientation 5 blank
6-7
leftoffset(blankspaceto leftof character)
8-9
topoffset(blankspaceabovecharacter)
10-11 characterwidth 12-13 characterheight 14-15 printpositiontravel(proportionalspacingonly)
Thebitmapofthecharactersjustthepattemofdotsinthecharacter,starting atthetopleftofitscell.Youworkyourwayacrossthecellanddowntothe bottomright; givingeachdota valueof Oifit’snotto beprintedand 1if it is.Thenyou.groupthosedotsas 8-bitbytes.
5)
Permanent or temporary?
The
laststepindownloadingyourownfontis tomakethe fontpermanent or temporary,using the Font Control commanddescribedearlier. The command<ESC> *c4 F willallowthefonttobeerasedwhenyouresetthe printer.ButthecommandcESC>*C5 F willkeepyourfontavailableeven
afteryou resettheprinter.
88
GRAPHICS
TheStarLaserPrinter8offerstwokindsofgraphics.Itprin~srastergraphics (sometimescalled“bit-mappedgraphics”),which specify each dot in a graphicspattern.And it printspattern graphics,which prints Iincs and pattcmcdblocks.
Bc aware,though,thataddinggraphicelementsalwaysslowsup printing withlaserprinters.
Starting raster graphics
Youfollowthesefourstepswhenyouuserastergraphics,intheordershown:
1)
Definewhatresolutionyouneed.
2) Issuethecommandtostartgraphics.
3) Sendthecommandstotransferrastergraphics.
4)
Sendthecommandto endgraphics.
‘Youmustdefinethe resolutionof yourrastergraphicsbeforeyou use the
StartRasterGraphicscommand.Todefinetheresolutionyouneedin your graphics,sendthiscommand:
<ESC>*tn R
For the valueof n youcan entereither75, 100,150or 300.That number defineshowmanydots pcrinchyouwantinyourfinalgraphicimage.The defaultresolutionis75dots pcrinch.Aftergraphicshavestarted,the printer willignoreanyresolutioncommanduntilit receivesthecommandto end graphics.
Rastergraphicsstart printingeither attheleftpageedgeorthecurrentprim position.Tostartrastergraphicsyousendthiscommand:
<ESC>Wn A
Youcanputin eitherO(zero)or 1(one)forthen value.If youenterO,the marginforgraphicswillbcsetattheleftmostpnntablcedgeofthepage(not the same as the left marginfor text). But if you enter 1, the margin for graphicswillbe set at the columnof the currentprint position,and your
imagewillappearonlyto therightof thatgraphicsmargin.
Aprogramminghint:move yourprintpositionindotincrementswhenever
you’redealingwith graphics.It’seasierthan tryingto calculatecolumn-
widthsordccipoints.
89
I
Sending and ending raster graphics
Graphicsprinting is independentof textmarginboundaries,includingthe perforationskipregion.Itisbnlylimitedbytheprintableareaandthepage length.
Totransferraslergraphicsyousendthiscommandatthebeginningofeach lineof rasterdata:
<ESC>*bn W
Forn youenterthenumberof bytesofgraphicsdatato followonthisline. ThedatamustfollowimmediatelyaftertheWin thiscommand.
Databytesarcinterpretedasonc lineofrastergraphicsdata(onedatarow). Eachbyteismadeupofeightbits.Thebitsof rastergraphicsdata(1‘s and O’s)yousendtotheprinterdescribesingledotsto beprinted:a 1indicates
youwantadotprinted,anda Oindicatesyoudonot wanta dotprinted.
Usethefollowingcommandtocnd rastergraphics:
<ESC>*rB
Afterendinggraphicsyoucan thensendtextto mergewithit.
Rules and patterns
Patternsandlinesareeaseto do.
Print shopscall lines of any thicknessrules. A printedline in fact is a
rectangularareawithone“skinny”dimension,fromonctomanydotsthick.
Wewillusctheword“IUICS”too,toavoidconfusionwiththelinesusedto
measurepages.
Youfollowthesethreestepswhenyouuseruleandpatterngraphics:
1) Definethedimensionsyouneed.
2) Choosethe graphicspatternyou wantto till in thosedimen­sions.
3) Printthepattcm. Rcmcmberto sendthefollowingruleor patterncommandsin thatorder.
90
Defining rule or pattern dimensions
Definingthe dimensionsoftheareayouwanttofilljustmeansindicatingthe horizontalandverticalsizeofthepattern,ortherule’slengthandthickness. Youcanindicatedimensionsineitherdotsordecipoints(tenthsofapoint).
At300dotsor720 decipointstotheinch,decipointmeasurementsarcmom accurate.The printer convertsdecipointvaluesinto dots, using 2.4 de­cipointsto the dot. It roundsup fractionsto the next integer.So 1225 decipointswouldworkoutto510.4dots,andthepnntcrroundsthisupto511 dots.
Yourdimensioncommandsspecifyanareatotherightanddownfromthe currentprintposition.Ifyoudefineanarealargerthanthepage,yourprinter willacceptthe command.Itwill,however,cutoffyourpattcmor ruleatthe boundariesof thepage’sprintablearea.
Whentheprinterfinishesitsprint“map”of yourruleor pattern,theprint positionautomaticallyreturnsto the spot from which you started.That
means,forinstance,thatyoucanmakealightlyshadedrcctanglcandthen startprintingtextrightoverit.Thiskindofboxcanbeusefulforsettingoff particularinformationfromthe mainbodyof yourtext.
Horizontally,youcan specifytherule lengthor horizontalpatternsize in dotswiththiscommand:
cESC> *cn A
in whichforn youenterhowmanydotsacrossthepageyou wanttherule or pattern to be.
Alternatively,to specifythe horizontaldimensionfora rule or pattcmin decipoints,youcan printthiscommand:
<ESC>
*C n H
in whichn is thehorizontalrule,orpatternsizein decipoints. Vertically,youcanindicatethesizeofyourruleorpatternin dotswiththis
command:
<ESC>
*C n B
inwhichnisthenumberofdotsdefiningthethicknessofthendcorthcdepth of thepattern.
91
Alternatively,to showthe verticaldimensionin decipoints,yousendthis command:
<ESC>
*C n V
inwhichnisthenumberofdecipointsintherule’sthicknessorthepattcm’s verticallength.
Choosing and printing a rule or pattern
Youneedbothofthenext twocommandstochooseandprinttheparticular patternyouwanttofillyourdefinedarea.Thesecommandsworktogether.
WiththePrintPatterncommand(whichactuallycomessecond)youspecify whetheryouwanttofillyourrectangularareawithasolidblackrule,afinely dotted gray-scalepattern,or a predefine linear pattern. And with the SpecifyPattcmcommandyoucanindicatewhichparticular dottedorlinear patternyouwant.YoualwayssendtheSpecifyPatterncommandbeforethe PrintPauem command,evenif youwanta solidblackrule.
To indicatetheparticularpatternyouwant,sendthe followingcommand. The generalmeaningof the n value you enter actuallydependson the commandyouputafterthis:
<ESC>
*C n G
If youwanta solidblackruleitdocsn’tmatterwhatyouputinfor n,asthe printerignoresit.
Ifyouwanta1-scaledottedpattern,fern youcnterhercapercentagenumber from1to 100indicatingthedensitywithwhichyouwanttheboxfilled,from lightto solid.Yourn percentagewillcomcspondto oneof theeightgray­scalcdensitiesin thechartbelow.
1- 20/0
3-10 %0
E ‘D
92
Loading...