翻譯|使用教程|編輯:李顯亮|2019-09-24 14:39:24.190|閱讀 371 次
概述:在Aspose.PDF for .Net中,提供了免費的HTML到PDF的基本轉(zhuǎn)換,而且還允許指定各種選項來實現(xiàn)所需的功能,比如將網(wǎng)頁轉(zhuǎn)換為PDF、使用SVG數(shù)據(jù)渲染HTML等等。本文將為大家通過示例解讀的方式講解如何實現(xiàn)這些功能。
# 界面/圖表報表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
推薦閱讀:【Aspose使用教程資源最全分享!(Aspose.PDF篇)】
Aspose.PDF for .NET是一種高級PDF處理和解析API,用于在跨平臺應(yīng)用程序中執(zhí)行文檔管理和操作任務(wù)。API可以輕松用于生成,修改,轉(zhuǎn)換,渲染,保護和打印PDF文檔,而無需使用Adobe Acrobat。此外,還提供PDF壓縮選項,表格創(chuàng)建和操作,圖形和圖像功能,廣泛的超鏈接功能,印章和水印任務(wù),擴展的安全控制和自定義字體處理。
HTML到PDF的轉(zhuǎn)換在將不同文件格式相互轉(zhuǎn)換之間具有其自身的意義,可以使用其他可用的應(yīng)用程序,工具和在線服務(wù)將HTML轉(zhuǎn)換為PDF。同樣,我們也可以使用編程的方式,將HTML轉(zhuǎn)換為PDF。
在Aspose.PDF for .Net中,提供了免費的HTML到PDF的基本轉(zhuǎn)換,而且還允許指定各種選項來實現(xiàn)所需的功能,比如將網(wǎng)頁轉(zhuǎn)換為PDF、使用SVG數(shù)據(jù)渲染HTML等等。接下來我們一起通過示例解讀的方式學習如何實現(xiàn)這些功能。
>>Aspose.PDF for .NET更新至最新版v19.9,點擊下載體驗。
只需使用幾行代碼和資源加載回調(diào)就可以以非常基本的方式將HTML轉(zhuǎn)換為PDF,以下是使您達到目的的代碼段:
// The path to the documents directory. string dataDir = RunExamples.GetDataDir_AsposePdf_DocumentConversion(); HtmlLoadOptions options = new HtmlLoadOptions(); options.CustomLoaderOfExternalResources = new LoadOptions.ResourceLoadingStrategy(SamePictureLoader); Document pdfDocument = new Document(dataDir + "HTMLToPDF.html", options); pdfDocument.Save("HTMLToPDF_out.pdf");
private static LoadOptions.ResourceLoadingResult SamePictureLoader(string resourceURI) { string dataDir = RunExamples.GetDataDir_AsposePdf_DocumentConversion(); byte[] resultBytes = File.ReadAllBytes(dataDir + "aspose-logo.jpg"); LoadOptions.ResourceLoadingResult result = new LoadOptions.ResourceLoadingResult(resultBytes); return result; }
通常需要將網(wǎng)頁轉(zhuǎn)換為PDF,并且如果手動執(zhí)行此操作,則需要執(zhí)行多個步驟。API提供的功能可以使用下面顯示的代碼執(zhí)行。需要注意的是,以下代碼段涵蓋了Web頁面到PDF轉(zhuǎn)換操作的兩個主要和基本方面:
//文檔目錄的路徑。 string dataDir = RunExamples.GetDataDir_AsposePdf_DocumentConversion(); //創(chuàng)建對該URL的請求。 WebRequest request = WebRequest.Create("// En.wikipedia.org/wiki/Main_Page"); //如果服務(wù)器需要,請設(shè)置憑據(jù)。 request.Credentials = CredentialCache.DefaultCredentials; //在請求超時之前以毫秒為單位超時 // Request.Timeout = 100; //獲取響應(yīng)。 HttpWebResponse response = (HttpWebResponse)request.GetResponse(); //獲取包含服務(wù)器返回內(nèi)容的流。 Stream dataStream = response.GetResponseStream(); //使用StreamReader打開流以方便訪問。 StreamReader reader = new StreamReader(dataStream); //閱讀內(nèi)容。 string responseFromServer = reader.ReadToEnd(); reader.Close(); dataStream.Close(); response.Close(); MemoryStream stream = new MemoryStream(System.Text.Encoding.UTF8.GetBytes(responseFromServer)); HtmlLoadOptions options = new HtmlLoadOptions("// En.wikipedia.org/wiki/"); //加載HTML文件 Document pdfDocument = new Document(stream, options); options.PageInfo.IsLandscape = true; //將輸出另存為PDF格式 pdfDocument.Save(dataDir + "WebPageToPDF_out.pdf");
以下代碼段顯示了如何將帶有SVG圖形標簽的HTML文件轉(zhuǎn)換為Tagged PDF Document:
//文檔目錄的路徑 string dataDir = RunExamples.GetDataDir_AsposePdf_DocumentConversion(); //設(shè)置輸入文件路徑 string inFile = dataDir + "HTMLSVG.html"; //設(shè)置輸出文件路徑 string outFile = dataDir + "RenderHTMLwithSVGData.pdf"; //初始化HtmlLoadOptions HtmlLoadOptions options = new HtmlLoadOptions(Path.GetDirectoryName(inFile)); //初始化Document對象 Document pdfDocument = new Document(inFile, options); //保存 pdfDocument.Save(outFile);
*想要購買Aspose正版授權(quán)的朋友可以哦~
ASPOSE技術(shù)交流QQ群(642018183)已開通,各類資源及時分享,歡迎交流討論!
掃描關(guān)注“慧聚IT”微信公眾號,及時獲取更多產(chǎn)品最新動態(tài)及最新資訊
本站文章除注明轉(zhuǎn)載外,均為本站原創(chuàng)或翻譯。歡迎任何形式的轉(zhuǎn)載,但請務(wù)必注明出處、不得修改原文相關(guān)鏈接,如果存在內(nèi)容上的異議請郵件反饋至chenjj@fc6vip.cn