Skip to main content

License FAQ

FAQs and information about the counting mechanism for pdf2Data volume licenses.

important

Since version 3.1.0 pdf2Data uses volume licenses which are based on the iText Unified Licensing Mechanism introduced in iText Core version 7.2. This means as of this version, the license key files are in JSON format while legacy license key file used XML.

How do I enable volume counting?

You don't need to enable anything. If you have a valid volume license file then pdf2Data will have automatically enabled this for you.

Volume counting can be performed locally, or remote (our most convenient way for usage reporting). Remote reporting is enabled by default, making reporting your usage much easier.

warning

Remember to include the licensing-remote dependency if you are using the Java or .NET library SDK, otherwise the license key file will fail to be loaded.

tip

pdf2Data depends on version 4.x of the licensing-base and licensing-remote libraries, see Compatibility Matrix for the exact version.

How do I get a volume license key file?

If you are an existing customer, you should contact your sales rep. Otherwise, you will need to contact our sales department. You can fill out a form here and one of our sales representatives will contact you.

How does volume counting work?

For pdf2Data each call of the Pdf2DataExtractor#recognizeOnPdf method is counted as 1x pdf2Data "recognize-pdf" event. An event is counted only in cases where the method doesn't throw any exception.

Java
Pdf2DataExtractor extractor = Pdf2DataExtractor.create(new File(P2D_TEMPLATE_PATH));
ParsingResult result = extractor.recognizeOnPdf(new File(PDF_PATH));
.NET
Pdf2DataExtractor extractor = Pdf2DataExtractor.Create(new FileInfo(P2D_TEMPLATE_PATH));
ParsingResult result = extractor.RecognizeOnPdf(new FileInfo(PDF_PATH));

In order to validate the results that would be produced by the function above, you can use the check function. It will return the number of results detected for each data field in your template which you can check before calling the actual extraction. This may help you to exclude invalid results from your volume usage.

Java
Pdf2DataExtractor extractor = Pdf2DataExtractor.create(new File(P2D_TEMPLATE_PATH));
Map<String, Integer> result = extractor.check(new File(PDF_PATH));
.NET
Pdf2DataExtractor extractor = Pdf2DataExtractor.Create(new FileInfo(P2D_TEMPLATE_PATH));
IDictionary<String, int> result = extractor.Check(new FileInfo(PDF_PATH));

How do I query my current volume usage?

If you have a JSON license key file, you can easily query your current volume usage:

Java
LicenseKey.loadLicenseFile(new File("license.json"));
String productName = Pdf2DataProductData.getInstance().getProductName();
LicenseInfo loadedLicenseInfo = LicenseKey.getLoadedLicenseInfo(productName);
LimitInfo limitInfo = loadedLicenseInfo.getLimitsInfo().get("recognize-pdf");
logger.info("Remaining volume: " + limitInfo.getRemainingVolume() + " out of " + limitInfo.getTotalVolume());
.NET
LicenseKey.LoadLicenseFile(new FileInfo("license.json"));
String productName = Pdf2DataProductData.GetInstance().GetProductName();
LicenseInfo loadedLicenseInfo = LicenseKey.GetLoadedLicenseInfo(productName);
LimitInfo limitInfo = loadedLicenseInfo.GetLimitsInfo()["recognize-pdf"];
Console.WriteLine("Remaining volume: " + limitInfo.getRemainingVolume() + " out of " + limitInfo.getTotalVolume());

More FAQs

For more general questions related to the iText Unified Licensing Mechanism, please refer to iText Volume Counter FAQs

tip

See the instructions for iText 7.2.x and newer.