Filedon:[Indigo]TiogaArtwork>3.2>TA.docLastedit:July6,19825:22pmTiogaArtworkRichardJ.BeachJuly,7,1982IntroductionAprototypeforintegratingtextandfigureswithinaTiogadocumentexists.TiogaArtworkrepresentsasuccessfulexperimentingraphicalstyle.ArtworkwhichcanbeintegratedpresentlyincludesGriffinpictures,AISscannedimages,andtheresultsofexecutingJaMGraphicsprograms,alongwithtextcaptions.Thegraphicalstyleexperimentattemptedtoprovideasimilarmodelofseparatingformfromcontentasexistsinmanytextformatters.Inourgraphicalstylemodel,geometryrepresentsthecontentanditsrenderingrepresentstheform.GraphicalstyleisdefinedusingtheTiogastylemechanismsandcandescribecolors,lineweights,filledoroutlinedareas,penstyles,andshadowstyles.ATiogadocumentwithbothtextandgraphicscanbetypesetusingaversionoftheTiogaTypesetter.ThisversionofthetypesetterincorporatesTiogaArtworktorendergraphicalnodesofaTiogadocument.Inasymmetricfashion,TiogaArtworkusesthetypesettertocomposethetextwithincaptions.IncorporatingAISImagesintoDocumentsAsanintroductoryexampleofusingTiogaArtwork,considerthefollowinginstructionsforincorporatingasampledimageintoadocument.NotethatifsomeoneweretomodifyPressScreentoproduceanAISfile,thentheresultingscreenfilecouldbothbeprintedonaPressprinterandbeincludedinaTiogadocument.Createatextnodeinthedocumentwheretheimageistobeplaced.UsetheTiogaBreakcommandtomakethisaseparatenode.EnterthelocalfilenameoftheAISimageasthetextofthenode..ThenodewillappearinthedocumentwindowasnormaltextsoitisnecessarytomakethenodespecialforTiogaArtwork.UsetheEditTooltosettheArtworkImagepropertyforthisnode:1)enterArtworkImageinthePropertyname:field,2)enterTRUEinthePropertyvalue:field,3)selectthenodecontainingtheimagefilename,and4)bugtheSetbuttoninthePropertysectionoftheEditTool.TypesetthedocumentusingtheTiogaArtworkversionoftheTiogatypesetter.IncorporatingGriffinIllustrationsintoDocumentsToincorporateGriffinpicturesinTiogadocuments,theGriffinfilefirstmustbeconvertedtoTiogaArtwork.RetrievetheGriffinfileontothelocaldisk.UsingtheTiogaArtworkViewer,enterthefilenameintheboxandbugGriffin->TiogaArtwork!button.CreateatextnodeinthedocumentwheretheGriffinpictureistobeplaced.UsetheTiogaBreakcommandtomakethisaseparatenode.EnterthelocalfilenameoftheconvertedGriffinpicture,whichwillbetheGriffinpicturenamewiththeextension".Artwork"astextwithinthenode.Tomakethis1p ` O( _9 xq"$V)Hr$OD*+&8M)+!s E p B  !O%*+3/ 5u9=CH I A(   %J*/&13 :@F< ?!$U(*1Z :@DH7 ># ;  8$&\+f,15I7 =@DWI@ :%y /!#)-118 >A0F;I 8x #>%),*/36C:K= EHc 7 t e")'+m.$2149 4 B U#(+5-5156;=?C 3"!  $ -/P39=?3@SD* 1   "%( .E/58:?s -  =$6p *  h! *0i28 @5Bq )0 3q $>'(_.1]37 ?4@F-H ' = #'()). 0$1^49<_>`DEG &+ #sPl!4%J'+-.058;>BI@ "-Kg!%.*,q.157,9~<)=@&DG|   #$),.03189=@cDH ( MH "%4 .@358z<>YA  t'p$t"e#Lp&'G(t*+0p45F8:>Z@D5 " p|y0t!"!"p#`"$'"')t+","p1"2 "6!7:: 1 ',.\04 s   &*p  ]} "4& .:16(9"%%+T 24S7;q=BPDHMu) "TVm$nodespecialforTiogaArtwork,usetheEditTooltosettheArtworkFileNamepropertyforthisnode:1)enterArtworkFileNameinthePropertyname:field,2)enterTRUEinthePropertyvalue:field,3)selectthenodecontainingtheconvertedfilename,and4)bugtheSetbuttoninthePropertysectionoftheEditTool.TypesetthedocumentusingtheTiogaArtworkversionoftheTiogatypesetter.SoftwareConfigurationAtpresent,TiogaArtworkisboundupwiththeTiogatypesetter.ThepackagenameisTATS.WhenthisisrunfromtheUserExec,twoviewersarecreated:TypesetterandTiogaArtworkViewer.TheTypesetteruserinterfaceisidenticaltotheTiogaTypesetter.TheTiogaArtworkViewerprovidesthreebuttonsandaGetSelectionmenubutton.WhenabuttonisselectedandTiogaArtworkisbusy,thebuttonwillappeargreywithblacklettering.MessagesdescribingthecurrentstateofTiogaArtworkappearbelowthebuttonsatthebottomoftheviewer.Allbuttonsaredocumentedwithexplanationswhichappearwhenthebuttonisbuggedwiththemiddlemousebutton.TiogaArtworkDocumentStructureThedocumentstructureexpectedbyTiogaArtworkreflectsboththeTiogadocumentstructuringcapabilitiesandgraphicalclusteringofpictureobjects.AdesigncriteriaforthisprototypewastouseonlytextnodeswithinTiogadocuments,soastoavoidanymodificationstotheTiogatexteditor.ThereforeallthegeometrydescriptionsarerepresentedeitherastextwhichareJaMGraphicscommandsorfilenamesofartworkfiles.Todistinguishtextwhichrepresentsgraphicalobjects,propertiesareassignedtosuchnodes.ConvertedGriffinpictureswillcontainthenecessarypropertiestoberenderedsuccessfully.Othernodescreatedbyhandwhichdidnotoriginateasconvertedfileswillhavetohavesuchpropertiesaddedmanually.TheTiogaEditToolprovidesthisfunctionality.TheprovisionofgraphicalstyleutilizesthesamestylemechanismsasTiogaanditstypesetter.SinceTiogaprovidesforextensiblestyleparameters,mostgraphicalstyleparametersareextensionsoftheTiogastyles.TiogaArtworkrendersthepictureaccordingtothesegraphicalstyleparameters.Formatnamesappliedtoanodeindicatethestyleparametersinforcewhenthenodeisrendered.Acommonexpectationinworkingwithillustrationsfordocumentsistheabilitytogrouppartsofapictureandmanipulatethegroup.Positioningandscalingaretwocommonoperationsappliedtosubpictureswithinanillustration.Positioningoftextualcaptionsisanotheroperation.ThetreestructureofTiogadocumentsprovidesanaturalrepresentationofsuchhierarchialstructurewithinillustrations.ThereforeGriffinpictureswhichcontainclustersofobjectsarerepresentedasnestedTioganodes.EachGriffinobjectismaderelativetoanoriginof(0,0)withitscontainingnodesupplyingtheappropriatepositioningcommands.Clustersofobjectssupplyfurtherpositioningcommandsforthegroup.Furthermore,TiogaArtworkprovidesanesteddisplaycontextforeachlevelinthetree.ThuspositioningandscalingtransformationsapplyonlytothenodescontainedwithintheTiogasubtreeandnoexplicitmanagementofdisplaycontextsisneeded.TiogaArtworkPropertiesPropertiesdistinguishnodeswhichcontainnontextualinterpretationoftheircontents.TiogaArtworkusesthefollowingpropertiesforgraphicalillustrations:Artwork,ArtworkImage,ArtworkFileName,ArtworkPath,BoundingBox,andOrigin.Anartworknodemusthaveatleastoneofthethreeproperties:Artwork,ArtworkImageorArtworkFileName.PropertiesaregeneratedautomaticallyduringtheGriffintoTiogaArtworkconversion,butmustbemanuallyappliedforallotherartworknodes.ThepropertyArtworkwiththevalueTRUE,intheabsenceofeithertheArtworkImageorArtworkFileNameproperty,meansthatthenodecontainsJaMGraphicscommands.Normallythepositioningandscalinginformationnodeshavethisproperty.2p b!1 Z #'(*,/ :h@B9DI@ `0tq`B`$0p(`(`,.t2.`3`p6`7&`8t;`;`@pE`Ey`I@ _/ [$*-G.1t4_4_p6v_7=_:<t>_?_pD_E_I5 ] p [1 ',.\04 s W/ p S ] C!.#S&(, 4%7aDV KG ZeU %u),125!9;>4CE I  !%R* -05)6;?(AF HBs D> p AMB !5#'-26C8=6C ? F" !z#L( -/]38:=CFHy >GdV %')+q/j2E ;<?CF <kV #D% ,02599B; D  ;B uj!_ (+/ 6<A H 98i 78]{"%8+< 13C5%: CF 5>2%t'V-137\9?<@ F 43g#& 1) Z$&*3- 5S7;=? G9 0(Ry  '/*u0Q3k :[< C#DG ., $+,0m6o9 AF -#Fr! ()-403I68' *  !m$ ,F.57^9>K@#DOGI ) f "q ),14:7*= DI@ ' ?sS  ' (-)2}38 ?BE1 & # ,.1 8>C- $i9@$(*/A1 8:>BG{ #\P "&0'+C.s0c 72:AC ! A #)(7-22 9ACF  v>"#''^+0259!:<@lC  g; #8$'_+b16 8w p   !& , 57:AwEv J\ r ; ' /E5h ?3  | l$%&g+l.2$5Y69<>7@C D ' .o07 ?tCF<   P"$*/137]uAGNH ` >n">( *-j/<039<@uBG*H _$ \ ">$(f,1D4!6:?AEJ [& E "%( /_ 6:@7BH Y ~[ #((A.4(7F>}BE X    ;"V% UT[  r#='R,904"6:@D T" Y $&)-M 6=CnH7 R2 4 $<*-0j38:@BCG/ Q | 2" #v%$(,V.13H N "&d5:=`CFH Mi ' . 7/;>MD K j T!';(.r/4Y6D:<BZDfF J#~ G.d!%]*5,028 :c<BH F h !X%(.?1e37:=CDF D 4Q)1!!#z'*=.0o46j8>BxE C :/H "$&+,/0s ?Y p <(  " )N*.v1 8 @BH : [qd &+ ,/.1v 7p 5bT\" )L+ 27:= G 3 6 Zf '+/3O :s=AF 2 B  'q+k/2 36b:G> 0wx $ -169<?B4G .8X! #(*L-2379?_AD -z g!#W&($)D-154AC`D +$&q+ ,.047z:>AGe *u f "\&),3> ;H7 ( &w "h$(D)-/47:,> D $ M !%^(.26;>@BF #q   m | #` +P/u15*6<AD sA G!Z'*f 2jv p   8."l&*0B2=?1BE Y L"% -/5j8=?AH  \#Q& .%0e149=X? Ib T!$' //1+2U  >p#\%',;2z438`<*=?Db V>#?$%)-'/ 69v cp    !(#'r)/+.N2`7N9?>BFI  5I o"Q )-0 7Z9=Q@,D$EHyu) TVm$ nibbedpensusedincalligraphy.PensmaybeparameterizedbylineWeight,penSlant,penWidth,andpenHeightdescribedbelow.ThepenSlantstyleparameterdeterminestheangleofthepenmeasuredindegreesfromthehorizontalcounter-clockwise.Obviouslythisdoesnotapplytoroundpens.Thedefaultisnoslant.ThepenWidthandpenHeightparameterstogetherdefinetheaspectratioofthepen.Obviouslytheseparametersdonotapplytoround,squareoritalicpens.TheratioisappliedtothelineWeighttodeterminetheactualpenwidthandheight.Thedefaultvaluesareboth1.ShadowStylesOncethestyleinformationisseparatedfromthegraphicalinformation,derivedstylesbecomepossible.Shadowsarecreatedbyapplyingspecialstylestothegraphicalobjectpriortorenderingtheactualobject.Twokindsofshadowsareoffered:dropshadowsandoffsetshadows.TheshadowTypestyleparameterdefinesthetypeofshadowdesired:none,droporoffset.Thedefaultisnone.Adropshadowisdrawnbyfollowingthepathoftheobjectwithanitalicbrush.Anoffsetshadowisdrawnbydrawingtheobjectoffsetbysomedistance.TheshadowDirectionstyleparameterdeterminesthegeneraldirectionfortheplacementoftheshadow.Fourdirectionsareprovided:upLeft,upRight,downLeft,anddownRight.ThedefaultisdownRight.TheshadowAnglestyleparameterprovidesfinetuningoftheshadowdirection.Thedefaultis45degrees.Theangleindegreesismeasuredfromthehorizontalcounter-clockwise.TheshadowWeightstyleparameterdefinesthewidthoftheshadow.Fordropshadowsthisisthewidthoftheitalicpen,andforoffsetshadowsitisthewidthoftheoutlinedrawnaroundtheshadow.Thewidthismeasuredinpoints(1/72ofaninch)andfractionalvaluesareaccepted.Thedefaultvalueis1point.TheshadowOffsetAmountstyleparameterdetermineshowfartheoffsetshadowshouldbeplacedfromtheoriginal.Thedistanceismeasuredinpoints(1/72ofaninch)andfractionalvaluesareaccepted.TheoffsetshadowisplacedshadowOffsetAmountpointsatshadowAngledegreesintheshadowDirectiondirection.Thedefaultvalueis12points.TheshadowPathTypestyleparameterappliestotheoffsetshadow.ThesamechoicesaspathTypeapplyhere:filled,outlined,andfilled+outlined.Thedefaultisfilled.TheshadowAreaColorstyledefinitionprovidestheshadedcolorfortheshadow.Thisiseitherthedropshadowcoloroftheitalicpen,oritisthefilledcolorforoffsetshadowswhichhaveeitherafilledorfilled+outlinedshadowPathType.TheshadowOutlineColorappliestotheoutlineoftheoffsetshadowwhenithastheoutlinedorfilled+outlinedshadowPathType.ExpectedGeometryCommandsTiogaArtworkexpectsthegeometrydefinitiontobeintermsofJaMGraphicscommands.VerydistinctsetsofcommandsaregeneratedduringtheconversionofGriffinpicturestoTiogaArtwork.Layoutcommandsprovidepositioningandscaling:.translate,.scale,and.rotate.Pathcommandsdefinethegeometricoutlineoftheobject:.moveto,.lineto,and.curveto.CommentarywithintheconvertedGriffinpicturesbeginswithapercentsign,%,whichJaMaccectsasacommentdelimiter.ThegraphicalstylerenderingassumesthatnodeswiththepropertyArtworkPathwillcontainpathdefinitions.ThispathmaybeexecutedseveraltimestoachievethestylisticeffectsspecifiedbypathTypeandshadowType.OnlytheJaMGraphicscommands.moveto,.lineto,and.curvetohavebeentestedtoensurethattheygeneratetheappropriatebehaviour.OtherdrawingcommandsmaybeaddedtoTACallig.Mesaasthedemandarises.AnyothernodewiththeArtworkpropertybutwithouttheArtworkPathpropertyissimplypassedtoJaMGraphicsforinterpretation.CommandswhichmodifythedisplaycontextwillbeineffectforallnodesinthesubtreespawnedbythatnodeintheTiogadocument.Thatis,eachsubtreeinheritsthe4p b)k, 6#&( 13 ;+ASH7 ` ^(  $&*,q.179>BDm \ .#^%)+M/e3}6U:o Z& G %3*.1_58:=@Ge X K..!&N(F+0V3c68r=?rB I@ W!!E&[)3-2 4]7v T@+p Qo(e t#')/ 7oCjFF Jh   ")+.0373:bd A %o'+-M/5a8;L@CTDG  < L$Z%'?)-/m16:?B"H ;_]>a !#'P* 0%4R6=&?DHOI 9 7] s%3 ,@/K1y37<A.C&G 5 #%)-/1508 >:BD 4X v)-/# 7@_ 2 4I . 0V "&&(n*.4N7:?X@G# .W%(-I. ,U 4 "{(*a/247<?AYEAG *|c b!#O%)l,/R328<@@DBEI* )P &=^ Z"\%* ,.286AE;I@ ;4 &V .>28?HBDI@  ~,  :0y* &u).90 8>@3DI@  '+.02{7F<2>@BFH  5V@ "&z(=*.69y;S>CHu) TVm$!displaycontextofitsparentasitsown.ThetypesetterrequiresTiogaArtworktolayoutthesizeofeachpieceofartwork.Atpresent,foralackofamoreclevertechnique,theartworkisinterpretedtwice:onceforlayoutsizing,andoncetorenderit.Thelayoutpassreliesonapassiveboundingboxdevicetogatherboundingboxinformationwithoutdisplayinganything.ThusafigurewithinTiogaArtworkmustbecapableofbeingrenderedtwice.CaptionswithinArtworkTiogaArtworkreliesonthetypesettertocomposetextcaptions.Thisprovidesboththehigh-qualitytextformattingalgorithmsimplementedinthetypesetterandtheidenticalstylemechanismfordefiningcaptionstyleswithinthedocument.Captionswithinartworkmustmeettwocriteria:1)theymustbenodeswithinanartworkbranch,and2)theymustnothaveanyartworkproperty(anyofArtwork,ArtworkImage,ArtworkFileName).TheFormatnameofthenodedetermineshowthetypesetterwillrenderthecaption.Thetypefamily,faceandsizearedeterminedbytheformatstylerule.HorizontaljustificationisdefinedbythelineFormattingstyleparameterwithinthemarginsestablishedbythestylerule.Formostsituations,azeroleftIndentprovidesconsistentplacement.UntilthelineLengthstyleparameterisinterpretedbytheTypesetter,youwillhavetocomputeyourownrightIndent:6.5inchesminusyourintendedlinelengthgivesthevalueforrightIndent.TiogaArtworkwillplacethecaptionatlocation(0,0)inthecurrentdisplaycontext.Thusitisexpectedthatasurroundingartworknodewilldoanappropriate.translatetoestablishthecaptionanchorposition.Intheabsenceofanyverticaljustificationstyleparameters(notyetdefinedbythetypesetterorTioga),thecaptionisplacedwiththetopofthecaptionaty=0.Hencethecaptiondescendsinthenegativeydirection.ThehorizontalplacementisdeterminedbythelineFormattingstyle:flushLeftimpliesplaceat(0,0)anddrawtotheright,flushRightimpliesplacethecaptiontotheleftof(0,0),andcentredimpliespositionthecentreofthecaptionwidthat(0,0).SomeLayoutTipsBackgroundBoxesDrawingabox(.moveto....lineto....lineto....lineto....lineto,notvia.drawbox)withanappropriatestyle(filledpathTypeandsomeareaColor)providesabackgroundforthefigure.Shadingusedinsomemagazinesandtextbookscanbeaccomplishedthisway.Forprintingonwhitepaper,choosealightcolor;forpreparinga35mmslideorvideotapeframe,chooseadarkcolor,traditionallyadarkblue.Positiontheboxsotheenclosedartworkisplacedasyoulikeit.ScalingtheArtworktoFitAtpresent,thelayoutprocessisiterativeandmanual.However,thebesttechniqueisacombinationofexperimentingwithJaMGraphicsandinteratingthetypesetdocument.IfyouexperimentwithJaMGraphics,thenyoucanimmortalizeyourscalingandpositioningparametersintherootnodeoftheartworkbranch.Ifnecessary,createanewartworknodeandusetheTiogaNestcommandtoplacetheartworkbranchunderneath.Thatnewnodeistheplacetoinsertthelayoutdirectives.IncludingOutputFromJaMProgramsThecomplicationhereistheartworkdictionaryusedtoredefinethegraphicsprimitives:.moveto,.lineto,and.callig.Also,youmustpreloadthemodulesthatregisteryourJaMGraphicscommands.SincetheartworkdictionaryisinyourwaywhenyouwishtoexecuteyourJaMprogram,usethefollowingtechniquetosuspendtheartworkdictionaryandlaterresumeit:".endwhat-ever-your-JaM-program-invocation-isartwork.begin".BepreparedforthefactthatTiogaArtworkexecutestheartworktwice:onceforlayoutsizedeterminationandasecondtimeforrendering.5p b)P+{)  _ gB"$^(*-/<2h57=?DFH  ^(   n#%p ,036?:y>A~DF \ 5/!"(+g/1M5;>_ E [# * %(.p138:>MDs W_~p T'O- "b$),R2y5; >8@ H7 R   !#&8 ,/2P8 ;CE Q"!',1<48*:@BgEH O9 ?#(%(I+.24:?C3E N  K fG %T(_* 138-:@]C<FS JFPN  #(^+0; 7g ?/@FAH H Z"% *g 1359==?C< I G i A '+A- 47>)? FH E ("B%( 0K26:>6CF D Ac !#m(+-{/49N>BuCE2 @  !#%r , 24+9<@EU > Lu4 %2(i /v2k49;>* DrF= =  rT = !$4)*.3*5:m@7ADII ;  T!#{ *,/U 8<BGZ :  8 s!#&(*p.05:@BFH 6js 3;v / 0p ,W "L&(A,.625m7>RAC +{=Gn" %|+,. 358L=#BxEG[ ) (l+0/*17^9=jAFqG (uN!"&).<247P;7 BD:G| &]s71$F%* +.r1v $p !F : $Z',35q8V>@AF I5  ! !$? *-2; =@, G A  I #'+.P 5j @zCfFH '% !"%*.803g59<CJDH <&  0#&'*\-/3i59 s x "p @ _! ("+Q,2H49 @F^  Eu!~#)t,K124v <DH :b !2%#(+-m269l?B@D 7"( 1+5:A=G/ 5(%*   'm 3%*-6216$9P;s?B  5  u) kTVm$6u)TVm$ TIMESROMANY HELVETICALAUREL TIMESROMAN TIMESROMAN TIMESROMAN TIMESROMAN n  ! T- 9:j/=;R7kTA.press 6-Jul-82 17:23:07