- Java 编程示例
- 示例 - 首页
- 示例 - 环境
- 示例 - 字符串
- 示例 - 数组
- 示例 - 日期和时间
- 示例 - 方法
- 示例 - 文件
- 示例 - 目录
- 示例 - 异常
- 示例 - 数据结构
- 示例 - 集合
- 示例 - 网络
- 示例 - 线程
- 示例 - 小程序
- 示例 - 简单 GUI
- 示例 - JDBC
- 示例 - 正则表达式
- 示例 - Apache PDF Box
- 示例 - Apache POI PPT
- 示例 - Apache POI Excel
- 示例 - Apache POI Word
- 示例 - OpenCV
- 示例 - Apache Tika
- 示例 - iText
- Java 教程
- Java - 教程
- 对 Java 有用的资源
- Java - 快速指南
- Java - 有用资源
如何使用 Java 为 PDF 中的图像添加水印
问题描述
如何使用 Java 为 PDF 中的图像添加水印
解决方案
以下是使用 Java 为 PDF 中的图像添加水印的程序。
import com.itextpdf.io.image.ImageDataFactory;
import com.itextpdf.kernel.color.DeviceGray;
import com.itextpdf.kernel.geom.Rectangle;
import com.itextpdf.kernel.pdf.PdfDocument;
import com.itextpdf.kernel.pdf.PdfWriter;
import com.itextpdf.kernel.pdf.xobject.PdfFormXObject;
import com.itextpdf.layout.Canvas;
import com.itextpdf.layout.Document;
import com.itextpdf.layout.element.Image;
import com.itextpdf.layout.property.TextAlignment;
public class AddingToImagesInPDF {
public static void main(String args[]) throws Exception {
String file = "C:/EXAMPLES/itextExamples/addingImageToPDF.pdf";
//Creating a PdfDocument object
PdfDocument pdfDoc = new PdfDocument(new PdfWriter(file));
//Creating a Document object
Document doc = new Document(pdfDoc);
//Creating an Image
Image image = new Image(ImageDataFactory.create(
"C:/EXAMPLES/itextExamples/logo.jpg"));
image.scaleToFit(400, 700);
//Creating template
PdfFormXObject template = new PdfFormXObject(new Rectangle(
image.getImageScaledWidth(), image.getImageScaledHeight()));
Canvas canvas = new Canvas(template, pdfDoc).add(image);
String watermark = "Welcome to Tutorialspoint";
canvas.setFontColor(DeviceGray.LIGHT_GRAY)
.showTextAligned(watermark, 100, 360, TextAlignment.CENTER);
//Adding template to document
Image image1 = new Image(template);
doc.add(image1);
//Closing the document
doc.close();
System.out.println("Watermark added successfully..");
}
}
输入
输出
java_itext
广告