View, Convert, Print and Process PDF Files in Java
JPedal is a Java PDF Library that makes it easy for developers to display, convert, print and parse PDF files in Java.
Display PDF files in Java
JPedal provides a complete Java PDF Viewer which is easy to integrate and customise into your Java applications.
Convert PDF to image
JPedal includes a Java PDF Renderer which converts PDF Documents into image files in multiple image formats.
File security
JPedal runs on your Computers. It is not a cloud service and makes no calls outside. So your customer files are always secure.
How It Works
Add the IDRsolutions repository to your pom.xml file:
CopyCopied!<repositories>
<repository>
<id>IDRsolutions</id>
<name>IDR Solutions</name>
<url>https://maven.idrsolutions.com</url>
</repository>
</repositories>
Add the JPedal dependency to your pom.xml file:
CopyCopied!<dependencies>
<dependency>
<groupId>com.idrsolutions</groupId>
<artifactId>jpedal-trial</artifactId>
<version>2023.09</version>
</dependency>
</dependencies>
Add the IDRsolutions repository to your build.gradle file:
CopyCopied!repositories {
maven {
url = "https://files.idrsolutions.com/dl/maven/"
}
}
Add the JPedal dependency to your build.gradle file:
CopyCopied!dependencies {
implementation 'com.idrsolutions:jpedal-trial:2023.09'
}
Your download has started
It solves the following problems with addition of just a few lines of code:
Viewer viewer = new Viewer();
viewer.setupViewer();
viewer.executeCommand(ViewerCommands.OPENFILE, "pdfFile.pdf");
ConvertPagesToImages.writeAllPagesAsImagesToDir("inputFileOrDir", "outputDir", "bmp", 1.33f);
ArrayList<Float[]> resultsForPages = FindTextInRectangle.findTextOnAllPages("/path/to/file.pdf", "textToFind");
PrintPdfPages print = new PrintPdfPages("C:/pdfs/mypdf.pdf");
if (print.openPDFFile()) {
print.printAllPages("Printer Name");
}
ExtractClippedImages.writeAllClippedImagesToDir("inputFileOrDirectory", "outputDir", "outputImageFormat", new String[] {"imageHeightAsFloat", "subDirectoryForHeight"});
ExtractTextAsWordList.writeAllWordlistsToDir("inputFileOrDirectory", "outputDir", -1);
final PdfUtilities utilities = new PdfUtilities("path/to/exampleFile.pdf");
try {
if (utilities.openPDFFile()) {
// Returns a String containing all metadata fields for the document
final String documentPropertiesAsXML = utilities.getDocumentPropertyFieldsInXML();
// Returns the total page count as an int
final int totalPageCount = utilities.getPageCount();
for (int i = 1; i != totalPageCount; i++) {
// Get the page dimensions for the specified page in the given units and type
final float[] pageDimensions = utilities.getPageDimensions(i, PdfUtilities.PageUnits.Pixels, PdfUtilities.PageSizeType.CropBox);
// Returns the image data as a String for the specified page
final String xImageDataForPage = utilities.getXImageDataForPage(i);
}
}
}
catch (final PdfException e) {
e.printStackTrace();
}
utilities.closePDFfile();
WritableAnnotation[] annotations = new WritableAnnotation[2];
annotations[0] = new SquareAnnotation(1, 10, 10, 100, 100);
annotations[1] = new CircleAnnotation(2, 10, 10, 100, 100);
AnnotationWriter.writeAnnotations(inputFile, outputFile, annotation);
What do other developers think?
Why buy JPedal?
Performance and Reliability
JPedal is typically 3-4 times faster than alternatives and includes lots of optimisations to improve performance and reduce memory usage.
Easy Setup and Integration
JPedal includes lots of sample code and APIs for easy integration into your code. Adding a feature into your code is usually cutting and pasting 2-3 lines of code.
Simple Licensing Terms
JPedal can be used on a server or OEM license basis for a one-off fee with optional yearly support and access renewal. We tell you the prices on our website.
Premium Support
Support is provided quickly and directly by our inhouse JPedal Developers on email or via our online portal.
Modern Java usage
JPedal has a modern codebase which uses Java 8 as a minimum whilst also taking advantage of later versions using Java's multi-release jar functionality.
Source Code Access
JPedal OEM customers get full source code access to JPedal as well as the binary jar.
Are you ready to try JPedal now?
Add the IDRsolutions repository to your pom.xml file:
CopyCopied!<repositories>
<repository>
<id>IDRsolutions</id>
<name>IDR Solutions</name>
<url>https://maven.idrsolutions.com</url>
</repository>
</repositories>
Add the JPedal dependency to your pom.xml file:
CopyCopied!<dependencies>
<dependency>
<groupId>com.idrsolutions</groupId>
<artifactId>jpedal-trial</artifactId>
<version>2023.09</version>
</dependency>
</dependencies>
Add the IDRsolutions repository to your build.gradle file:
CopyCopied!repositories {
maven {
url = "https://files.idrsolutions.com/dl/maven/"
}
}
Add the JPedal dependency to your build.gradle file:
CopyCopied!dependencies {
implementation 'com.idrsolutions:jpedal-trial:2023.09'
}