(~      !"#$%&'()*+,-./0123456789:;<= > ? @ A B C D E F G H I J K L M N O P Q R S T U V W X Y Z [ \ ] ^ _ ` ab c d e f g h i j k l m n o pqr s t u v w x y z { | } ~                                     ! " # $ % & ' ( ) * + , - . / 0 1 2 3 4 5 6 7 8 9 : ; < = > ? @ A B C D E F G H I J K L M N O P Q R S T U V W X Y Z [ \ ] ^ _ ` a b c d e f g h i j k l m n o p q r s t u v w xyz{|}portable experimentalmisc@NOSPAMalpheccar.org~~~~portable experimentalmisc@NOSPAMalpheccar.orgHyphenation databases )Create a custom language for hyphenation  Exceptions  Patterns )Is it a char used in hyphenation pattern Get numerical value for a char 7Convert a char from an hyphenation pattern to a number #Remove 0 contained between numbers <Split a patterns into a list of numbers :Convert a pattern into a list of number and a normal word &Remove hyphens from an excepyion word Get exception points portable experimentalmisc@NOSPAMalpheccar.orgList of exception List of hyphenation patterns portable experimentalmisc@NOSPAMalpheccar.orgportable experimentalmisc@NOSPAMalpheccar.org+#A monad where paths can be created A reference to a PDF object A Referenced objects A PDF rectangle A PDFDictionary  A PDFArray A PDFName object  +A PDFString containing a strict bytestring   A real number in a PDF document A length in a PDF document An integer in a PDF document Anonymous PDF object  PDF Objects  (Create a PDF string from an Haskell one 3Escape PDF characters which have a special meaning Am empty dictionary Get the reference value +   +   portable experimentalmisc@NOSPAMalpheccar.org&A PDF Color space  A PDF Pattern A PDF Resource CAdd a new G State to the G State dictionary for the given resource GState dictionary GState name must be unique G State content  Old resource  New resource )Convert the resource to a PDf dictionary $ $ portable provisionalmisc@NOSPAMalpheccar.orgA map of integers to values a. S The total size of subtrees is tracked by each node. It is needed for the PDF Tree QThe key function needed to export a Tree of PDF objects into the format defined  by the PDF spec  Parent ref  Node action  Leaf action PDFTree ,Final action and reference of the root node O(n)!. Number of elements in the map.  O(min(n,W))(. Lookup the value at a key in the map.  O(n*min(n,W))!. Create a map from a list of key/ value pairs.  portable experimentalmisc@NOSPAMalpheccar.org$Get the hyphen positions for a word +Get the hyphen positions from the patterns Hyphenate a string 2Hyphenation database to use to hyphenate the word Word to hyphenate portable experimentalmisc@NOSPAMalpheccar.org Action of going to an URL !" !"" ! !!"portable experimentalmisc@NOSPAMalpheccar.org#>A transformation matrix. An affine transformation a b c d e f   a b 0  c d 0  e f 1 $%&Angle 'Angle in radians (Angle in degrees )*Dot product of two points  '(dot (x :+ y) (a :+ b) == x * a + y * b'  '>dot z w == magnitude z * magnitude w * cos (phase z - phase w)' +,)projects the first point onto the second -!projects a point onto the x-axis .!projects a point onto the y-axis /Identity matrix 0#Specifies a matrix as three points  X component  Y component translation component 1Applies a matrix to a point 2Rotation matrix Rotation angle 3Translation matrix  '"transform (translate z) w == z + w' 45Scaling matrix Horizontal scaling Horizontal scaling #$%&'()*+,-./012345&('%#$)*+,-.01/2354#$$%&(''()*+,-./012345portable experimentalmisc@NOSPAMalpheccar.org6'A shading 78     9:;<=Viewer preferences >?To hide the toolbar @To hide the menubar ATo hide the window BFit window to screen CCenter window on screen DDisplay the docu,ent title E/Display mode when exiting the full screen mode FDocument page layout GHIJKLMDocument page mode NOPQRDocument metadata STUVWXYZTransition style [\]^_`aThe PDF Monad bDirection of a transition c Glitter only de Wipe only f Wipe only ghDirection of a transition ijkDimension of a transition lmnA PDF Transition o PDF Pages pList of all pages qA PDF Page object The PDF state Supply of unique identifiers Dictionary of PDF objects Pages Draw commands Reference to the PDF catalog Default page size  Document infos ! Root outline "6Reference to the current page used to create outlines #Width and height of xobjects $ Used to improve the outline API %The PDF Catalog &r' An XObject (s!A PDF Xobject which can be drawn t)*A PDF stream object +uThe drawing monad ,-vw./0123456789:;<=>?@ABCDEx A PDF color yzFGHIJKLMNOPQRS{An empty drawing Tis member of the dictionary UGet a new resource name VWOExecute the drawing commands to get a new state and an uncompressed PDF stream XYZ[|FDraw in a new drawing context without perturbing the previous context ( that is restored after the draw \*Set a resource in the resource dictionary  Dict name Resource value Old cache value New cache value ]Get the bounds for an xobject  Reference ^Get the bounds for an xobject  Reference _}`aInterpolation function ~>Apply a transformation matrix to the current coordinate frame #$/678     9:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopq !"#$%&r'st)*+uvw.3456789:;<=>?@ABCDExyzFGHIJKLMNOPQRS{TUVWZ[|\}`~68778       9<;::;<=>?@ABCDE>?@ABCDEFLKJIHGGHIJKLMQPONNOPQRSTUVWXYSTUVWXYZ`_^]\[[\]^_`abgfedccdefghjiijkmllmnoopq  !"#$ !"#$%&&r'st)t)*++uvww.3345675678 9:;<=>?@ABCDE9:;<=>?@ABCDExzyyzFGGHIJKLMIJKLMNOOPQRS{TUVWZ[|\}`~portable experimentalmisc@NOSPAMalpheccar.org1bcde Rendering mode for text display ,Unscaled unit (not scaled by the font size) The text monad fghijklmnopqr0Convert a dimension in font unit to device unit s9Get the kern value for a given font and pair of charcode tFont String 9List of chars and char width taking into account kerning uSelect a font to use Draw a text in the draw monad $Set position for the text beginning Display some text 4Start a new line (leading value must have been set) Set leading value Set the additional char space Set the additional word space Set scaling factor for text Choose the text rendering mode Set the rise value #Set the text transformation matrix 5Utility function to quickly display one line of text / / portable experimentalmisc@NOSPAMalpheccar.orgvSet page annotations wSet page resource x&Create a new empty content for a page List of drawing commands Reference to the drawing y Returns a new unique identifier zKAdd an object to the PDF object dictionary and return a PDF reference {*Update a referenced object with a new one  Reference to the initial object  New value |$Record the page in the page catalog Reference to the page  Page content Pages n the documents }Find a page in the catalog Reference to the page Pages in the document Page content if found ~Add a node PDFTree object  Parent node  Left tree  Right tree BPDF reference to the new node pointing to the left and right ones (Add a page to the PDG object dictionary Page parent if any Page reference  Page data  Reference to a PDFPages objects +Add all pages to the PDF object dictionary Empty page catalog #Reference to the last created page Record bound of an xobject  Reference Width Height vwxyz{|}vwxyz{|} portable experimentalmisc@NOSPAMalpheccar.org,Get the border shqpe depending on the style Create a new annotation object portable experimentalmisc@NOSPAMalpheccar.org Tiling type  Create a colored tiling pattern Left Bottom Right Top Horizontal step Vertical step Drawing commands #Create an uncolored tiling pattern Left Bottom Right Top Horizontal step Vertical step Drawing commands Create a PDF tiling pattern Left Bottom Right Top Horizontal step Vertical step Drawing commands Set the fill pattern Set the stroke pattern Set the fill pattern Set the stroke pattern  portable experimentalmisc@NOSPAMalpheccar.org !Set alpha value for transparency !Set alpha value for transparency !Init the PDF color space to RGB. Select the filling color Filling color Select the drawing color Drawing color xyz}xzy} portable experimentalmisc@NOSPAMalpheccar.org 6True if we are adding the first outline to this level Start a new outline level -We remember there are outlines at this level Close an outline level ?Create a new outline section pointing to the last created page Outline title Outline color Outline style 6Create a new outline section pointing to a given page Outline title Outline color Outline style Page reference Outline title Outline color Outline style Outline title Outline color Outline style Outline title Outline color Outline style 9:;<9<;: portable experimentalmisc@NOSPAMalpheccar.org5Line join styles Line cap styles Set pen width Set pen width  Set line cap Set line join Set the dash pattern No dash pattern Begin a new path at a position Close current path DAppend a cubic Bezier curve to the current path. The curve extends F from the current point to the point (x3 , y3), using (x1 , y1 ) and ' (x2, y2) as the Bezier control points 3Move pen to a given point without drawing anything >Draw a line from current point to the one specified by lineto 6Approximate a circular arc by one cubic bezier curve. + larger arc angles mean larger distortions Extent of arc Center of arc Add a polygon to current path Draw current path Fill current path Fill current path Set clipping path Set clipping path &Fill current path using even odd rule &Fill current path using even odd rule 555portable experimentalmisc@NOSPAMalpheccar.org$Fill clipping region with a shading Shading Shape to paint 678687portable experimentalmisc@NOSPAMalpheccar.org#A box that can be displayed  Draw a box The box Horizontal position 4Vertical position (top of the box and NOT baseline) GA box is an object with dimensions and used in the typesetting process  Box width Box Width of the box  Box height -Distance between box bottom and box baseline *Distance between box top and box baseline IStyle of text (sentences and words). Minimum definition textStyle QModify the look of a sentence (sequence of words using the same style on a line)  The style SFunction receiving the bounding rectangle and the command for drawing the sentence  The style Word styling function 3A style may contain data changed from word to word 'A style may change the height of words  Default implementation 0 styleHeight = getHeight . textFont . textStyle (A style may change the descent of lines  Default implementation 2 styleDescent = getDescent . textFont . textStyle FUsed to compare two style without taking into account the style state  ;What kind of style drawing function is required for a word , when word styling is enabled  Must style a glue  Must style a word  !Text style used by PDF operators  WScaling factor for normal space size (scale also the dilation and compression factors) #Scale the dilation factor of glues &Scale the compression factor of glues /Dimension of a box : width, height and descent A box containing a Draw value 9Make a drawing box. A box object containing a Draw value "     "        portable experimentalmisc@NOSPAMalpheccar.org`Breaking algorithm settings Default value 100 Default value 100 Default value 50 Default value 1000 Default value 1000 Default value 10 Default value false Default value English cA letter which can be anything. Sizes are widths and for glue the dilation and compression factors > For the generic letter, height and descent are also provided .A kern : non dilatable and non breakable glue A char Penalty  Hyphen point =A glue with style to know if it is part of the same sentence Any box as a letter  !"#$Make a letter from any box Dimension of the box "Text style of the box (can use t) Box !Compute glue width with dilation letter Adjustement ratio Width Maxw  Current w y z Dilatation ratio  adjust ratio Flag for previous Flag for current Demerit for the breakpoint hWe create a new breakpoint but we get the cumulated dimensions only at the next box following the break B since glues and penalties are removed at the beginning of a line *Get cumulated dimension for following box  Second pass Current analyzed box Result #Check is a break point is possible N otherwise, if none is possible and there is only one remaining active point,  we force a breakpoint Old r Current Actives Create an hyphen box Value modeling infinity Add a glue to the stream  Glue width Glue dilatation Glue compression  Return the standard space width  The style =How much dilatation is allowed compred to the space width >How much dilatation is allowed compared to the space width >How much dilatation is allowed compared to the space width Add a glue to the stream Paragraph settings  The style  The style {When a paragraph is full and we start a new one we must clean the beginning paragraph and remove what has been left by the  broken space Add a penalty to the stream Penalty value Create a box containing text  Char style  Char width  Char code Create boxes for the letters  Letter style Letter and size Boxes 4split a line into boxes and add hyphen where needed Create an hyphen penalty Style of future hyphen Size of hyphen taking into account the kerning that was perturbed by the hyphen introduction. The char before the hyphen is now bigger . !"#$. #"!  !"#$portable experimentalmisc@NOSPAMalpheccar.org+%Paragraph style &#Width of the line of the paragraph  The style 9Width of the text area used by the typesetting algorithm  Line number  Line width '`Horizontal shift of the line position relatively to the left egde of the paragraph bounding box  The style 9Width of the text area used by the typesetting algorithm  Line number 6Horizontal offset from the left edge of the text area (UHow to style the interline glues added in a paragraph by the line breaking algorithm  The style 'Function used to style interline glues )jChange the content of a paragraph before the line breaking algorithm is run. It may also change the style  The style >Line offset different from 0 when a paragraph has been broken !List of letters in the paragraph !Update style and list of letters *ZGet the paragraph bounding box and the paragraph draw command to apply additional effects  The style #Function used to style a paragraph +UContainer for vboxes (x,y,width,maxheight,height,currenty,current z, tolerance para) ^ tolerance para means a paragraph is not started if too close from the bottom edge of the box ,-./Default value (12,0.17,0.0) 0Default value (3.0,0.33,0.0) 1Default value 2 2 Glue height Glue dilatation factor Glue compression factor  Glue width  Glue delta 3PCreate a empty container to constraint the amount of line that can be displayed x y width height Pargraph tolerance New container 4Get the width of the container Get the width of the container 5 Get the height of the container 6@Get the current height of the container without glue dilatation 7=Get the content height of the container with glue dilatation 85Get the minimum left border of the container content 9pGet the maximum right border of the container content (maybe bigger than container width due to overfull lines) :Container horizontal position ;Container vertical position <NReturn the rectangle containing the text after formatting and glue dilatation .Get the required style for the interline glue Interline glue required AGet the delta used to position a box with non rectangular shapes Stroke the VBoxes List of boxes X pos Y pos $%&'()*+,-./0123456789:;<$%&'()*&'()*+,-./012./0123456789:;<portable experimentalmisc@NOSPAMalpheccar.orgOne block of text Stop the text Continue adding text )Send PDF commands needed to start a text  &An horizontal Hbox (sentence or word) ` The width of the glue was computed with the adjustement ratio of the HLine containing the glue m The width of the text is already taking into account the adjustement ratio of the HLine containing the Text - Otherwise, HBox cannot dilate or compress.     ?Current word (created from letter) is converted to a PDFString Adjustement ratio  Current word List of letters List of words or sentences horizontalPostProcess 5adjust ratio, hyphen style, list of letters or boxes List of lines "Change the style of the box A line of hboxes with an adjustement ratio required to display the text (generate the PDF command to increase space size) #data HLine = HLine !PDFFloat ![HBox] deriving(Show) Adjustement ratio Create an HBox Style String Width 3Draw a line of words and glue using the word style :Draw a line of words, glue, or any box without word style 2Draw only words and glues using PDF text commands <Height of the total line first time this function is called =Descent of the total line first time this function is called Remaining box to display x for the remaining boxes y for the whole line _Draw the additional displacement required for a space in a text due to the dilaton of the glue               portable experimentalmisc@NOSPAMalpheccar.org=Default vertical state  Default values  baselineskip = (12,0.17,0.0)  lineskip = (3.0,0.33,0.0)  lineskiplimit = 2 Pair of functions describing the shape of a text areas : horizontal position of each line, vertical top of the area, width of each line  First line is 1 A line of hboxes with an adjustement ratio required to display the text (generate the PDF command to increase space size) #data HLine = HLine !PDFFloat ![HBox] deriving(Show) Adjustement ratio  Container 2Create a new paragraph from the remaining letters  #Add paragraph lines to a container  Container >Fill a container with lines #Vertical style for interline glues  Container  VBox to add PComponent to draw, new container and remaining VBoxes due to overfull container !Convert pure lines to VBoxes  Max width List of lines  Line number List of VBoxes %&'()*,-./0123=>=>portable experimentalmisc@NOSPAMalpheccar.org?Standard styles for paragraphs @AStandard styles for sentences B?@AB?@@ABB portable experimentalmisc@NOSPAMalpheccar.org@CDEFGHIJKL:A MonadStyle where some typesetting operators can be used MSet the current text style NGet the current text style OpAdd a box using the current mode (horizontal or vertical. The current style is always applied to the added box) Width Height Descent P#Add a glue using the current style 5Size of glue (width or height depending on the mode) Dilatation factor Compression factor Q4Add a glue with no style (it is just a translation) 6Size of glue (width or height depending on the mode) Dilatation factor Compression factor R"#S$%&'()*TDisplay a formatted text in a given bounding rectangle with a given default paragraph style, a given default text style. No clipping k is taking place. Drawing stop when the last line is crossing the bounding rectangle in vertical direction  Text area default vertical style Default horizontal style Typesetting monad  Draw monad U%Return the list of Vboxes for a text default vertical style Default horizontal style Typesetting monad List of boxes VAdd a penalty +W,For a newline and end the current paragraph ,?End the current paragraph with or without using the same style OTrue if we use the same style to end a paragraph. false for an invisible style XY-:Run a paragraph. Style changes are local to the paragraph Z Get the current paragraph style [#Change the current paragraph style .Add a letter to the paragraph \ Add a new paragraph to the text /Add a null char nullChar :: Para () $nullChar = Para . tell $ [nullLetter] 0MSplit a sentence into words keeping the space but shortening them to 1 space 1]Add a text line ^]add a kern (space that can be dilated or compressed and on which no line breaking can occur) _`abcdefghijklmnopq"Centered, left or fully justified r:Draw a text box with relative position. Useful for labels x y  width limit  height limit default vertical style Default horizontal style Typesetting monad z      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrz     %&'()*LMNOPQRS,-./012+#"! CKJIHGFEDT]^V$W\XYZ[3>=U:;457986<regikmofhjlnpq_ac`bdAB?@0CKJIHGFEDDEFGHIJKLMNOPQMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqr portable experimentalmisc@NOSPAMalpheccar.orgs"No information for the document tCreate a PDF XObject Left Bottom Right Top Drawing commands 2Page size or default document's one Reference to the new page u!Add a new page to a PDF document Page size or default document's one Reference to the new page vPage size or default document's one Optional duration Optional transition Reference to the new page wDraw on a given page Page Drawing commands @=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`bcdefghijklmnorstuvw{|stuvw@ruvwtnoZ`_^]\[hjikmlbgfedcRSTUVWXYMQPONFLKJIHG=>?@ABCDEsustvw|{stuvwportable experimentalmisc@NOSPAMalpheccar.org'xA Jpeg PDF object yA Jpeg file 34File analyzer monad 56789:;<=>?@ABCDEFGHIJKLMNOPQRSTzORead a JPEG file and return an abstract description of its content or an error B The read is not lazy. The whole image will be loaded into memory {Get the JPEG bounds |vUse an abstract description of a Jpeg to return a PDFReference that can be used to manipulate the Jpeg in the context  of the PDF document xyz{|xy|z{xyz{|portable experimentalmisc@NOSPAMalpheccar.org UThe PDFTrailer VW2Create a new PDF document and return a first page 0 The page is using the document size by default XY=Save all the pages and streams in the main object dictionary ZWrite PDF objects in the TOC DList of objects each object being already converted to a bytestring [\}Generates a PDF document Name of the PDF document Default size for a page  PDF action   !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|} a}  qp~}] !"#$%&&'()*+,,-./0123456789:;<==>??@ABCDEFGHIJKLMNOPQRSTUVWXXYZ[\]^_`abcdefghijkllmnopqrstuvwxyz{|}~                                             w      !"#$%&'(#)*+,-./01234567789:;<=>?@ABCDEFGHIJK L M N O P Q R S T U V W X Y Z [ \ ] ^ _ ` a b c d e f g h i j k l m n o p q r s t u v w x y z { | } ~  %'z         !"##$%&'()*+,-.//01234566789:;<=>?@ABCDEFGHIJKLMNNOPQRSTUVWXYZ[\]^_`abcdefghijklmn o p q rstuvwxyz{|}~56 [  \                    !"#$%&'()*++,-./012 HPDF-1.4.1Graphics.PDF.Hyphenate Graphics.PDFGraphics.PDF.TextGraphics.PDF.PatternGraphics.PDF.ActionGraphics.PDF.CoordinatesGraphics.PDF.ShadingGraphics.PDF.NavigationGraphics.PDF.DocumentGraphics.PDF.ColorsGraphics.PDF.AnnotationGraphics.PDF.ShapesGraphics.PDF.TypesettingGraphics.PDF.ImageGraphics.PDF.Data.TrieGraphics.PDF.Hyphenate.LowLevelGraphics.PDF.Hyphenate.EnglishGraphics.PDF.LowLevel.Kern Graphics.PDF.LowLevel.SerializerGraphics.PDF.LowLevel.TypesGraphics.PDF.ResourcesGraphics.PDF.Data.PDFTreeGraphics.PDF.DrawGraphics.PDF.PagesGraphics.PDF.Typesetting.Box!Graphics.PDF.Typesetting.BreakingGraphics.PDF.Typesetting.Layout#Graphics.PDF.Typesetting.Horizontal!Graphics.PDF.Typesetting.Vertical&Graphics.PDF.Typesetting.StandardStyle MapStringHyphenationDatabaseCustomLanguageEnglish mkExceptionsmkCustomLanguage PDFReferencePDFRect PDFStringPDFFloat toPDFStringPDFColoredPatternPDFUncoloredPatternPDFFontFontName ZapfDingbatsSymbolCourier_BoldObliqueCourier_Oblique Courier_BoldCourierTimes_BoldItalic Times_Italic Times_Bold Times_RomanHelvetica_BoldObliqueHelvetica_ObliqueHelvetica_Bold Helvetica hyphenateGoToURLActionMatrixPointAngleRadianDegreetoRadiandotscalePtprojectprojectXprojectYidentity pointMatrix transformrotate translatespiralscale PDFShading RadialShading AxialShading OutlineStyle BoldOutline ItalicOutline NormalOutlinePDFViewerPreferences hideToolbar hideMenuBar hideWindowUI fitWindow centerWindowdisplayDoctitlenonFullScreenPageModePDFDocumentPageLayout TwoPageRight TwoPageLeftTwoColumnRight TwoColumnLeft OneColumn SinglePagePDFDocumentPageMode FullScreen UseThumbs UseOutlinesUseNonePDFDocumentInfoauthorsubjectpageMode pageLayoutviewerPreferences compressed PDFTransStyleGlitterDissolveWipeBoxBlindsSplitPDFPDFTransDirection2TopLeftToBottomRight TopToBottom RightToLeft BottomToTop LeftToRightPDFTransDirectionOutwardInwardPDFTransDimensionVertical Horizontal PDFTransitionPagesPDFPagePDFXForm PDFXObject drawXObjectDraw PDFGlobalsboundsColorHsvRgb emptyDrawingwithNewContexthsvToRgb applyMatrixTextMode AddToClipFillAndStrokeTextAndAddToClipStrokeTextAndAddToClipFillTextAndAddToClip InvisibleTextFillAndStrokeText StrokeTextFillText UnscaledUnitPDFText getDescent getHeight textWidth charWidthripTextsetFontdrawText textStart displayText startNewLineleading charSpace wordSpace textScale renderModerise setTextMatrixtextstandardViewerPrefsPDFLinkURLLinkTextAnnotationTextIconInsertHelpCommentKey NewParagraph ParagraphNote newAnnotation TilingTypeConstantSpacingAndFaster NoDistortionConstantSpacingcreateColoredTilingcreateUncoloredTilingsetColoredFillPatternsetColoredStrokePatternsetUncoloredFillPatternsetUncoloredStrokePatternblackwhiteredgreenbluesetStrokeAlpha setFillAlphasetRGBColorSpace fillColor strokeColor newSectionnewSectionWithPage DashPattern JoinStyle BevelJoin RoundJoin MiterJoinCapStyle SquareCapRoundCapButtCapPolygonCircleRoundRectangleEllipseArc RectangleLineShapeaddShapestrokefill fillAndStrokefillEOfillAndStrokeEOsetWidth setMiterLimit setLineCap setLineJoinsetDash setNoDash beginPath closePathaddBezierCubicmovetolinetocurvetoarcto addLineToPathaddPolygonToPath strokePathfillPathfillAndStrokePathsetAsClipPathEO setAsClipPath fillPathEOfillAndStrokePathEO applyShadingpaintWithShadingDisplayableBox strokeBoxboxWidth boxHeight boxDescent boxAscentStyle sentenceStyle wordStyle textStyle updateStyle styleHeight styleDescentComparableStyle isSameStyleAs StyleFunctionDrawGlueDrawWord TextStyletextFonttextStrokeColor textFillColortextModepenWidth scaleSpacescaleDilatationscaleCompression BoxDimension mkDrawBoxLetterKernACharPenaltyFlaggedPenaltyGlue JustificationRightJustificationLeftJustificationCenteredFullJustificationmkLetterParagraphStyle lineWidth linePosition interlineparagraphChangeparagraphStyle ContainerVBoxVerState baselineskiplineskip lineskiplimitcurrentParagraphStyle mkContainercontainerWidthcontainerHeightcontainerCurrentHeightcontainerContentHeightcontainerContentLeftBordercontainerContentRightBorder containerX containerYcontainerContentRectangledefaultVerState fillContainerStandardParagraphStyleNormalParagraph StandardStyleFont OrientationSWSENWNESNWE MonadStylesetStyle currentStyleaddBoxglue unstyledGlueParaTMdisplayFormattedTextgetBoxes addPenalty forceNewLineendPara startPara getParaStyle setParaStyle paragraphtxtkernsetBaseLineSkipgetBaseLineSkipsetLineSkipLimitgetLineSkipLimit setLineSkip getLineSkipsetFirstPassTolerancegetFirstPassTolerancesetSecondPassTolerancegetSecondPassTolerancesetHyphenPenaltyValuegetHyphenPenaltyValuesetFitnessDemeritgetFitnessDemeritsetHyphenDemeritgetHyphenDemeritsetLinePenaltygetLinePenaltysetJustification drawTextBoxstandardDocInfocreatePDFXFormaddPageaddPageWithTransition drawWithPagePDFJpegJpegFile readJpegFile jpegBounds createPDFJpegrunPdfTrie EmptyTriemyLookupfromListlookupinsert mkPatternsisChar fromDigittoNumbersimplifysplitsplit'convertPattern removeHyphenexceptionPoints exceptions exceptionListpatterns patternListkernscshortToStringcfloatToStringSerializeValue serializecons convertShort convertFloat MonadPathPDFReferencedObject PDFDictionaryPDFArrayPDFName PDFLength PDFInteger AnyPdfObject PdfObjecttoPDFencodeISO88591 escapeStringpc2wescapeOnWords8lparenrparenlbracketrbracketbspacebltbgtnewline noPdfObjectemptyDictionaryisEmptyDictionaryinsertInPdfDict pdfDictUnionreferenceValue modifyStrict PDFColorSpace PatternRGB AnyPdfPattern PDFResourceprocSet resourcesPdfResourceObjecttoRsrc FillAlpha StrokeAlphaFontSize emptyRsrc getResources addResourceresourceToDict emptyResourcePDFTreeBinTipNilMaskPrefixNat natFromInt intFromNatfold2isLeafkeyOfsizelookup'lookupNzeroNjoinzeronomatchmaskmaskW branchMaskhighestBitMaskshiftRLempty foldlStrictaddedExceptions getWordPointsgetFromPatternbase Data.Complexphase magnitudepolarcismkPolar conjugateimagPartrealPart:+Complex OutlineLoc OutlineCtxChildvalueparentleftsrightsTopTreeNodeOutline OutlineData DestinationPDFOutlineEntry PDFOutlineunPDFPDFPagesPdfState supplySrcobjectspagesstreamscatalog defaultRectdocInfooutline currentPage xobjectBound firstOutline PDFCatalog AnyPdfXFormprivateDrawXObject PDFStreamunDraw DrawTupledrawEnvironment drawStateRef builderRef penPositionDrawEnvironmentstreamId xobjectBoundD DrawState supplyNamesrsrc strokeAlphas fillAlphastheFontsxobjects otherRsrcsannots colorSpacesshadingsmatrix AnyAnnotationAnnotationObject addAnnotationannotationTypeannotationContentannotationRectannotationToGlobalCoordinatesAnnotationStyleemptyEnvironment readDrawST writeDrawST modifyDrawST pdfDictMember supplyNameemptyDrawState runDrawingpushMatrixStackpopMatrixStackmultiplyCurrentMatrixWith currentMatrix setResourcegetBoundInDraw getBoundInPDFfloatDirection getRgbColor interpolehasKern cgetDescent cgetAdvance cgetLeadingunText TextParametertctwtztlts fontState currentFont FontStatetrueSizegetKernc2idefaultParameterssetPageAnnotationssetPageResource createContentsupply addObject updateObject recordPagefindPagenodePageleafPageaddPagesnoPages insertRight insertDownup addOutlines createOutlinetoTreegetCurrentPage recordBoundapplyMatrixToRectangle getBorderstandardAnnotationDicttransformAnnotRect PaintTypeUncoloredTiling ColoredTilingcreateTilingPatternisFirststartNew addedOutlinecloseNewnewSectionPrivate newSiblingnewChild moveToParentAnyBoxDrawBox ActiveNodes PossibleBreakZListMaybeCBOneCBNoCBBRStatefirstPassTolerancesecondPassTolerancehyphenPenaltyValuefitness_demeritflagged_demerit line_penaltycentered hyphenation BreakNode totalWidthtotalDilatationtotalCompressiondemeritflagged fitnessValueratioprevious PointedBox isFlagged getPenalty isPenaltyletterposition cumulatedW cumulatedY cumulatedZ isForcedBreakCB MaybeGlueglueYglueZglueSizeWithRatioglueSize letterWidth penaltyWidthdilatationRatio adjustRatiobadnessfitnessdefaultBreakingSettingscomputeDemerit createZListtheEndcreateBreaknodebreakNgetDim moveRightisFeasibleBreakpoint updateBreakupdateWithNewRIfNoSolutiongetNewActiveBreakpoints genNodeList analyzeBoxes hyphenBoxcutList formatListinfinitybigAdjustRatioglueBox spaceWidthcenteredDilatationFactorleftDilatationFactorrightDilatationFactor spaceGlueBox spaceSizehyphenForJustificationpenalty createCharcreateLetterBoxes splitText hyphenPenaltykernBoxHeightWidthSomeVBoxVGluenotGluevgluecontainerParaTolerancegetInterlineStyle interlineGlueaddTo isOverfull getBoxDeltaisSameParaStylerecurseStrokeVBoxesdrawWithParaStyle strokeVBoxesTextDrawingStateOneBlockStopText ContinueText StartTextHBoxSomeHBoxTextHGluesaveCurrentword createWordshorizontalPostProcess withNewStylemkHboxWithRatio createText drawTextLine drawWords drawPureWordsstartDrawingNewLineOfTextdrawLineOfHboxesdrawTheTextBox drawTextGlue isSameStylemkVboxWithRatio dilateVboxes drawContainer createPara addParaLinetoVBoxesunParaunTMTMStatetmStyle paraSettings pageSettingsdefaultTmStateendFullyJustifiedrunPara addLettermyWords'myWords addHyphenscreateANewPageFAunFAm_sof0m_sof1m_sof3m_sof5m_sof6m_sof7m_sof9m_sof10m_sof11m_sof13m_sof14m_sof15m_rst0m_rst1m_rst2m_rst3m_rst4m_rst5m_rst6m_rst7m_soim_eoim_temiorunFA readWord16 readWord8parseJpegContent analyzeJpegwithFile PDFTrailer createPDF createStreams saveObjectswriteObjectsAndCreateTocdefaultPdfSettingscreateObjectByteStrings