在實際環境中測試
在生產環境中測試無浮水印。
在任何需要的地方都能運作。
在當今日益數位化的世界裡,便攜文件格式 (PDF) 已成為分享和保存數位文件的普遍文件格式。然而,有時將PDF轉換為圖像是必要的,這為用戶開啟了無數可能性。將PDF轉換為圖像格式提供了一個多功能解決方案,使文件能順利地整合到演示文稿、網頁或社交媒體平台中。在這個視覺傳達的時代,將PDF轉換為圖像的能力提升了文件的可訪問性,並開啟了創意和便利的新途徑。本文探討了使用Java和可用工具高效完成此任務的意義。
為此,我們將使用並比較以下兩個Java PDF庫:
iTextSharp (iText7)
使用 iTextSharp 将 PDF 文件转换为图像 (iText7)首先設置環境。
使用 renderPdf
物件加載現有的 PDF 文件。
使用 PdfRenderImageType
方法設置 PDF 文件的渲染屬性。
使用 PdfToImageRenderer
實例化 PDF 文件的轉換。
OUTPUT_DIRECTORY
將圖片保存到指定的路徑。IronPDF for Java 在Java编程生态系统中开创了强大的PDF操作和生成能力。随着企业和开发人员寻求高效的解决方案以通过编程方式处理PDF相关任务,IronPDF 成为一个可靠且功能丰富的库。无论是将HTML内容转换为PDF,合并、拆分还是编辑现有的PDF文档,IronPDF都为Java开发人员提供了一整套工具以简化工作流程。凭借其易于集成和详尽的文档,这个库使得Java应用程序能够无缝地与PDF交互,提供一个全面的解决方案以满足所有与PDF相关的需求。在本文中,我们将探讨IronPDF for Java的主要功能和优点,并展示其如何简化Java应用程序中的PDF处理过程。
iTextSharp for Java (iText7),強大且多功能的 PDF 庫,為開發人員提供了能夠以程式方式創建、修改和操作 PDF 文件的能力。最初為 .NET 開發,iTextSharp (iText7) 已經適應Java,為Java生態系統中的所有PDF相關任務提供無縫且高效的解決方案。借助其豐富的功能和易於使用的API,iText7使Java開發人員能夠輕鬆生成動態PDF、添加內容、插入圖片以及從現有PDF中提取數據。無論是創建發票、生成報告,還是將PDF處理集成到企業應用程序中,iText7都是一個有價值的工具,使開發人員能夠完全控制其PDF處理需求。在本文中,我們將探索iTextSharp for Java的基本功能和優點 (iText7) 並通過實際範例展示其功能。
要將 IronPDF 及其所需的日誌記錄依賴項 SLF4J 集成到您的 Maven 項目中,請按照以下步驟操作:
打開項目的 pom.xml 文件。
導航到 dependencies 部分。如果不存在,請創建一個。
<dependency>
<groupId>com.ironsoftware</groupId>
<artifactId>com.ironsoftware</artifactId>
<version>2023.7.2</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-simple</artifactId>
<version>2.0.3</version>
</dependency>
保存 pom.xml 文件。
那就是全部! 只需按下上方顯示的按鈕即可將這些依賴項包含在您的專案中。
要安裝 iText7,請按照以下步驟添加依賴項:
<!-- https://mvnrepository.com/artifact/com.itextpdf/itext7-core -->
<dependency>
<groupId>com.itextpdf</groupId>
<artifactId>itext7-core</artifactId>
<version>8.0.0</version>
<type>pom</type>
</dependency>
就這樣,您的依賴項已經安裝完成。
使用IronPDF從PDF頁面提取圖像比你想像的更簡單,只需幾行代碼即可完成。IronPDF支持多種圖像文件類型,例如JPEG和PNG。
在本節中,我們將通過示例代碼,使用IronPDF for Java將PDF文件轉換為圖像。
import com.ironsoftware.ironpdf.License;
import com.ironsoftware.ironpdf.PdfDocument;
import javax.imageio.ImageIO;
import java.awt.image.BufferedImage;
import java.nio.file.Files;
import java.nio.file.Paths;
import java.util.List;
import java.io.File;
public class Main {
public static void main(String [] args) throws Exception {
// Create a new PdfDocument instance
PdfDocument pdf = PdfDocument.fromFile(Paths.get("composite.pdf"));
List<BufferedImage> images = pdf.extractAllImages();
int i = 1;
for (BufferedImage extractedImage : images) {
String fileName = "assets/extracted_" + i++ + ".png";
ImageIO.write(extractedImage, "PNG", new File(fileName));
}
}
}
上面的代碼首先使用 PdfDocument.fromFile
打開 PDF 文件()方法,它將檔案路徑作為參數。然後它使用 extractAllImages()
方法從 PDF 文件中提取所有圖像並將它們保存到名為images
的列表中。然後,它循環遍歷這些圖像,並使用ImageIO.write
保存每個圖像。()方法,這會接受圖像、文件類型 (PNG),並且將路徑和名稱作為參數。
在本節中,我們將介紹如何使用iText7 Java PDF庫從PDF中提取圖片。以下是iText7 PDF到圖片提取的範例代碼。
import com.itextpdf.pdfrender.PdfRenderImageType;
import com.itextpdf.pdfrender.PdfToImageRenderer;
import com.itextpdf.pdfrender.RenderingProperties;
import java.io.File;
import java.io.IOException;
public class PdfRender_Demo {
private static String ORIG = "/uploads/input.pdf";
private static String OUTPUT_DIRECTORY = "/myfiles/";
public static void main(String [] args) throws IOException {
final RenderingProperties properties = new RenderingProperties();
properties.setImageType(PdfRenderImageType.JPEG);
properties.setScaling(1.0f);
PdfToImageRenderer.renderPdf(new File(ORIG), new File(OUTPUT_DIRECTORY), "/customfilename-%d", properties);
}
}
使用iText7時,發現iText7速度慢,且無法輕鬆處理大型文件。
在今天數位化的世界裡,將PDF轉換為圖片的能力提供了多樣化的可能性,能將文件無縫地整合到演示文稿、網頁或社交媒體平台中,增強了可訪問性和創意。iTextSharp for Java也是這樣 (iText7) 和 IronPDF for Java 提供了這項任務的寶貴解決方案。
iTextSharp 賦予開發者強大且多用途的 PDF 函式庫,能夠以程式方式創建、修改和操作 PDF 文件。然而,它可能在處理大型文件和處理速度方面遇到挑戰。
相比之下, IronPDF 提供功能豐富且高效的庫,為開發人員提供了以程式方式處理 PDF 相關工作的工具,包括提取影像、合併、分割和編輯 PDF 文件。 IronPDF 在這次比較中顯然勝出。
有關使用Java從PDF中提取圖像的完整教程,請訪問以下 link 連結. 完整的比較可以在此查看 連結.
iText7 每個 PDF 價格從 $0.15 起。至於 IronPDF,它提供一次性購買的終身授權,價格從 $749 起,也提供 免費試用授權欲了解更多信息,請訪問 IronPDF 授權頁面.