PDF转换为TIF,JPG的一个简易工具(含下载链接)

目录

0.前言:

1.工具目录

2.工具功能(效果),如何运行

效果

PDF转换为JPG(带颜色)

PDF转换为TIF(LZW形式压缩,可以显示子的深浅)

PDF转换为TIF(CCITT形式压缩,无法显示子的深浅)

如何运行

3.代码

[PDF转换为JPG(带颜色) 代码](#PDF转换为JPG(带颜色) 代码)

[PDF转换为TIF(LZW形式压缩,可以显示子的深浅) 代码](#PDF转换为TIF(LZW形式压缩,可以显示子的深浅) 代码)

[PDF转换为TIF(CCITT形式压缩,无法显示子的深浅) 代码](#PDF转换为TIF(CCITT形式压缩,无法显示子的深浅) 代码)

4.代码参考

5.下载地址


=========

0.前言:

这个工具是java实现的,

现在电脑上一般都安装了JRE,即使你不会java,不懂什么是Java。

只要你电脑上安装了jre,这个工具一样可以使用。

===

1.工具目录

把要转换的PDF命名为【input.pdf】放到下面的目录中

2.工具功能(效果),如何运行

效果

PDF转换为JPG(带颜色)

===

PDF转换为TIF(LZW形式压缩,可以显示子的深浅)

PDF转换为TIF(CCITT形式压缩,无法显示子的深浅)

如何运行

执行对于的bat即可执行。

===

3.代码

PDF转换为JPG(带颜色) 代码

java 复制代码
package com.sxz.study.pdf;

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

import javax.imageio.IIOImage;
import javax.imageio.ImageIO;
import javax.imageio.ImageWriteParam;
import javax.imageio.ImageWriter;
import javax.imageio.stream.FileImageOutputStream;

import org.apache.pdfbox.pdmodel.PDDocument;
import org.apache.pdfbox.rendering.ImageType;
import org.apache.pdfbox.rendering.PDFRenderer;

public class TestPDFToJpg {

	public static void main(String[] args) {
		try {
			String currentDirectory = System.getProperty("user.dir");
			System.out.println("----------------------");
			System.out.println(currentDirectory );
			// Load the PDF document
			PDDocument document = PDDocument.load(new File((currentDirectory + "\\PDF\\input.pdf")));

			// Create a PDF renderer
			PDFRenderer pdfRenderer = new PDFRenderer(document);

			// Iterate over each page in the PDF document
			for (int pageNumber = 0; pageNumber < document.getNumberOfPages(); pageNumber++) {
				// Render the PDF page to a BufferedImage
				// BufferedImage image = pdfRenderer.renderImageWithDPI(pageNumber, 300,
				// ImageType.RGB);
				BufferedImage image = pdfRenderer.renderImageWithDPI(pageNumber, 200, ImageType.RGB);

		        ImageWriter writer = ImageIO.getImageWritersByFormatName("jpg").next();
		        ImageWriteParam writeParam = writer.getDefaultWriteParam();
		        writeParam.setCompressionMode(ImageWriteParam.MODE_EXPLICIT);
//		        writeParam.setCompressionType("LZW");
				
		        // 创建输出文件流
		        FileImageOutputStream output = new FileImageOutputStream(new File(currentDirectory + "\\JPG\\Oupput_" + (pageNumber + 1) + ".jpg"));
		        writer.setOutput(output);

		        // 写入压缩后的TIF图像
		        writer.write(null, new IIOImage(image, null, null), writeParam);

		        // 关闭输出流
		        output.close();
		        
			}

			// Close the PDF document
			document.close();

			System.out.println("PDF converted to TIF successfully");
		} catch (Exception e) {
			e.printStackTrace();

		}
	}
}

PDF转换为TIF(LZW形式压缩,可以显示子的深浅) 代码

java 复制代码
package com.sxz.study.pdf;

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

import javax.imageio.IIOImage;
import javax.imageio.ImageIO;
import javax.imageio.ImageWriteParam;
import javax.imageio.ImageWriter;
import javax.imageio.stream.FileImageOutputStream;

import org.apache.pdfbox.pdmodel.PDDocument;
import org.apache.pdfbox.rendering.ImageType;
import org.apache.pdfbox.rendering.PDFRenderer;

public class TestPDFToTIFCompressLZW {

	public static void main(String[] args) {
		try {

			String currentDirectory = System.getProperty("user.dir");
			System.out.println("----------------------");
			System.out.println(currentDirectory );

			// Load the PDF document
			PDDocument document = PDDocument.load(new File((currentDirectory + "\\PDF\\input.pdf")));

			// Create a PDF renderer
			PDFRenderer pdfRenderer = new PDFRenderer(document);

			// Iterate over each page in the PDF document
			for (int pageNumber = 0; pageNumber < document.getNumberOfPages(); pageNumber++) {
				// Render the PDF page to a BufferedImage
				// BufferedImage image = pdfRenderer.renderImageWithDPI(pageNumber, 300,
				// ImageType.RGB);
				BufferedImage image = pdfRenderer.renderImageWithDPI(pageNumber, 200, ImageType.GRAY);

		        ImageWriter writer = ImageIO.getImageWritersByFormatName("tiff").next();
		        ImageWriteParam writeParam = writer.getDefaultWriteParam();
		        writeParam.setCompressionMode(ImageWriteParam.MODE_EXPLICIT);
		        writeParam.setCompressionType("LZW");
				
		        // 创建输出文件流
		        FileImageOutputStream output = new FileImageOutputStream(new File(currentDirectory + "\\TIF_LZW\\Oupput_" + (pageNumber + 1) + ".TIF"));
		        writer.setOutput(output);

		        // 写入压缩后的TIF图像
		        writer.write(null, new IIOImage(image, null, null), writeParam);

		        // 关闭输出流
		        output.close();
		        
			}

			// Close the PDF document
			document.close();

			System.out.println("PDF converted to TIF successfully");
		} catch (Exception e) {
			e.printStackTrace();

		}
	}
}

PDF转换为TIF(CCITT形式压缩,无法显示子的深浅) 代码

java 复制代码
package com.sxz.study.pdf;

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

import javax.imageio.IIOImage;
import javax.imageio.ImageIO;
import javax.imageio.ImageWriteParam;
import javax.imageio.ImageWriter;
import javax.imageio.stream.FileImageOutputStream;

import org.apache.pdfbox.pdmodel.PDDocument;
import org.apache.pdfbox.rendering.ImageType;
import org.apache.pdfbox.rendering.PDFRenderer;

public class TestPDFToTIFCompressCCITT {

    public static void main(String[] args) {
        try {
			String currentDirectory = System.getProperty("user.dir");
			System.out.println("----------------------");
			System.out.println(currentDirectory );

			// Load the PDF document
			PDDocument document = PDDocument.load(new File((currentDirectory + "\\PDF\\input.pdf")));
            
			// Create a PDF renderer
			PDFRenderer pdfRenderer = new PDFRenderer(document);
            
			// Iterate over each page in the PDF document
			for (int pageNumber = 0; pageNumber < document.getNumberOfPages(); pageNumber++) {
				// Render the PDF page to a BufferedImage
				// BufferedImage image = pdfRenderer.renderImageWithDPI(pageNumber, 300,
				// ImageType.RGB);
				BufferedImage image = pdfRenderer.renderImageWithDPI(pageNumber, 200, ImageType.BINARY);

		        ImageWriter writer = ImageIO.getImageWritersByFormatName("tiff").next();
		        ImageWriteParam writeParam = writer.getDefaultWriteParam();
		        writeParam.setCompressionMode(ImageWriteParam.MODE_EXPLICIT);
		        writeParam.setCompressionType("CCITT T.4");
		        //writeParam.setCompressionQuality(1.0f);
				
		        // 创建输出文件流
		        FileImageOutputStream output = new FileImageOutputStream(new File(currentDirectory + "\\TIF_CCIT\\Oupput_" + (pageNumber + 1) + ".TIF"));
		        writer.setOutput(output);

		        // 写入压缩后的TIF图像
		        writer.write(null, new IIOImage(image, null, null), writeParam);

		        // 关闭输出流
		        output.close();
		        
			}

			// Close the PDF document
			document.close();

			System.out.println("PDF converted to TIF successfully");
		} catch (Exception e) {
			e.printStackTrace();

		}
	}
}

4.代码参考

java实现,PDF转图片(TIF,jpg)、PDF中写入内容_pdf转tif乱码 java-CSDN博客

5.下载地址

== 资源

PDF转换为TIF,JPG图片的简易工具资源-CSDN文库

==

相关推荐
ComPDFKit10 小时前
用 ComPDF DocSlight 提取 PDF 表格:三种样本实测与 Python 接入
开发语言·python·pdf·pdf表格提取
yiyideda12 小时前
保单OCR工程实践:PDF/扫描件/纸质拍照三种输入下的字段结构化方案
计算机视觉·pdf·ocr·车险保单识别·保单ocr识别
Lhan.zzZ12 小时前
Qt/QML:业务记录单展示、签名确认与 PDF 导出开发
c++·qt·pdf
万祥Python1 天前
2026年6月英语六级真题及答案解析(第一、二、三套全PDF)
pdf
Latchh1 天前
PDF打开不要密码却显示已加密,前端怎么判断
前端·图像处理·人工智能·计算机视觉·pdf
原子延迟1 天前
PDF权限密码和打开密码差在哪?我拿7份文件试了
图像处理·人工智能·计算机视觉·pdf
zxanz11 天前
Gotenberg PDF 转换服务曝出高危 RCE 安全漏洞
pdf
dotnet全栈开发2 天前
火爆全网的《高性价比人生指南》,613条建议最新完整版PDF来了!
pdf
零基础1232 天前
PDF 处理工具全攻略:pdf24、PDFgear、Adobe Acrobat DC 与 Stirling-PDF 深度对比
java·开发语言·pdf
南风微微吹2 天前
考研数学一、二、三历年真题及答案解析PDF(1987-2026年)
考研·pdf