通過 Python for .NET 進行 PDF 文件轉換

將 PDF 匯出到微軟辦公®用字、Excel、簡報、圖像、HTML 和固定佈局格式

概述

在極少數情況下,需要操作 PDF 以外的文件,同時以 PDF 格式提供解析數據。因此,對於此類應用程式,將有兩種方案,要麼在自己的解決方案中添加PDF解析功能,要麼添加PDF轉換功能以操作受支援格式的數據。對於將 PDF 轉換為 Word**、Excel、HTML、圖像或任何所需格式的第二種方案,在基於 .NET 的代碼中實現 C# PDF 閱讀器和轉換器 代碼非常簡單。我們在這裡討論的是幾種情況,以便程式師可以根據自己的要求修改這些轉換代碼片段。

PDF 到 Microsoft Word 2003-2019 轉換

示例:PDF 到 Word 轉換的 C# 代碼

import aspose.pdf as ap

input_pdf = DIR_INPUT + "sample.pdf"
output_pdf = DIR_OUTPUT + "convert_pdf_to_doc.doc"

// 載入源檔
document = ap.Document(input_pdf)

// 使用保存選項保存
// 創建文件保存選項物件
 save_options = ap.DocSaveOptions()
save_options.format = ap.DocSaveOptions.DocFormat.DOCX

// 將識別模式設置為表示完全識別模式
save_options.mode = ap.DocSaveOptions.RecognitionMode.FLOW

// 其他兩種模式是識別模式”“文本框識別模式增強流

// 水平鄰近度設置為2.5
save_options.relative_horizontal_proximity = 2.5

// 使值在轉換過程中識別項目符號
save_options.recognize_bullets = True

// 保存生成的文件檔檔
document.save(output_pdf, save_options)

Aspose.PDF for .NET 庫支持所有 PDF 到 Word 的轉換。 如果我們只是在沒有任何特殊設置的情況下轉換 Microsoft Word 文檔,我們只需使用 Document 類的 Save 方法加載 PDF 文件,並將使用輸出 Word 文檔路徑和 SaveFormat 作為參數。 對於需要增強線距、圖像分辨率和更多設置的特殊情況,API 具有公開所有此類設置的 DocSaveOptions 類。

將 PDF 另存為 Excel 檔

將 PDF 另存為 Excel 檔

import aspose.pdf as ap

input_pdf = DIR_INPUT + "sample.pdf"
output_pdf = DIR_OUTPUT + "convert_pdf_to_excel.xlsx"
// 載入文件
document = ap.Document(input_pdf)
// 初始化快取選項
save_option = ap.ExcelSaveOptions()
// 設置輸出輸出
save_option.format = ap.ExcelSaveOptions.ExcelFormat.XLSX
// 盡量減少工作表的數量
save_option.minimize_the_number_of_worksheets = True
//  PDF 轉換為 Excel 輸出檔
document.save(output_pdf, save_option)

專用 [保存格式](https://apireference.aspose.com/pdf/net/aspose.pdf/saveformat) 枚舉可用於將 PDF 保存為特定的微軟 Excel XLS XLSX 輸出格式。此外,.NET PDF庫還具有一個特殊的[ExcelSaveOptions類](https://apireference.aspose.com/pdf/net/aspose.pdf/excelsaveoptions),它不僅可以保存為Excel格式,還可以提供不同的功能和屬性來設置不同的屬性,如精確的輸出格式,最小化工作表的數量等等。

將 PDF 轉換為簡報

示例:C# 代碼 PDF 到 PowerPoint 的轉換

import aspose.pdf as ap

input_pdf = DIR_INPUT + "sample.pdf"
output_pdf = DIR_OUTPUT + "convert_pdf_to_pptx.pptx
// 載入文件
document = ap.Document(input_pdf)
save_option = ap.PptxSaveOptions()
save_option.slides_as_images = True
// 保存輸出檔
document.save(output_pdf, save_option)

.NET PDF API 支持通过将幻灯片呈现为图像,将 PDF 页面转换为带有可选文本或图像的 PowerPoint 演示幻灯片。将便携式文档格式保存到 PowerPoint 的模式几乎相同,使用 Document 类加载文件,然后使用输出文件路径和 SaveFormat 作为参数调用 Save 方法。如果使用特殊的演示选项进行渲染,程序员可以将 pptxSaveOptions class 与任何相关的特定渲染选项一起使用。调用 save 方法并将选项作为参数传递。

可移植文件格式 PDF 到 HTML 的轉換

示例:用於 PDF 到 HTML 轉換的 C# 代碼

import aspose.pdf as ap

input_pdf = DIR_INPUT + "sample.pdf"
output_pdf = DIR_OUTPUT + "convert_pdf_to_html.html"

// 載入源文件
document = ap.Document(input_pdf)

// 實例化 HTML 儲存選項物件
save_options = ap.HtmlSaveOptions()

// 啟用選項以將所有資源嵌入到 HTML 
save_options.parts_embedding_mode = ap.HtmlSaveOptions.PartsEmbeddingModes.EMBED_ALL_INTO_HTML

//  PDF  HTML 指定單獨的資料夾帶影像
save_options.special_folder_for_all_images = "ImagesFolder"

// 將生成的 HTML 指定拆分為多個頁面的選項
save_options.split_into_pages = True

document.save(output_pdf, save_options)

PDF 解析庫支援將 PDF 另存為整個 HTML 以及包含影像的嵌入資源。對於一般情況,將 PDF 轉換為其他格式的過程相同,例如載入源文檔並使用輸出 HTML 檔路徑和 SaveFormat.Html 作為參數調用 Save 方法。在使用嵌入式資源進行保存的情況下,有一個[HtmlSaveOptions類](https://apireference.aspose.com/pdf/net/aspose.pdf/htmlsaveoptions)具有多個選項,例如在轉換過程中將圖像保存到特定資料夾,將生成的HTML拆分為多個頁面等等。

將 PDF 轉換為影像

示例:PDF 到圖像轉換的 C# 代碼

import aspose.pdf as ap

input_pdf = DIR_INPUT + "many_pages.pdf"
output_pdf = DIR_OUTPUT + "convert_pdf_to_jpeg"
imageStream = io.FileIO(output_pdf + "_page_1_out.jpeg", "x")

// 載入文件
document = ap.Document(input_pdf)

// 創建解析度物件
resolution = ap.devices.Resolution(300)

// 創建具有指定屬性的映像設備
// 寬度高度解析度
device = ap.devices.JpegDevice(resolution)
// 對於 BMPPNGTIFF它將分別是 BMP 設備PNG 設備Tiff 設備

// 轉換特定頁面並將圖像保存到流
device.process(document.pages[i + 1], imageStream)

// 關閉流
imageStream.close()

使用下面列出的代碼片段,在基於 .NET 的應用程式中,將 PDF 頁面轉換為包括 PNG、JPEG、TIFF、BMP 等在內的圖像非常容易。開發人員可以在載入檔後遍歷 PDF 頁面,並將逐頁轉換為所需的圖像格式。開發人員可以使用[解析度類](https://apireference.aspose.com/pdf/net/aspose.pdf.devices/resolution)設置圖像的外解析度和垂直解析度