[Lazarus] PDF generator

Roberto P. padovani.r at gmail.com
Sun Mar 6 08:35:28 CET 2016


Great!
Are metadata included ?

Thanks,

 R.

2016-03-05 18:27 GMT+01:00 Michael Van Canneyt <michael at freepascal.org>:

> Hi,
>
> I have committed a PDF generator to FPC Subversion: fcl-pdf.
>
> Why a new pascal PDF generator ? Mainly because the existing ones written
> in Object Pascal suffer from
> several disadvantages: - Font support usually incomplete or downright
> buggy.
> - Dependency on a GUI (LCL, VCL, Windows).
> The latter is important because the PDFs must be generated on a headless
> (no
> display) webserver.
>
> So, the fcl-pdf package contains a PDF generating unit fppdf that does not
> depend
> on any external libraries or GUI system.
>
> The PDF generator has the following features:
> - Support for basic shapes.
> - Support for basic line styles.
> - Dictionary support.
> - Multi-page PDF.
> - Image support.
> - TTF Font support.
> - Font embedding.
> - Unicode font support.
> - Stream Compression.
> - Image embedding.
> - Several paper types.
> - Portrait/Landscape.
> - Support for multiple measurement units.
> - Rotation matrix system.
> - PDF creator information.
> - The generated PDF passes several PDF validators.
>
> The library is based on a library that came with FPGUI, with a feature set
> which came closest to what I desired. It was completed for the company I
> work for by Graeme Geldenhuys, and is heavily unit tested.
>
> It is not yet feature-complete, but the above should be ample for most
> applications.
>
> In the near future, I expect to commit a reporting engine which, likewise,
> does not need a GUI (but can use one) and uses the PDF generator as one
> possible backend.
>
> Todo:
> - Implement TFPCustomCanvas descendent (TPDFCanvas) that draws on a PDF.
>   (should allow easy integration in LCL) - Partial embedding of (unicode)
> fonts (only used glyphs) for smaller PDFs.
> - On windows (possibly mac), allow to use native font mechanisms for
> extracting info from TTF files.
> - Reduce memory usage by streaming finished pages to file.
>
> Optionally:
> - PDF Forms ?
> - Archive format ?
> - Signatures ?
>
> Enjoy,
>
> I would welcome additional tests/demos, suggestions, bugreports,
> improvements or patches.
>
> Michael.
>
> --
> _______________________________________________
> Lazarus mailing list
> Lazarus at lists.lazarus.freepascal.org
> http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.lazarus-ide.org/pipermail/lazarus/attachments/20160306/0ee95fea/attachment-0007.html>


More information about the Lazarus mailing list