DynaPDF Manual - Page 28

Previous Page 27   Index   Next Page 29

Language Bindings
Page 28 of 821
Language bindings
Differences between DynaPDF interfaces
DynaPDF can be used with most programming languages which support standard DLLs. The
usage of DynaPDF is nearly identical in all programming languages. However, this help file
describes all DynaPDF functions in C syntax.
All DynaPDF functions contain an instance pointer of the active PDF instance (const PPDF*
IPDF) as first parameter. This pointer is hidden for the user in the programming languages
Visual Basic, Visual Basic .Net, Visual C#, and Delphi. We deliver native wrapper classes for
these programming languages which handle the PDF instances automatically.
However, this help file describes the raw API of DynaPDF that is used by the programming
languages C and C++. The C/C++ interface is a direct interface that does not encapsulate the
DynaPDF API into a class or other structures to improve processing speed.
The usage of DynaPDF is almost identical in all programming languages; you must only
consider that the instance pointer IPDF is contained in the C/C++ interface only.
Visual Basic, Visual C#, or Delphi users must create an instance of the wrapper class CPDF or
TPDF in Delphi before a DynaPDF function can be executed. The instance of the wrapper class
must also be deleted by calling the destructor of the class.
C or C++ programmers must create a PDF instance with the function pdfNewPDF() before a
DynaPDF function can be executed. This instance must be deleted with the function
pdfDeletePDF() when it is no longer needed.
We tried also to consider the specific requirements for each programming language so that
DynaPDF can always be used without limitations. This causes slightly differences because of
the differences between programming languages. For instance, the Visual Basic interfaces uses
events instead of callback functions because the usage of callback functions is more complicated
in VB as in other programming languages.

Previous topic: Scrolling issues on high dpi devices, Static contents in dpi aware applications

Next topic: Embarcadero C++ Builder