Wasserzeichen zu PDF hinzufügen

Beim Konvertieren einer Excel-Datei in PDF können Anforderungen bestehen, ein Wasserzeichen zur PDF-Datei hinzuzufügen. Die folgenden Beispiele zeigen, wie Text- und Bildwasserzeichen zur PDF hinzugefügt werden können.

Textwasserzeichen zur PDF hinzufügen

Sie können ganz einfach Textwasserzeichen zur PDF hinzufügen, indem Sie Text und die entsprechende Schriftart angeben. Außerdem können Sie die Ausrichtung, den Versatz, die Drehung, die Deckkraft, den Vordergrund/Hintergrund und die Skalierung auf der Seite in RenderingWatermark festlegen.

//prepare a workbook with 3 pages.
Workbook wb = new Workbook();
wb.getWorksheets().get(0).getCells().get("A1").putValue("Page1");
int index = wb.getWorksheets().add();
wb.getWorksheets().get(index).getCells().get("A1").putValue("Page2");
index = wb.getWorksheets().add();
wb.getWorksheets().get(index).getCells().get("A1").putValue("Page3");
wb.getWorksheets().get(index).getPageSetup().setPaperSize(PaperSizeType.PAPER_A_3);
//create a font for watermark, and specify bold, italic, color.
RenderingFont font = new RenderingFont("Calibri", 68);
font.setItalic(true);
font.setBold(true);
font.setColor(Color.getBlue());
//create a watermark from text and the specified font.
RenderingWatermark watermark = new RenderingWatermark("Watermark", font);
//specify horizontal and vertical alignment
watermark.setHAlignment(TextAlignmentType.CENTER);
watermark.setVAlignment(TextAlignmentType.CENTER);
//specify rotation
watermark.setRotation(30);
//specify opacity
watermark.setOpacity(0.6f);
//specify the scale to page(e.g. 100, 50) in percent.
watermark.setScaleToPagePercent(50);
//spcify watermark for rendering to pdf.
PdfSaveOptions options = new PdfSaveOptions();
options.setWatermark(watermark);
wb.save("output_text_watermark.pdf", options);

Bildwasserzeichen zur PDF hinzufügen

Sie können ein Bild-Wasserzeichen zu PDF hinzufügen, indem Sie einfach die Bildbytes eines Bildes angeben. Außerdem können Sie Ausrichtung, Abstand, Rotation, Deckkraft, Vordergrund/Hintergrund und Skalierung auf Seite in RenderingWatermark festlegen.

//prepare a workbook with 3 pages.
Workbook wb = new Workbook();
wb.getWorksheets().get(0).getCells().get("A1").putValue("Page1");
int index = wb.getWorksheets().add();
wb.getWorksheets().get(index).getCells().get("A1").putValue("Page2");
index = wb.getWorksheets().add();
wb.getWorksheets().get(index).getCells().get("A1").putValue("Page3");
wb.getWorksheets().get(index).getPageSetup().setPaperSize(PaperSizeType.PAPER_A_3);
//create a watermark from image(you need to prepare image bytes).
RenderingWatermark watermark = new RenderingWatermark(imageBytes);
//specify offset to alignment.
watermark.setOffsetX(100);
watermark.setOffsetY(200);
//specify rotation
watermark.setRotation(30);
//specify watermark to background.
watermark.setBackground(true);
//specify opacity
watermark.setOpacity(0.6f);
//specify the scale to page(e.g. 100, 50) in percent.
watermark.setScaleToPagePercent(50);
//spcify watermark for rendering to pdf.
PdfSaveOptions options = new PdfSaveOptions();
options.setWatermark(watermark);
wb.save("oputput_image_watermark.pdf", options);