What is difference between the PDFNet C++ and Java library


Hello Team,

I have one query regarding the PDFNet library. Currently i am using PDFNet v6.8.0 which was done long back and for this version we are using the PDFNet C++ binary file for running the PDFNet to be specfic we are using the libPDFNetC.so file present in the lib folder.
But the code we have return to use PDFNet is in java but i am not sure why we were using PDFNet64 C++ library also now i am not able to find the old versions of PDFNet.
Currently i am upgrading the PDFNet version to the latest v10.8.0 and in website i see now for PDFNet we have java library as well as C++ library. As our code is in java i used PDFNet java library i.e PDFNet.jar and tested its working fine, but i have doubt why do we have two different libraries for Java and C++ what is the difference between these two. Is there any difference or we can use both Java library or C++ libaray to execute the PDFNet which written in Java. If there is no difference can i still use latest PDFNet C++ library to run the PDFNet in java with latest version.
Also i see in PDFNet C++ library there is a PDfNet.jar why do we have it in this library?

So, can i use PDFNet C++ latest library i.e. libPDFNetC.so file present in the lib folder to run the PDFNet in java to continue as it is present currently for version 6.8.0.


1 Like

Thank you for posting your question to our forum. We will provide you with an update as soon as possible.

1 Like

I believe you are asking about the difference in packaging between the 32b and 64b libraries?

  • Java (64-bit)
  • C/C++ (32-bit), Java (32-bit), C#, .NET Core
  • C/C++ (64-bit), C#, .NET Core

The only difference is that we package the 64b Java binary in it’s own package. You only need to select the package for your specific needs. If you are working with a 64b Java application then you would use the Java (64b) library which will contain the correct PDFNetC.dll/libPDFNetC.so for your platform in the PDFNet.jar file. The 32b Java jar file does not and the correct PDFNetC.dll/libPDFNetC.so will be found in the “Lib” folder of the download.

1 Like


Thanks for reply and i understood about the difference between 64 and 32 bit library thank you for that.
We are using the 64 bit library and I want to understand what is difference between 64 bit Java library and 64 bit C++ library is there any differences between these two libraries or both are same. I have this question because I guess in previous version which is a very old one 6.8.0 may be there was only c++ library to use for java as well.
Correct me if I am wrong.
And also we are using PDnet net in java so for latest version of PDFNet is it ok to use 64 bit Java library or can I use 64 bit C++ library as well just to continue the way we were using the library.


1 Like

Also I would like to understand we have downloaded 6.8.7 and 9.1.0 pdfnet java libraries previously.
And the contents in the PDFNet zip for both versions are

  1. It has Folder named PDFNetJava.

  2. Inside PDFNetJava folder we have Lib folder

  3. Lib folder has below files.

    • PDFNetDotNetCore.dll

    • PDFNetC.dll

    • PDFNetC.lib

    • libPDFNetC.so

    • PDFNet.jar

    • libinfo

Now in latest version of PDFNet Java library in Lib folder we have only PDFNet.jar

So is there a separation done now for java and C++ libraries if yes why it is done.
And for Java which library we have to use C++ or Java.
Can we use C++ library for Java as well? If we can use then what is the difference between PDFNet C++ and Java library.

I have these questions just to make sure to use correct library to avoid any issues.


1 Like

So is there a separation done now for java and C++ libraries if yes why it is done.
Both the C/C++ (64-bit), C#, .NET Core and Java (64-bit) packages include the same version PDFNet.jar and you can use either one in your 64b Java application. The difference is that the Java (64-bit) includes the native libPDFNetC.so which is included in the C/C++ (64-bit), C#, .NET Core but not the jar file therein. This is only to simplify the packaging for Java only users.