--------------------------------------------------------- -- | -- Copyright : (c) alpha 2006 -- License : BSD-style -- -- Maintainer : misc@NOSPAMalpheccar.org -- Stability : experimental -- Portability : portable -- -- PDF API for Haskell --------------------------------------------------------- module Graphics.PDF (-- * HPDF -- ** The PDF type PDF -- ** PDF Operator used to build a PDF document (in addition to the Monoid ones) ,withContext, (<>), emptyPdf, PdfCmd -- ** PDF Transformations , module Graphics.PDF.Geometry -- ** PDF Text , module Graphics.PDF.Text -- ** PDF Shapes , module Graphics.PDF.Shape -- ** PDF Colors , module Graphics.PDF.Color -- ** PDF Shadings , module Graphics.PDF.Shading -- ** PDF Font , module Graphics.PDF.Font -- ** PDF File , module Graphics.PDF.File -- * Example -- $example ) where import Graphics.PDF.LowLevel import Graphics.PDF.Geometry import Graphics.PDF.Shape import Graphics.PDF.Color import Graphics.PDF.Shading import Graphics.PDF.File import Graphics.PDF.Text import Graphics.PDF.Font -- $example -- > test :: IO () -- > test = let document = rgbSpace <> -- > chooseFont Helvetica 70 <> -- > applyMatrix (translate 50 0) <> -- > applyMatrix (rotate (Degree 45)) <> -- > clipText 0 0 "HPDF" <> -- > applyMatrix (rotate (Degree (-45))) <> -- > applyMatrix (translate (-50) 0) <> -- > fillColor (Rgb 0 0 1) <> -- > fillRectangle 0 0 100 100 <> -- > fillColor (Rgb 1 0 0) <> -- > setAlpha 0.4 <> -- > fillRectangle 50 50 100 100 <> -- > resetAlpha <> -- > fillColor (Rgb 0 1 0) <> -- > fillRectangle 80 80 100 100 <> -- > emptyPdf 180 180 -- > in -- > writePdf "test.pdf" document