`
wern0565
  • 浏览: 5878 次
  • 性别: Icon_minigender_1
  • 来自: 云浮
社区版块
存档分类
最新评论

基于PDFBox组件的JPEG转换为PDF输出的尝试

    博客分类:
  • JAVA
阅读更多

     应一位好友的要求,专门做了一个JPEG转换为PDF的例子。

 

     使用了开源组件PDFBox。

 

     例子很简单。所以,就不多说了。直接上代码。

     关键类org.wg.pdf.test.PdfParser2:

package org.wg.pdf.test;

import java.awt.image.BufferedImage;
import java.awt.print.PageFormat;
import java.io.File;

import javax.imageio.ImageIO;

import org.apache.pdfbox.pdmodel.PDDocument;
import org.apache.pdfbox.pdmodel.PDPage;
import org.apache.pdfbox.pdmodel.edit.PDPageContentStream;
import org.apache.pdfbox.pdmodel.graphics.xobject.PDJpeg;

public class PdfParser2 {

	/**
	 * @param args
	 */
	public static void main(String[] args) {
		String imgPath = "F:\\images\\法国梧桐\\南京的秋天.jpg";
		String pdfPath = "E:\\WernGin\\学习\\pdfbox.pdf";
		PDDocument document = null;
		PDPageContentStream contentStream =  null;
		try{
			// 写PDF文件.
			BufferedImage img = ImageIO.read(new File(imgPath));
//			FileOutputStream fos = new FileOutputStream(pdfFile);
			// 创建PDF文档
			document = new PDDocument();
			// 创建一页
			PDPage blankPage = new PDPage();
			// 添加分页到文档中
			document.addPage(blankPage);
			// 创建图片
			PDJpeg jpeg = new PDJpeg(document,img);
			// 获取页面格式。这里只取第0个
			PageFormat pf = document.getPageFormat(0);
			double pageWidth = pf.getWidth();
			double pageHeight = pf.getHeight();
			// 创建页面内容输出流
			contentStream = new PDPageContentStream(document, blankPage);
//			contentStream.drawImage(jpeg, 0, 0);
			// 通过内容输出流,画图片对象到当前分页中。不能用drawImage,因为drawImage会直接按原图片的大小输出的。
			contentStream.drawXObject(jpeg, 0, 0,(float)pageWidth,(float)pageHeight);
			// 关闭页面输出流
			contentStream.close();
			// 保存PDF文档
			document.save(pdfPath);
			//关闭文档
			document.close();
		}catch(Exception e){
			e.getStackTrace();
		}
	}
}

    

    PS:请勿喷代码风格!!!

分享到:
评论

相关推荐

    pdf转换成为图片需要的两个jar

    PDFBox的核心功能之一就是能够将PDF页面转换为高质量的图像,这在需要对PDF进行视觉展示或者简化处理时非常有用。 FontBox是PDFBox的配套库,专注于处理字体相关的问题。在PDF文档中,字体的处理是非常复杂的一部分...

    PDFBox教程.pdf

    5. **保存为图像**:将PDF文档转换为图像文件(如PNG或JPEG),便于在网络上传输或在不支持PDF的设备上查看。 6. **创建PDF**:能够创建新的PDF文件,甚至可以包含图像和字体,实现自定义文档生成。 7. **数字签名**...

    使用Linux-Shell转换PDF文件为图片

    3. **参数传递**:可能的参数可以包括PDF文件路径、输出图片格式(如PNG、JPEG)、图片质量、每页是否单独保存等。 4. **执行转换**:jar包读取PDF文件,逐页解析,并将其转换为指定格式的图片。 5. **保存图片**:...

    pdf转图片输出(3种方式)附带jar包等

    要将PDF转换为图片,首先需要添加PDFBox的jar包到项目类路径。PDFBox提供了`PDDocument`类,通过它的`renderImageWithDPI`方法可以将PDF页面渲染成图像。例如: ```java PDDocument document = PDDocument.load...

    word转pdf pdf转JPG JPG修改分辨率

    以下将详细讨论“word转pdf”、“pdf转JPG”以及“JPG修改分辨率”这三个知识点。 首先,我们来看“word转pdf”。Word文档虽然在编辑时提供了丰富的功能,但在跨平台分享和防止编辑方面,PDF格式更具优势。转换过程...

    word转pdf,pdf转pic

    首先,让我们关注"word转pdf"。Word文档是一种流行的文本编辑工具,而PDF(Portable Document Format)则是一种通用的文件格式,能够保持文档的原始布局和样式,适合共享和打印。转换的主要目的是确保接收者无论使用...

    conversion-pdf.rar

    转换PDF为图片通常涉及以下几个步骤: 1. 加载PDF文档。 2. 遍历PDF的每一页。 3. 将每一页渲染为图像,可以选择不同的分辨率和图像格式(如JPEG、PNG)。 4. 存储生成的图像文件。 将PDF转换为HTML涉及的步骤可能...

    Java_浏览PDF文档就像一本书翻页.zip

    如果`pdf-flipbook`是基于PDFBox构建的,那么我们可以通过PDFBox的API来操作PDF页面,将其转化为可以翻页的视图。这通常涉及到解析PDF文档,提取每一页的内容,然后用HTML或canvas元素模拟翻页效果。 实现PDF翻页的...

    java 操作pdf 相样实现 如:pdf 转为图片

    在IT领域,特别是Java开发中,处理PDF文档的需求十分常见,比如将PDF转换为图片,这一功能在多种应用场景中都显得尤为重要。本文将深入探讨如何使用Java操作PDF,特别是实现PDF到图片的转换,以及相关的技术细节和...

    word转pdf,pdf转jpg.zip

    3. **Word转PDF** 要使用Jacob将Word文档转换为PDF,首先需要确保系统已经安装了Microsoft Word,因为Jacob会通过COM接口调用Word来完成转换。以下是一个简单的示例代码: ```java import ...

    pdf转图片需要的jar

    PDF转图片功能是将PDF文档转换为一系列的图像文件,如JPEG、PNG或GIF等,以便于在网络上浏览、分享或者进行进一步的处理。在这个过程中,`com.sun.pdfview.PDFFile`和`com.sun.pdfview.PDFPage`是两个关键的Java类,...

    自己写的日常小工具——pdf转长图

    标题中的“pdf转长图”指的是将PDF文档转换为单张长图片的工具,这种工具在需要分享PDF内容或者在社交媒体上展示时非常有用。PDF文档通常包含多页,而将其转换成长图可以让用户轻松地浏览整个内容,尤其是在手机或...

    java如何将pdf转换成image

    首先,我们需要使用apache的PDFBox组件来实现pdf到image的转换。PDFBox是一个开源的java库,提供了对PDF文档的读取和写入操作。我们可以使用PDFBox来读取PDF文档,并将其转换成image。 下面是一个使用PDFBox将pdf...

    icepdf图片查看依赖jar和示例代码

    5. **PdfToJpgTest2.java**: 这是一个示例代码文件,展示了如何使用IcePDF将PDF文档转换为JPEG图片。这对于需要进行PDF到图像的转换或者预览操作的应用非常有用。 以下是一些关于使用IcePDF的关键知识点: **PDF...

    java初学者或开发者查询手册.pdf

    - 可输出多种格式的条形码图像:GIF、PNG、BMP、JPEG。 - **示例代码**: ```java import com.aspose.barcode.BarCodeBuilder; import com.aspose.barcode.EncodeTypes; BarCodeBuilder builder = new ...

    PdfViewerPDF查看器.zip

    1. PDF解析和渲染:了解PDF文档结构,学习如何使用选定的库解析PDF内容并将其转换为屏幕可显示的图像。 2. Android布局设计:查看XML布局文件,学习如何创建用户友好的界面来展示PDF文档。 3. Android权限管理:分析...

    文件服务(微服务)

    "文件服务(微服务)"是一个专为处理文档和图片上传、下载、查看而设计的服务,它利用了微服务的理念来实现高度可扩展和独立的组件。在本场景下,我们将深入探讨与这个主题相关的几个关键知识点。 首先,**Spring...

Global site tag (gtag.js) - Google Analytics