h&      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstu v w x y z { | } ~                                                                                                          "(c) 2006-2016, alpheccar.org BSD-stylemisc@NOSPAMalpheccar.org experimentalportable Safe-Inferred  Safe-Inferred @(c) 2006-2016, alpheccar.org BSD-stylemisc@NOSPAMalpheccar.org experimentalportable Safe-Inferred (c) 2006-2016, alpheccar.org BSD-stylemisc@NOSPAMalpheccar.org experimentalportable Safe-Inferred "aHPDF"A monad where paths can be createdHPDFA reference to a PDF objectHPDFA Referenced objectsHPDFA PDF rectangleHPDFA PDFDictionaryHPDF A PDFArrayHPDFA PDFName objectHPDF7 bit encoded ASCII stringHPDF7 bit encoded ASCII stringHPDF,A list of glyph to be used in text operatorsHPDF,A list of glyph to be used in text operatorsHPDFA PDFString containing a strict bytestring (serialied as UTF16BE)HPDFA real number in a PDF documentHPDFA length in a PDF documentHPDFAn integer in a PDF documentHPDFAnonymous PDF objectHPDF PDF ObjectsHPDF'Create a PDF string from an Haskell oneHPDFAm empty dictionaryHPDFGet the reference value(c) 2006-2016, alpheccar.org BSD-stylemisc@NOSPAMalpheccar.org experimentalportable Safe-Inferred`!   !"#$%&'!$%&   !"# '(c) 2006-2016, alpheccar.org BSD-stylemisc@NOSPAMalpheccar.org experimentalportable Safe-Inferred8'(c) Daan Leijen 2002 BSD-stylemisc@NOSPAMalpheccar.org provisionalportable Safe-InferredHPDFA map of integers to values a. The total size of subtrees is tracked by each node. It is needed for the PDF TreeHPDFThe key function needed to export a Tree of PDF objects into the format defined by the PDF specHPDFO(n) . Number of elements in the map.HPDF O(min(n,W))'. Lookup the value at a key in the map.HPDF O(n*min(n,W)).. Create a map from a list of key/value pairs.HPDF Parent refHPDF Node actionHPDF Leaf actionHPDFPDFTreeHPDF+Final action and reference of the root node (c) 2006-2016, alpheccar.org BSD-stylemisc@NOSPAMalpheccar.org experimentalportable Safe-Inferred3HPDF=A transformation matrix. An affine transformation a b c d e f a b 0 c d 0 e f 1 6HPDFAngle 7HPDFAngle in degrees8HPDFAngle in radians:HPDFDot 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)'<HPDF(projects the first point onto the second=HPDF projects a point onto the x-axis>HPDF projects a point onto the y-axis?HPDFIdentity matrix@HPDF"Specifies a matrix as three pointsAHPDFApplies a matrix to a pointBHPDFRotation matrixCHPDFTranslation matrix 'transform (translate z) w == z + w' EHPDFScaling matrix @HPDF X componentHPDF Y componentHPDFtranslation componentBHPDFRotation angleEHPDFHorizontal scalingHPDFVertical scaling3456789:;<=>?@ABCDE6785349:;<=>@A?BCED(c) 2006-2016, alpheccar.org BSD-stylemisc@NOSPAMalpheccar.org experimentalportable Safe-InferredIHPDFAction of going to an URLIJKKIJ(c) 2006-2016, alpheccar.org BSD-stylemisc@NOSPAMalpheccar.org experimentalportable Safe-InferredHPDFA PDF Color spacePHPDF A PDF PatternHPDFA PDF ResourceHPDFAdd a new G State to the G State dictionary for the given resourceHPDF(Convert the resource to a PDf dictionaryHPDFGState dictionaryHPDFGState name must be uniqueHPDFG State contentHPDF Old resourceHPDF New resourceOP(c) 2006-2016, alpheccar.org BSD-stylemisc@NOSPAMalpheccar.org experimentalportable Safe-Inferred58C $&QRSTUVWXYZ[\]^_`aUVWXYZ[\]$&QRST ^_`a(c) 2006-2016, alpheccar.org BSD-stylemisc@NOSPAMalpheccar.org experimentalportable Safe-Inferred8QHPDFGlyph name to unicodeHPDF/Glyph name to glyph code if not standard coding(c) 2006-2016, alpheccar.org BSD-stylemisc@NOSPAMalpheccar.org experimentalportable Safe-Inferred8 $Uijklmnop U$lmkijnop (c) 2006-2016, alpheccar.org BSD-stylemisc@NOSPAMalpheccar.org experimentalportable Safe-Inferred8$Uuvwxyz{|}~U$wxyz{|}~uv(c) 2006-2016, alpheccar.org BSD-stylemisc@NOSPAMalpheccar.org experimentalportable Safe-Inferred &p4HPDF&A shading HPDFViewer preferencesHPDFTo hide the toolbarHPDFTo hide the menubarHPDFTo hide the windowHPDFFit window to screenHPDFCenter window on screenHPDFDisplay the docu,ent titleHPDF.Display mode when exiting the full screen modeHPDFDocument page layoutHPDFDocument page modeHPDFDocument metadataHPDFTransition styleHPDF The PDF MonadHPDFDirection of a transitionHPDF Wipe onlyHPDF Wipe onlyHPDF Glitter onlyHPDFDirection of a transitionHPDFDimension of a transitionHPDFA PDF TransitionHPDF PDF PagesHPDFList of all pagesHPDFA PDF Page objectHPDF The PDF stateHPDFSupply of unique identifiersHPDFDictionary of PDF objectsHPDFPagesHPDF Draw commandsHPDFReference to the PDF catalogHPDFDefault page sizeHPDFDocument infosHPDF Root outlineHPDF5Reference to the current page used to create outlinesHPDFWidth and height of xobjectsHPDFUsed to improve the outline APIHPDFThe PDF CatalogHPDF An XObjectHPDF A PDF Xobject which can be drawnHPDFA PDF stream objectHPDFThe drawing monadHPDF A PDF colorHPDFAn empty drawingHPDFis member of the dictionaryHPDFGet a new resource nameHPDFExecute the drawing commands to get a new state and an uncompressed PDF streamHPDFDraw in a new drawing context without perturbing the previous context that is restored after the draw HPDF)Set a resource in the resource dictionaryHPDFGet the bounds for an xobjectHPDFGet the bounds for an xobjectHPDFInterpolation functionHPDF=Apply a transformation matrix to the current coordinate frameHPDF Dict nameHPDFResource valueHPDFOld cache valueHPDFNew cache valueHPDF ReferenceHPDF Reference34?(c) 2006-2016, alpheccar.org BSD-stylemisc@NOSPAMalpheccar.org experimentalportable Safe-Inferred-rHPDFSet page annotationsHPDFSet page resourceHPDF%Create a new empty content for a pageHPDFReturns a new unique identifierHPDFAdd an object to the PDF object dictionary and return a PDF reference HPDF)Update a referenced object with a new oneHPDF#Record the page in the page catalogHPDFFind a page in the catalogHPDFAdd a node PDFTree objectHPDF'Add a page to the PDG object dictionaryHPDF*Add all pages to the PDF object dictionaryHPDFEmpty page catalogHPDF"Reference to the last created pageHPDFRecord bound of an xobjectHPDFCreate an embedded fontHPDFCreate a type 1 font HPDFList of drawing commandsHPDFReference to the drawingHPDFReference to the initial objectHPDF New valueHPDFReference to the pageHPDF Page contentHPDFPages n the documentsHPDFReference to the pageHPDFPages in the documentHPDFPage content if foundHPDF Parent nodeHPDF Left treeHPDF Right treeHPDFPDF reference to the new node pointing to the left and right onesHPDFPage parent if anyHPDFPage referenceHPDF Page dataHPDFReference to a PDFPages objectsHPDF ReferenceHPDFWidthHPDFHeight(c) 2006-2016, alpheccar.org BSD-stylemisc@NOSPAMalpheccar.org experimentalportable Safe-Inferred0HPDF Tiling typeHPDFCreate a colored tiling patternHPDF"Create an uncolored tiling patternHPDFCreate a PDF tiling patternHPDFSet the fill patternHPDFSet the stroke patternHPDFSet the fill patternHPDFSet the stroke patternHPDFLeftHPDFBottomHPDFRightHPDFTopHPDFHorizontal stepHPDF Vertical stepHPDFDrawing commandsHPDFLeftHPDFBottomHPDFRightHPDFTopHPDFHorizontal stepHPDF Vertical stepHPDFDrawing commandsHPDFLeftHPDFBottomHPDFRightHPDFTopHPDFHorizontal stepHPDF Vertical stepHPDFDrawing commands OP OP (c) 2006-2016, alpheccar.org BSD-stylemisc@NOSPAMalpheccar.org experimentalportable Safe-Inferred4_HPDF5True if we are adding the first outline to this levelHPDFStart a new outline level HPDF,We remember there are outlines at this levelHPDFClose an outline levelHPDF>Create a new outline section pointing to the last created pageHPDF5Create a new outline section pointing to a given pageHPDF Outline titleHPDF Outline colorHPDF Outline styleHPDF Outline titleHPDF Outline colorHPDF Outline styleHPDFPage referenceHPDF Outline titleHPDF Outline colorHPDF Outline styleHPDF Outline titleHPDF Outline colorHPDF Outline styleHPDF Outline titleHPDF Outline colorHPDF Outline style(c) 2006-2016, alpheccar.org BSD-stylemisc@NOSPAMalpheccar.org experimentalportable Safe-Inferred8HPDF A raw imageHPDFA Jpeg PDF objectHPDFFile analyzer monadHPDFA Jpeg file HPDFRead a JPEG file and return an abstract description of its content or an error The read is not lazy. The whole image will be loaded into memoryHPDFGet the JPEG boundsHPDFUse an abstract description of a Jpeg to return a PDFReference that can be used to manipulate the Jpeg in the context of the PDF documentHPDFReads a data URL string, and returns a JpegFile. The incoming string must be a correctly formatted data URL for a JPEG. You can convert jpeg files to data URLs at the following web site: http://dataurl.net/#dataurlmakerHPDFWidthHPDFHeightHPDF InterpolationHPDFDecompression filter to be sued by the PDF reader to render the pictureHPDF RGB pixelsHPDFWidthHPDFHeightHPDF InterpolationHPDF5ARGB pixels (A component not used y the PDF document) (c) 2006-2016, alpheccar.org BSD-stylemisc@NOSPAMalpheccar.org experimentalportable Safe-Inferred;HPDF!No information for the document HPDFCreate a PDF XObjectHPDF Add a new page to a PDF documentHPDFDraw on a given pageHPDFLeftHPDFBottomHPDFRightHPDFTopHPDFDrawing commandsHPDF#Page size or default document's oneHPDFReference to the new pageHPDF#Page size or default document's oneHPDFReference to the new pageHPDF#Page size or default document's oneHPDFOptional durationHPDFOptional transitionHPDFReference to the new pageHPDFPageHPDFDrawing commands(c) 2006-2016, alpheccar.org BSD-stylemisc@NOSPAMalpheccar.org experimentalportable Safe-Inferred=HPDF+Get the border shqpe depending on the styleHPDFCreate a new annotation object (c) 2006-2016, alpheccar.org BSD-stylemisc@NOSPAMalpheccar.org experimentalportable Safe-Inferred?HPDF Set alpha value for transparencyHPDF Set alpha value for transparencyHPDF Init the PDF color space to RGB.HPDFSelect the filling colorHPDFSelect the drawing colorHPDF Filling colorHPDF Drawing color(c) 2006-2016, alpheccar.org BSD-stylemisc@NOSPAMalpheccar.org experimentalportable Safe-InferredDYHPDFLine join stylesHPDFLine cap stylesHPDF Set pen widthHPDF Set pen widthHPDF Set line capHPDF Set line joinHPDFSet the dash patternHPDFNo dash patternHPDFBegin a new path at a positionHPDFClose current path HPDFAppend a cubic Bezier curve to the current path. The curve extends from the current point to the point (x3 , y3), using (x1 , y1 ) and (x2, y2) as the Bezier control pointsHPDF2Move pen to a given point without drawing anythingHPDF=Draw a line from current point to the one specified by linetoHPDFApproximate a circular arc by one cubic bezier curve. larger arc angles mean larger distortionsHPDFAdd a polygon to current pathHPDFDraw current pathHPDFFill current pathHPDFFill current pathHPDFSet clipping pathHPDFSet clipping pathHPDF%Fill current path using even odd ruleHPDF%Fill current path using even odd ruleHPDF Extent of arcHPDF Center of arc55 (c) 2006-2016, alpheccar.org BSD-stylemisc@NOSPAMalpheccar.org experimentalportable Safe-InferredFHPDF#Fill clipping region with a shadingHPDFShadingHPDFShape to paint(c) 2006-2016, alpheccar.org BSD-stylemisc@NOSPAMalpheccar.org experimentalportable Safe-Inferred8INHPDFRendering mode for text displayHPDF+Unscaled unit (not scaled by the font size)HPDFThe text monad HPDFSelect a font to useHPDFDraw a text in the draw monadHPDF#Set position for the text beginningHPDFDisplay glyphsHPDF Display textHPDF3Start a new line (leading value must have been set)HPDFSet leading valueHPDFSet the additional char spaceHPDFSet the additional word spaceHPDFSet scaling factor for textHPDFChoose the text rendering modeHPDFSet the rise valueHPDF"Set the text transformation matrixHPDF4Utility function to quickly display one line of text-QRwxyz{|}~-QRwxyz{|}~(c) 2006-2016, alpheccar.org BSD-stylemisc@NOSPAMalpheccar.org experimentalportable Safe-InferredQ`HPDFA box that can be displayedHPDF Draw a boxHPDFA box is an object with dimensions and used in the typesetting processHPDF Box widthHPDF Box heightHPDF,Distance between box bottom and box baselineHPDF)Distance between box top and box baselineHPDFStyle of text (sentences and words). Minimum definition textStyle HPDFModify the look of a sentence (sequence of words using the same style on a line)HPDF2A style may contain data changed from word to wordHPDF&A style may change the height of words Default implementation styleHeight = getHeight . textFont . textStyleHPDF'A style may change the descent of lines Default implementation styleDescent = getDescent . textFont . textStyleHPDFUsed to compare two style without taking into account the style stateHPDFWhat kind of style drawing function is required for a word when word styling is enabled HPDFMust style a wordHPDFMust style a glueHPDF Text style used by PDF operatorsHPDFScaling factor for normal space size (scale also the dilation and compression factors)HPDF"Scale the dilation factor of gluesHPDF%Scale the compression factor of gluesHPDF.Dimension of a box : width, height and descentHPDFA box containing a Draw valueHPDF8Make a drawing box. A box object containing a Draw valueHPDFThe boxHPDFHorizontal positionHPDF3Vertical position (top of the box and NOT baseline)HPDFBoxHPDFWidth of the boxHPDF The styleHPDFFunction receiving the bounding rectangle and the command for drawing the sentenceHPDF The styleHPDFWord styling function#(c) 2006-2016, alpheccar.org BSD-stylemisc@NOSPAMalpheccar.org experimentalportable Safe-InferredR|HPDFSplit a sentence into words keeping the space but shortening them to 1 space(c) 2006-2016, alpheccar.org BSD-stylemisc@NOSPAMalpheccar.org experimentalportable Safe-Inferred(^$!HPDFBreaking algorithm settings HPDFDefault value 100HPDFDefault value 100HPDFDefault value 50HPDFDefault value 1000HPDFDefault value 1000HPDFDefault value 10HPDFDefault value falseHPDFA 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 providedHPDFAny box as a letterHPDFCurrent word (created from letter) is converted to a PDFStringHPDFhorizontalPostProcessHPDF!Change the style of the box HPDFA 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)HPDFCreate an HBox HPDF2Draw a line of words and glue using the word styleHPDF9Draw a line of words, glue, or any box without word styleHPDF1Draw only words and glues using PDF text commandsHPDFDraw the additional displacement required for a space in a text due to the dilaton of the glueHPDFAdjustement ratioHPDF Current wordHPDFList of lettersHPDFList of words or sentencesHPDF4adjust ratio, hyphen style, list of letters or boxesHPDF List of linesHPDFAdjustement ratioHPDFStyleHPDFList of glyphsHPDFWidthHPDF;Height of the total line first time this function is calledHPDFEnd the current paragraph with or without using the same styleHPDF9Run a paragraph. Style changes are local to the paragraphHPDF1Get the current writing system for the paragraph HPDFGet the current paragraph styleHPDF"Change the current paragraph styleHPDFAdd a letter to the paragraphHPDFAdd a new paragraph to the textHPDFAdd a null char nullChar :: Para () nullChar = Para . tell $ [nullLetter]Add a text lineHPDFadd a kern (space that can be dilated or compressed and on which no line breaking can occur)HPDF9Draw a text box with relative position. Useful for labelsHPDFWidthHPDFHeightHPDFDescentHPDF4Size of glue (width or height depending on the mode)HPDFDilatation factorHPDFCompression factorHPDF5Size of glue (width or height depending on the mode) HPDFDilatation factor HPDFCompression factor HPDF Text areaHPDFdefault vertical styleHPDFDefault horizontal styleHPDFTypesetting monadHPDF Draw monadHPDFdefault vertical styleHPDFDefault horizontal styleHPDFTypesetting monadHPDF List of boxesHPDFTrue if we use the same style to end a paragraph. false for an invisible styleHPDF!Centered, left or fully justifiedHPDFxHPDFyHPDF width limitHPDF height limitHPDFdefault vertical styleHPDFDefault horizontal styleHPDFTypesetting monad(c) 2006-2016, alpheccar.org BSD-stylemisc@NOSPAMalpheccar.org experimentalportable Safe-InferredaHPDFThe PDFTrailerHPDFCreate a new PDF document and return a first page The page is using the document size by defaultHPDF?@ABCDEIJKOPQRSTU]\[ZYXVW^_`aijklmnopuvw~}|{zyx #$%%&&'()*+,-./0123456789:;<=>?@ABCCDDEFGHIJKLMNOPQRRSTUVWXYZ[\]^_`abcdefgghijklmnnoopqrstuvwxyz{|}~                                             !!""""$'q                            !!!!!!HPDF-1.6.2-4an012f2HNdAoKzDdgoCZsGraphics.PDF.Fonts.Font Graphics.PDFGraphics.PDF.Fonts.FontTypesGraphics.PDF.AnnotationGraphics.PDF.CoordinatesGraphics.PDF.ActionGraphics.PDF.PatternGraphics.PDF.Fonts.Type1Graphics.PDF.Fonts.StandardFontGraphics.PDF.ShadingGraphics.PDF.NavigationGraphics.PDF.DocumentGraphics.PDF.ColorsGraphics.PDF.ImageGraphics.PDF.ShapesGraphics.PDF.TextGraphics.PDF.Typesetting&Graphics.PDF.Typesetting.WritingSystemGraphics.PDF.Data.TrieGraphics.PDF.Documentation Graphics.PDF.LowLevel.SerializerGraphics.PDF.LowLevel.TypesGraphics.PDF.Fonts.EncodingGraphics.PDF.Data.PDFTreeGraphics.PDF.ResourcesGraphics.PDF.Fonts.AFMParserGraphics.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 EmbeddedFont PDFReferencePDFRect GlyphCode PDFStringPDFFloat toAsciiStringFontData Type1Data FontStructureFSbaseFontdescentascentheight widthData kernMetricshyphenspaceencodingfontBBox italicAngle capHeight fixedPitchserifsymbolicscript nonSymbolicitalicallCapsmallCap forceBold GlyphPair GlyphSizeFontSizemkFlags$fShowFontStructure $fEqGlyphPair$fOrdGlyphPair$fShowGlyphPair $fEqGlyphSize$fOrdGlyphSize$fNumGlyphSize$fIntegralGlyphSize$fEnumGlyphSize$fRealGlyphSize$fShowGlyphSizeMatrixPointAngleDegreeRadiantoRadiandotscalePtprojectprojectXprojectYidentity pointMatrix transformrotate translatespiralscale $fNumMatrix $fEqMatrix $fShowMatrixGoToURLAction$fPdfLengthInfoGoToURL$fActionGoToURL$fPdfObjectGoToURLPDFColoredPatternPDFUncoloredPatternPDFFontAnyFontIsFontname getDescent getHeightgetKern glyphWidth hyphenGlyph spaceGlyph charGlyphemptyFontStructurefontSizetrueSize readFontData $fOrdAnyFont $fEqAnyFont$fIsFontAnyFont$fPdfResourceObjectAnyFont $fOrdPDFFont $fEqPDFFont $fShowAnyFontType1FontStructureAFMData Type1Font readAfmData parseAfmDatamkType1FontStructure$fPdfResourceObjectType1Font$fIsFontType1Font $fShowAFMData$fShowType1FontStdFontFontName HelveticaHelvetica_BoldHelvetica_ObliqueHelvetica_BoldOblique Times_Roman Times_Bold Times_ItalicTimes_BoldItalicCourier Courier_BoldCourier_ObliqueCourier_BoldObliqueSymbol ZapfDingbats embeddedFont mkStdFont$fShowFontName$fIsFontStdFont$fPdfResourceObjectStdFont $fShowStdFont $fEqFontName $fOrdFontName$fEnumFontName PDFShading AxialShading RadialShading OutlineStyle NormalOutline ItalicOutline BoldOutlinePDFViewerPreferences hideToolbar hideMenuBar hideWindowUI fitWindow centerWindowdisplayDoctitlenonFullScreenPageModePDFDocumentPageLayout SinglePage OneColumn TwoColumnLeftTwoColumnRight TwoPageLeft TwoPageRightPDFDocumentPageModeUseNone UseOutlines UseThumbs FullScreenPDFDocumentInfoauthorsubjectpageMode pageLayoutviewerPreferences compressed PDFTransStyleSplitBlindsBoxWipeDissolveGlitterPDFPDFTransDirection2 LeftToRight BottomToTop RightToLeft TopToBottomTopLeftToBottomRightPDFTransDirectionInwardOutwardPDFTransDimension HorizontalVertical PDFTransitionPagesPDFPagePDFXForm PDFXObject drawXObjectDraw PDFGlobalsboundsColorRgbHsv emptyDrawingwithNewContexthsvToRgb applyMatrixstandardViewerPrefs readType1Font mkType1Font TilingTypeConstantSpacing NoDistortionConstantSpacingAndFastercreateColoredTilingcreateUncoloredTilingsetColoredFillPatternsetColoredStrokePatternsetUncoloredFillPatternsetUncoloredStrokePattern$fEqTilingType$fEnumTilingType $fEqPaintType$fEnumPaintType newSectionnewSectionWithPageRawImagePDFJpeg PDFFilterASCIIHexDecode ASCII85Decode LZWDecode FlateDecodeRunLengthDecodeCCITTFaxDecode DCTDecodeNoFilterJpegFile readJpegFile jpegBounds createPDFJpegcreatePDFRawImageFromByteStringcreatePDFRawImageFromARGBreadJpegDataURL$fPdfResourceObjectPDFReference$fPdfLengthInfoPDFJpeg$fPdfObjectPDFJpeg$fPDFXObjectPDFJpeg $fPdfResourceObjectPDFReference0$fPdfLengthInfoRawImage$fPdfObjectRawImage$fPDFXObjectRawImage $fMonadFA$fApplicativeFA$fMonadError[]FA $fFunctorFAstandardDocInfocreatePDFXFormaddPageaddPageWithTransition drawWithPagePDFLinkURLLinkTextAnnotationTextIconNote Paragraph NewParagraphKeyCommentHelpInsert newAnnotation $fAnnotationObjectTextAnnotation$fPdfLengthInfoTextAnnotation$fPdfObjectTextAnnotation$fAnnotationObjectURLLink$fPdfLengthInfoURLLink$fPdfObjectURLLink$fAnnotationObjectPDFLink$fPdfLengthInfoPDFLink$fPdfObjectPDFLink $fEqTextIcon$fShowTextIconblackwhiteredgreenbluesetStrokeAlpha setFillAlphasetRGBColorSpace fillColor strokeColor DashPattern JoinStyle MiterJoin RoundJoin BevelJoinCapStyleButtCapRoundCap SquareCapPolygonCircleRoundRectangleEllipseArc RectangleLineShapeaddShapestrokefill fillAndStrokefillEOfillAndStrokeEOsetWidth setMiterLimit setLineCap setLineJoinsetDash setNoDash beginPath closePathaddBezierCubicmovetolinetocurvetoarcto addLineToPathaddPolygonToPath strokePathfillPathfillAndStrokePathsetAsClipPathEO setAsClipPath fillPathEOfillAndStrokePathEO $fShapeLine$fShapeRectangle $fShapeArc$fShapeEllipse$fShapeRoundRectangle $fShapeCircle$fShapePolygon$fEqDashPattern $fEqJoinStyle$fEnumJoinStyle $fEqCapStyle$fEnumCapStyle $fEqCircle$fEqRoundRectangle $fEqEllipse$fEqArc $fEqRectangle$fEqLine applyShadingpaintWithShadingTextModeFillText StrokeTextFillAndStrokeText InvisibleTextFillTextAndAddToClipStrokeTextAndAddToClipFillAndStrokeTextAndAddToClip AddToClip UnscaledUnitPDFText textWidthpdfGlyphsetFontdrawText textStartglyph displayGlyphs displayText startNewLineleading charSpace wordSpace textScale renderModerise setTextMatrixtext$fMonadPathPDFText $fEqTextMode $fOrdTextMode$fEnumTextMode$fMonadPDFText$fApplicativePDFText$fFunctorPDFText$fMonadWriterBuilderPDFText $fMonadStateTextParameterPDFTextDisplayableBox strokeBoxboxWidth boxHeight boxDescent boxAscentStyle sentenceStyle wordStyle textStyle updateStyle styleHeight styleDescentComparableStyle isSameStyleAs StyleFunctionDrawWordDrawGlue TextStyletextFonttextStrokeColor textFillColortextModepenWidth scaleSpacescaleDilatationscaleCompression BoxDimension mkDrawBox styleFont WritingSystemLatinUnknownWritingSystemmapToSpecialGlyphsLetterGlueFlaggedPenaltyPenaltyAGlyphKern JustificationFullJustificationCenteredLeftJustificationRightJustificationmkLetterParagraphStyle lineWidth linePosition interlineparagraphChangeparagraphStyle ContainerVBoxVerState baselineskiplineskip lineskiplimitcurrentParagraphStyle mkContainercontainerWidthcontainerHeightcontainerCurrentHeightcontainerContentHeightcontainerContentLeftBordercontainerContentRightBorder containerX containerYcontainerContentRectangledefaultVerState fillContainerStandardParagraphStyleNormalParagraph StandardStyleFont OrientationEWNSNENWSESW MonadStylesetStyle currentStyleaddBoxglue unstyledGlueParaTMdisplayFormattedTextgetBoxes addPenalty forceNewLineendPara startParagetWritingSystemsetWritingSystem getParaStyle setParaStyle paragraphtxtkernsetBaseLineSkipgetBaseLineSkipsetLineSkipLimitgetLineSkipLimit setLineSkip getLineSkipsetFirstPassTolerancegetFirstPassTolerancesetSecondPassTolerancegetSecondPassTolerancesetHyphenPenaltyValuegetHyphenPenaltyValuesetFitnessDemeritgetFitnessDemeritsetHyphenDemeritgetHyphenDemeritsetLinePenaltygetLinePenaltysetJustification drawTextBox$fMonadStylesPara$fMonadStylesTM$fEqOrientation$fShowOrientation $fMonadPara$fApplicativePara$fMonadWriter[]Para$fMonadReaderBRStatePara$fMonadStatesPara $fFunctorPara $fMonadTM$fApplicativeTM$fMonadWriter[]TM$fMonadStateTMStateTM $fFunctorTM pdfByteStringrunPdf$fPdfLengthInfoPDFTrailer$fPdfObjectPDFTrailer MapStringTrie EmptyTriefromListlookupinsertSerializeValuecons serialize MonadPathPDFReferencedObject PDFDictionaryPDFArrayPDFNameEscapedAsciiString AsciiStringEscapedPDFGlyphPDFGlyph PDFLength PDFInteger AnyPdfObject PdfObject toPDFStringemptyDictionaryreferenceValue HasHexaStream toHexaStream MaybeLength KnownLength UnknownLength PdfLengthInfo pdfLengthInfotoPDF SpecialChar NormalSpace BiggerSpaceBreakingHyphen NormalChar escapeTextescapeByteString toPDFGlyphlparenrparenlbracketrbracketbspacebltbgtnewline noPdfObjectespacePDFGlyphespaceAsciiStringisEmptyDictionaryinsertInPdfDict pdfDictUnion modifyStrict EncodingsAdobeStandardEncodingZapfDingbatsEncodingPostscriptNameparseMacEncoding getEncodingPDFTreefold2sizeisLeafkeyOfemptybase Data.ComplexComplex:+realPartpolarphasemkPolar magnitudeimagPart conjugatecis PDFColorSpace PDFResource addResourceresourceToDict PatternRGB AnyPdfPatternprocSet resourcesPdfResourceObjecttoRsrc FillAlpha StrokeAlpha emptyRsrc emptyResourcefontToStructureAFMFontmetricsunderlinePositionunderlineThickness afmAscent afmDescentkernData type1BaseFontencodingScheme afmItalic afmCapHeightafmBBox afmFixedPitch afmSymbolicKXEncodingSchemeAFMAdobeStandardEncodingAFMFontSpecificAFMUnsupportedEncodingMetriccharCode metricWidthparseAfmPDFPagesPdfState supplySrcobjectspagesstreamscatalog defaultRectdocInfooutline currentPage xobjectBound firstOutline PDFCatalog AnyPdfXForm PDFStream pdfDictMember supplyName runDrawing setResourcegetBoundInDraw getBoundInPDF interpole OutlineLoc OutlineCtxTopChildleftsrightsvalueparentTreeNodeOutline OutlineData DestinationPDFOutlineEntry PDFOutlineunPDFprivateDrawXObject DrawTuple penPositionDrawEnvironmentstreamId xobjectBoundD DrawState supplyNamesrsrc strokeAlphas fillAlphastheFontsxobjects otherRsrcsannotspatterns colorSpacesshadingsmatrix AnyAnnotationAnnotationObject addAnnotationannotationTypeannotationContentannotationRectannotationToGlobalCoordinatesAnnotationStyleemptyEnvironment readDrawST writeDrawST modifyDrawSTemptyDrawStatemultiplyCurrentMatrixWith currentMatrix getRgbColorsetPageAnnotationssetPageResource createContentsupply addObject updateObject recordPagefindPagenodePageleafPageaddPagesnoPagesgetCurrentPage recordBoundcreateEmbeddedFont insertRight insertDownup addOutlinescreateTilingPatternisFirststartNew addedOutlinecloseNewnewSectionPrivate newSiblingnewChildFAcreateANewPage getBorderDrawBoxAnyBoxmyWordsBRStatefirstPassTolerancesecondPassTolerancehyphenPenaltyValuefitness_demeritflagged_demerit line_penaltycenteredglueSizecreateBreaknodegetDimupdateWithNewRIfNoSolution hyphenBoxinfinityglueBox spaceWidthcenteredDilatationFactorleftDilatationFactorrightDilatationFactor spaceGlueBoxsimplifypenalty createGlyph splitText hyphenPenalty letterWidthdilatationRatiocomputeDemeritisFeasibleBreakpointripText writingSystem MaybeGlueglueYglueZglueSizeWithRatiobadnessdefaultBreakingSettings formatListbigAdjustRatiokernBoxcontainerParaTolerancegetInterlineStyle interlineGlue getBoxDelta strokeVBoxesvglueHeightWidthVGlueSomeVBoxaddTo isOverfull StartText ContinueTextStopTextOneBlockHBoxsaveCurrentwordhorizontalPostProcess withNewStylemkHboxWithRatio createText drawTextLine drawWords drawPureWords drawTextGlue createWordsdrawLineOfHboxesTextHGlueSomeHBoxmkVboxWithRatio createPara addParaLinetoVBoxes drawContainerendFullyJustifiedrunPara addLetter PDFTrailer createPDF saveObjectswriteObjectsAndCreateToc