PDF Library

PDF Library

Delphi and C++Builder library for creating and processing PDF documents.
  • uses PDFsharp library
  • supports Windows 32 and Windows 64
  • available for Delphi/C++Builder 7 - 11
  • royalty free distribution in applications

Download and order

Order PDF Library $80 USD (license for one developer)
Order PDF Library multi-license $240 USD (license for all developers in company)
Order PDF Library year upgrades $40 USD (registered users only)
Order PDF Library year upgrades multi-license $120 USD (registered multi-license users only)


How can I solve "Project Demo.exe raised exception class $C0000090 with message 'floating point invalid operation at 0x70934779'." error message?
Switch off floating point exceptions using this code:
Set8087CW(Get8087CW or $3F);

How can I solve "Class not registered." error message?
  • Create manifest file applicationname.exe.manifest (change applicationname accordingly to the name of your application):
  • <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
    <assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
      <assemblyIdentity version="" processorArchitecture="*" name="applicationname" type="*"/>
          <assemblyIdentity type="win32" name="Microsoft.Windows.Common-Controls" version=""
            publicKeyToken="6595b64144ccf1df" language="*" processorArchitecture="*"/>
          <assemblyIdentity name="PdfSharp" version="1.51.5185.0" publicKeyToken="f94615aa0424f9eb" processorArchitecture="msil"/>
  • Embed applicationname.exe.manifest file to your application: Select Delphi menu Project/Options.../Application. Change Manifest File combobox to Custom and select applicationname.exe.manifest file in Custom manifest edit box.
  • Instead of embedding applicationname.exe.manifest file to your application, you can comment "{$R *.res}" line in applicationname.dpr file and use external applicationname.exe.manifest file:
  • // {$R *.res}
How can I retrieve PDF fields?
var Fields: _PdfAcroFieldCollection;

Fields := Document.AcroForm.Fields;
for I := 0 to Fields.Count - 1 do
  ShowMessage(IntToStr(I) + ': ' + Fields[I].Name);

Related links