PDF Stamper

AboutThe Product

The PDF Stamper is a free and mature java solution that allows you watermark PDF files. It is standalone jar library that can be used with any java based applications.

PDF Stamper is easy to use and has been commonly used with Windchill from PTC for stamping of PDF contents of WTDocuments and PDF Viewables of drawings or documents via standalone program or code within workflows.

Download PDF Stamper by clicking here

The zip file contains everything that you will need to integrate PDF Stamper with your code or application. Please go through Example.java to see how you can invoke the PDF Stamper from your program.

Please check out an example stamped PDF below to analyze the capabilities of PDF Stamper. All the images and texts in the PDF file are stamps created using PDF Stamper.

The solution has following functionalities.

  1. Stamp PDF documents with dynamic texts and images and HTML contents.
  2. Stamp only first page, only last page, all the pages or any specific page.
  3. Highly configurable with options like color, text size, image size, image or text angle, transparency, location etc.
  4. Ability to create XML based stamp templates such that stamping can be done by simply providing Stamp names.
  5. API’s that can be called from any program. For example calling from Windchill workflows for stamping primary contents or PDF viewable.

If you have any questions about PDF Stamper, you may ask them at EZCollab

For corporations, even though it is not absolutely necessary, it is recommended that yearly maintenance be procured for support, updates and upgrades.
We can also help you integrate the PDF Stamper with your applications. Please contact us to discuss your project.


Below is an example of PDF that was stamped using following code

	String inputFile = "sample_input.pdf"; //This is your input PDF File
	String outputFile = "sample_output.pdf"; //This will be your stamped output file
	String imageFile = "approved_red_stamp.png"; //If you want to stamp with Image
	String stampingrecipefile = "stampingrecipe.xml"; //File containing Stamp templates

//Below are Text Stamps
Vector vector = new Vector();
vector.addElement(new TextWaterMark(“Top Left 1st Page Only Stamp”, “TLT”));
vector.addElement(new TextWaterMark(“Top Middle Stamp”, “TMT”));
vector.addElement(new TextWaterMark(“Top Right Stamp”, “TRT”));
vector.addElement(new TextWaterMark(“Bottom Left Stamp”, “BLT”));
vector.addElement(new TextWaterMark(“Bottom Middle Stamp”, “BMT”));
vector.addElement(new TextWaterMark(“Bottom Right last Page Only Stamp”, “BRT”));
vector.addElement(new TextWaterMark(“Middle Left Stamp”, “MLT”));
vector.addElement(new TextWaterMark(“Middle Middle Stamp”, “MMT”));
vector.addElement(new TextWaterMark(“Middle Right Stamp”, “MRT”));
vector.addElement(new TextWaterMark(“Absolute Position Stamp”, “ABS”));
vector.addElement(new TextWaterMark(“Angle Stamp”, “ANG”));

//Below is Image Stamp
vector.addElement(new ImageWaterMark(imageFile, “MRI”));

//Just Stamp
Stamper.stamp(inputFile, outputFile, vector, stampingrecipefile);