91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

java itext怎樣實現水印效果

小樊
81
2024-11-21 20:11:43
欄目: 編程語言

在Java中,使用iText庫可以輕松地實現水印效果。以下是一個簡單的示例,展示了如何使用iText 7為PDF文檔添加水印:

  1. 首先,確保已將iText 7庫添加到項目依賴中。如果使用Maven,可以在pom.xml文件中添加以下依賴:
<dependency>
    <groupId>com.itextpdf</groupId>
    <artifactId>itext7-core</artifactId>
    <version>7.1.16</version>
</dependency>
<dependency>
    <groupId>com.itextpdf</groupId>
    <artifactId>itext7-pdf-watermark</artifactId>
    <version>7.1.16</version>
</dependency>
  1. 接下來,編寫一個Java方法來實現水印效果:
import com.itextpdf.kernel.pdf.*;
import com.itextpdf.kernel.pdf.canvas.parser.PdfCanvasProcessor;
import com.itextpdf.kernel.pdf.canvas.parser.listener.IPdfTextLocation;
import com.itextpdf.kernel.pdf.font.PdfFont;
import com.itextpdf.kernel.pdf.font.PdfFontFactory;
import com.itextpdf.kernel.pdf.headerfooter.PdfHeaderFooter;
import com.itextpdf.layout.Document;
import com.itextpdf.layout.element.Paragraph;

import java.io.*;

public class PdfWatermark {

    public static void main(String[] args) throws IOException {
        String inputPath = "path/to/input.pdf";
        String outputPath = "path/to/output.pdf";
        String watermarkText = "Watermark";

        addWatermark(inputPath, outputPath, watermarkText);
    }

    public static void addWatermark(String inputPath, String outputPath, String watermarkText) throws IOException {
        // 讀取輸入PDF文件
        PdfReader reader = new PdfReader(inputPath);
        PdfWriter writer = new PdfWriter(outputPath);
        PdfDocument pdfDocument = new PdfDocument(reader, writer);

        // 創建水印
        PdfFont font = PdfFontFactory.createFont("Arial", true);
        PdfTextAnnotation annotation = new PdfTextAnnotation(pdfDocument, new Rectangle(pdfDocument.getDefaultPageSize().getWidth(), pdfDocument.getDefaultPageSize().getHeight()));
        annotation.setFont(font);
        annotation.setColor(new Color(0.5f, 0.5f, 0.5f));
        annotation.setText(watermarkText);
        annotation.setOpacity(0.5f);
        pdfDocument.getFirstPage().addAnnotation(annotation);

        // 關閉PDF文檔
        pdfDocument.close();
    }
}

在這個示例中,我們首先讀取輸入PDF文件,然后創建一個新的PDF文檔。接著,我們為水印創建一個PdfTextAnnotation對象,設置其字體、顏色、透明度等屬性。最后,將水印添加到PDF文檔的第一頁,并關閉PDF文檔。

你可以根據需要修改輸入路徑、輸出路徑和水印文本。這個示例將在輸入PDF文檔的第一頁添加一個半透明的水印。如果你想在水印上添加更多自定義選項,可以查閱iText 7官方文檔:https://itextpdf.com/en/products/itext-7/features/Watermarking

0
叶城县| 东光县| 龙南县| 阳山县| 龙门县| 新干县| 玉龙| 康乐县| 高安市| 河北区| 尉氏县| 镇平县| 保靖县| 古蔺县| 中宁县| 沿河| 鄂托克旗| 洪江市| 宜都市| 平塘县| 吉木乃县| 延吉市| 天等县| 沛县| 阳曲县| 广水市| 叙永县| 惠安县| 苏尼特右旗| 宁海县| 化隆| 万山特区| 礼泉县| 永春县| 航空| 龙陵县| 田阳县| 武乡县| 方城县| 大英县| 长治市|