import java.io.File;
import java.io.FileOutputStream;
import com.itextpdf.text.*;
import com.itextpdf.text.pdf.PdfWriter;
public class CreatePDF {
public static void main(String[] args) throws Exception {
Document pdfDoc = new Document();
// 将要生成的 pdf 文件的路径输出流
FileOutputStream pdfFile = new FileOutputStream(new File(
"F:firstPdf.pdf"));
// pdf 文件中的一个文字段落
Paragraph paragraph = new Paragraph(
"My first PDF file with an image ...");
Image image = Image.getInstance("images/pdftest.png");
// 用 Document 对象、File 对象获得 PdfWriter 输出流对象
PdfWriter.getInstance(pdfDoc, pdfFile);
pdfDoc.open(); // 打开 Document 文档
// 添加一个文字段落、一张图片
pdfDoc.add(paragraph);
pdfDoc.add(image);
pdfDoc.close();
}
}
import java.io.File;
import java.io.FileOutputStream;
import com.itextpdf.text.Element;
import com.itextpdf.text.Image;
import com.itextpdf.text.pdf.BaseFont;
import com.itextpdf.text.pdf.PdfArray;
import com.itextpdf.text.pdf.PdfContentByte;
import com.itextpdf.text.pdf.PdfDictionary;
import com.itextpdf.text.pdf.PdfName;
import com.itextpdf.text.pdf.PdfObject;
import com.itextpdf.text.pdf.PdfReader;
import com.itextpdf.text.pdf.PdfStamper;
public class CAPdf{
public static void main(String[] args) throws Exception {
FileUtil.fileChannelCopy(new File("F:\\firstPdf.pdf"),new File("f:\\firstPdf_temp.pdf"));
PdfReader reader = new PdfReader("f:firstPdf.pdf");
PdfStamper stamper = new PdfStamper(reader, new FileOutputStream("f:firstPdf_temp.pdf"));
PdfContentByte overContent = stamper.getOverContent(1);
//添加文字
BaseFont font = BaseFont.createFont("STSong-Light", "UniGB-UCS2-H", BaseFont.NOT_EMBEDDED);
overContent.beginText();
overContent.setFontAndSize(font, 10);
overContent.setTextMatrix(200, 200);
overContent.showTextAligned(Element.ALIGN_CENTER,"需要添加的文字",180,530,0);
overContent.endText();
//添加图片
PdfDictionary pdfDictionary = reader.getPageN(1);
PdfObject pdfObject = pdfDictionary.get(new PdfName("MediaBox"));
PdfArray pdfArray = (PdfArray) pdfObject;
Image image = Image.getInstance("images/pdftest.png");
image.setAbsolutePosition(100,100);
overContent.addImage(image);
//添加一个红圈
overContent.setRGBColorStroke(0xFF, 0x00, 0x00);
overContent.setLineWidth(5f);
overContent.ellipse(250, 450, 350, 550);
overContent.stroke();
stamper.close();
}
}
相关推荐
在Java编程环境中,读取PDF文件是一项常见的任务,特别是在开发桌面应用或需要处理PDF文档内容时。本篇文章将深入探讨如何使用Java来读取PDF文件,并将其内容展示在一个由JFrame和JPanel构建的GUI窗口中。 首先,...
然而,为了确保PDF文件的安全性和完整性,有时我们需要对PDF进行电子签字、盖章、添加防伪二维码、水印以及加密。在Java环境下,我们可以利用特定的库来实现这些功能,例如iText库。以下是对这些知识点的详细解释: ...
本项目着重介绍了如何在Java环境中生成PDF文件,并且对其进行加密以及设置安全性。下面我们将深入探讨相关知识点。 首先,我们关注的是"JAVA生成PDF文件"。Java中常用的PDF库有iText、Apache PDFBox、 Flying ...
在Java编程环境中,生成PDF文件是一项常见的任务,尤其在需要将数据或报告以可打印、可分享的格式呈现时。PDF(Portable Document Format)是一种通用的文件格式,它能够保持文档的原始布局和样式,方便跨平台查看和...
在Java编程环境中,生成PDF文件是一项常见的需求,特别是在需要创建报告、发票或任何类型的文档时。iText是一个流行的开源库,专门用于处理PDF文档。在这个主题中,我们将深入探讨如何使用iText在Java中生成PDF文件...
PDF文件在日常工作中被广泛应用,为了保护文档的安全性和防止未经授权的修改,经常需要对PDF进行加密、设置只读属性以及添加水印。本资源提供的6个jar包正是为实现这些功能而准备的,它们分别是itext-5.3系列的库和...
对于每个PDF文件,我们创建一个`PdfReader`对象来读取其内容,并逐页添加到`Document`中。最后,我们关闭所有资源,合并操作完成。 使用这个`PdfMerger`类时,只需要提供待合并的PDF文件路径列表和输出文件路径即可...
在Java编程环境中,生成PDF文档是一项常见的需求,特别是在企业级应用中,如报表、发票、合同等场景。本文将详细讲解如何使用Java生成包含中文字符的PDF文档,并解决中文乱码问题,主要涉及的库是iText库及其针对...
Java导出PDF文件是开发过程中常见的一项任务,特别是在需要生成报告、报表或用户手册时。在Java中,我们可以使用各种库来实现这个功能,而jar包则是这些库的可执行形式。下面我们将深入探讨如何使用Java导出PDF文件...
5.该压缩包包含的内容:samples文件夹中包含了多个操作PDF文档功能的java代码示例DEMO;lib文件夹下包含了用于在java程序中的Spire.Pdf.jar文件,在项目程序中调用接口方法时,需要导入该jar文件;doc文件下包含了...
Java PDF文件处理是一个重要的领域,尤其在开发企业级应用时,常常需要对PDF文档进行创建、编辑、转换或渲染等操作。Aspose.PDF是一款强大的Java库,它为开发者提供了全面的API,使得处理PDF文档变得简单高效。在这...
Java作为一个跨平台的编程语言,提供了多种库来处理PDF文件,包括读取、写入、编辑和转换PDF文档。本项目“java操作pdf,pdf-demo”就是基于Java实现的PDF操作示例,它可以帮助开发者了解如何在Java环境下与PDF文档...
根据提供的文件信息,我们可以从中提炼出与IT领域相关的知识点,特别是关于双层PDF文件的创建以及OCR技术的应用。以下是对这些知识点的详细说明: ### 双层PDF文件 #### 定义 双层PDF文件是一种特殊的PDF文档格式...
在处理PDF文件时,有时我们需要将多个PDF文件合并为一个,或者将一个大PDF文件分割成多个小文件,这在企业文档管理和自动化流程中非常常见。Java作为一种多用途的编程语言,提供了许多库来处理PDF文件的合并与分割。...
在Java开发中,生成PDF文档是一项常见的需求,特别是在企业级应用中,如报表、合同或证书的生成。本文将深入探讨如何使用Java实现PDF的生成,并特别关注支持中文字符的处理。 首先,我们需要一个库来帮助我们处理...
6. **PDF合并与拆分**:可以将多个PDF文件合并为一个,或者从PDF文档中提取特定页面。 7. **PDF/A兼容**:支持创建符合PDF/A标准的文档,用于长期归档和合规性要求。 在使用iText时,开发者需要将对应的jar包(如`...
Adobe PDF编辑器是用于创建、编辑和管理PDF文档的强大工具,尤其Adobe Acrobat DC 2020 SP版本,它提供了丰富的功能,包括阅读、注释、编辑、转换、签署PDF文件等。在IT行业中,使用PDF编辑器进行文档处理是非常常见...
这篇博客文章“JAVA导出PDF Itext 中文文档”可能详细介绍了如何利用Itext库在Java中生成包含中文字符的PDF文件。Itext库支持多种语言,包括中文,使得开发者能够方便地创建多语言的PDF文档。 首先,生成PDF时,...
2. 创建PdfWriter对象:这个对象负责将内容写入PDF文件。使用`PdfWriter.getInstance(document, new FileOutputStream(filename))`,其中`document`是第一步创建的PdfDocument,`filename`是你要保存的PDF文件路径。...
然而,为了保护PDF文件不被随意复制或滥用,有时我们需要在PDF上添加文字水印,这既是一种版权声明,也是一种防伪手段。本篇文章将探讨如何使用Java来实现这一功能,主要涉及的工具有iText库,这是一个强大的PDF处理...