PDF是當今最流行的文檔格式之一,各種應用程式將其用作最終輸出。由於支持多種數據類型和可移植性,因此它是創建和共用內容的首選格式。作為對開發文檔管理應用程式感興趣的.NET應用程式開發人員,可能希望嵌入處理功能,以讀取PDF文檔並將其轉換為其他文件格式,例如HTML。 Aspose.PDF for ...
PDF是當今最流行的文檔格式之一,各種應用程式將其用作最終輸出。由於支持多種數據類型和可移植性,因此它是創建和共用內容的首選格式。作為對開發文檔管理應用程式感興趣的.NET應用程式開發人員,可能希望嵌入處理功能,以讀取PDF文檔並將其轉換為其他文件格式,例如HTML。
Aspose.PDF for .NET是一種高級PDF處理和解析API,用於在跨平臺應用程式中執行文檔管理和操作任務。API可以輕鬆用於生成,修改,轉換,渲染,保護和列印PDF文檔,而無需使用Adobe Acrobat。
在本文中,我們將探索並演示Aspose.PDF for .NET API的強大轉換功能,以使用多種選項讀取PDF文件並將其轉換為HTML。
PDF轉HTML-在style.css中設置字體的URL首碼
Aspose.PDF for .NET提供了將HTML文件轉換為PDF並將PDF文件轉換為HTML的功能。在PDF到HTML的轉換過程中,PDF中使用的TrueType字體保存在文件系統中。
在高版本中,可以使用自定義資源節省策略為字體設置自定義URL:
//文檔目錄的路徑。 string dataDir = RunExamples.GetDataDir_AsposePdf_DocumentConversion_PDFToHTMLFormat(); Document doc = new Document(dataDir + "input.pdf"); string outHtmlFile = dataDir + "PrefixForFonts_out.html"; _desiredFontDir = Path.GetDirectoryName(outHtmlFile) + @"\36296_files\"; if (!Directory.Exists(_desiredFontDir)) { Directory.CreateDirectory(_desiredFontDir); } // 重置字體名稱計數器-此計數器將在我們的自定義代碼中使用 // 生成唯一字體文件名 _fontNumberForUniqueFontFileNames = 0; // 使用自定義保存策略創建HtmlSaveOption,它將完成所有工作 HtmlSaveOptions saveOptions = new HtmlSaveOptions(); saveOptions.CustomResourceSavingStrategy = new HtmlSaveOptions.ResourceSavingStrategy(CustomResourcesProcessing); doc.Save(outHtmlFile, saveOptions);
客戶處理實例
private static string CustomResourcesProcessing(SaveOptions.ResourceSavingInfo resourceSavingInfo) { //----------------------------------------------------------------------------- // 這隻是可能實現資源的客戶處理的示例 //在結果HTML中引用 //----------------------------------------------------------------------------- // 1)在這種情況下,我們只需要做一些特別的事情 // 使用字體,因此讓我們保留所有其他資源的處理 // 轉換本身 if (resourceSavingInfo.ResourceType != SaveOptions.NodeLevelResourceType.Font) { resourceSavingInfo.CustomProcessingCancelled = true; return ""; } // 如果提供了字體資源,請自行處理 // 1)將提供的帶有短名稱的字體寫入所需的文件夾 // 您可以輕鬆地做任何事情-這隻是實現之一 _fontNumberForUniqueFontFileNames++; string shortFontFileName = (_fontNumberForUniqueFontFileNames.ToString() + Path.GetExtension(resourceSavingInfo.SupposedFileName)); string outFontPath = _desiredFontDir + "\\" + shortFontFileName; System.IO.BinaryReader fontBinaryReader = new BinaryReader(resourceSavingInfo.ContentStream); System.IO.File.WriteAllBytes(outFontPath, fontBinaryReader.ReadBytes((int)resourceSavingInfo.ContentStream.Length)); // 返回所需的URI,CSS中將使用該URI引用字體 string fontUrl = "http:// Localhost:255/document-viewer/GetFont/" + shortFontFileName; return fontUrl; }
如果您有任何下載或其他需求,請隨時加入Aspose技術交流群(642018183)