html 轉 xps

如何在 C# .NET 中將 HTML 轉換為 XPS

HTML 文件在互聯網上廣泛用於資訊共享。由於大多數平台都支援它,並且幾乎所有網頁瀏覽器都能夠加載這種格式,因此它成為可接受的格式之一。然而,由於其廣泛接受,許多駭客嘗試在 HTML 檔案中嵌入惡意腳本。近年來,人們對惡意 HTML 和 JavaScript 程式碼的高調攻擊的認識和利用都急劇增加。另一方面,XPS 文件表示基於 XML 紙張規範的頁面佈局文件。

  • XPS 與 PDF 文件格式類似,但在文件的佈局、外觀和列印資訊中使用 XML。

HTML 轉換 API

Aspose.HTML Cloud 專門設計用於提供處理 HTML 檔案的功能。除了輸入 HTML 之外,我們還可以透過 URL 載入 XHTMLMHTMLEPUBMarkdown 或網頁。產生的輸出可以是 PDF、XPS、DOCX 或光柵影像格式:JPEG、PNG、TIFF、BMP、GIF。由於該API是根據REST架構開發的,因此它可以用於桌面、行動、Web和混合應用程序,以及桌面或行動平台。

為了進一步方便我們的客戶,我們創建了特定於程式語言的 SDK。 Cloud SDK 是各種程式語言的 REST API 的包裝器,可讓您以您選擇的語言處理文件。這樣,您就可以快速輕鬆地獲得強類型和 IDE 亮點的所有好處。請檢查 Aspose.HTML GitHub 儲存庫 中的 SDK 以及工作範例,以便您立即開始使用。在本文中,我們將討論 Aspose.HTML Cloud SDK for .NET 的文件轉換功能。

安裝

要開始使用 Cloud SDK,第一步是在系統上安裝它。此 SDK 可透過 NuGetGitHub 取得。請在終端機視窗中執行以下命令來執行NuGet的安裝

nuget install Aspose.HTML-Cloud

另一個選擇是透過 Visual Studio 中的套件管理器控制台安裝 SDK。請執行以下命令:

 PM> Install-Package Aspose.HTML-Cloud
套件管理器控制台

圖 1:- Aspose.HTML NuGet 套件已安裝。

NuGet 套件管理器

另一個最簡單的方法是透過 Visual Studio IDE 中的 NuGet 套件管理器安裝 SDK。

  1. 開啟解決方案資源管理器。
  2. 展開專案並右鍵單擊解決方案中的 Packages 資料夾。
  3. 選擇管理 NuGet 套件…選項。
  4. 點擊“瀏覽”選項卡並蒐索“Aspose.HTML-Cloud”。
  5. 按一下 Aspose.HTML-Cloud 包,在右側標籤中選擇適當的版本,然後按一下「新增套件」按鈕。
標題

Image 2:- Aspose.HTML Package in NuGet Package Manager.

免費雲端訂閱

下一個重要的步驟是在 Aspose.Cloud 儀表板 上免費訂閱帳戶。無需信用卡或其他付款詳細資訊。如果您有 GitHub 或 Google 帳戶,只需註冊或點擊 建立新帳戶 按鈕並提供所需資訊。現在使用憑證登入儀表板,並從儀表板展開「應用程式」部分,然後向下捲動至「用戶端憑證」部分以查看用戶端 ID 和用戶端金鑰詳細資料。

客戶憑證

圖 3:- Aspose.Cloud 儀表板中的客戶端憑證。

C# 中的 HTML 到 XPS

在本節中,我們將針對以下兩種情況討論 HTML 檔案到 XPS 格式的轉換。

從雲端儲存載入 HTML

請按照以下說明將 HTML 檔案上傳到雲端存儲,然後轉換為 XPS 格式。

  • 首先,請建立 HtmlApi 實例,同時傳遞 ClientID 和 ClientSecret 詳細資料作為參數。
  • 其次,使用 File.OpenRead(…) 方法讀取 HTML 檔案。
  • 第三,建立 StorageApi 實例並使用 UploadFile(…) 方法將 HTML 檔案上傳到雲端儲存。
  • 最後,呼叫 PutConvertDocumentToXps(…) 方法執行 HTML 到 XPS 的轉換,並將產生的 XPS 儲存到雲端儲存。
// 從 https://dashboard.aspose.cloud/ 取得 ClientID
string clientSecret = "d757548a9f2558c39c2feebdf85b4c44";
string clientID = "4db2f826-bf9c-42e7-8b2a-8cbca2d15553";
// 基本 URL 字串
const string SERVICE_API_HOST = "https://api.aspose.cloud";

// 建立HtmlApi實例
HtmlApi htmlApi = new HtmlApi(clientID, clientSecret,SERVICE_API_HOST);

String name = "inputHTML.html";// inpit Document name.
int width = 800; // Resulting image width.
int height = 1000; // Resulting image height.
int leftMargin = 10; // Left resulting image margin.
int rightMargin = 10; // Right resulting image margin.
int topMargin = 10; // Top resulting image margin.
int bottomMargin = 10; // Bottom resulting image margin.

// 結果文件的名稱
string resultantFile = "Resultant.xps";

try
{
    // 從本機磁碟機載入文件
    using (var file = System.IO.File.OpenRead(@"C:\Users\shahbnay\Desktop\" + name))
    {
        // 建立StorageApi實例
        var uploadFileRequest = new StorageApi(clientID, clientSecret, SERVICE_API_HOST);
        
        // 將 HTML 文件上傳到雲端存儲
        uploadFileRequest.UploadFile(file, "inputHTML.html");
    }
    
    // 執行轉換為 PDF 格式
    // 將輸出保存到雲端存儲
    AsposeResponse response = htmlApi.PutConvertDocumentToPdf(
    name, resultantFile, width, height,
    leftMargin, rightMargin, topMargin, bottomMargin);
    
    // 如果轉換成功則列印成功訊息
    if (response != null && response.Equals("OK"))
    {
        Console.WriteLine("HTML successfully converted to XPS !");
    }
}catch (Exception ex)
{
    Console.WriteLine("error:" + ex.Message + "\n" + ex.StackTrace);
}
標題

Image 4:- HTML to XPS conversion preview.

出於測試目的,可以從 inputHTML.htmlResultant.xps 下載輸入 HTML 和產生的 XPS。

使用 cURL 將 HTML 轉換為 XPS

由於我們的API是根據REST架構開發的,因此也可以透過cURL命令存取它們。在本節中,我們將討論使用 cURL 指令將 HTML 頁面轉換為 XPS 格式。但在我們繼續之前,第一步是根據 Aspose.Cloud 儀表板 中的客戶端憑證建立 JSON Web 令牌 (JWT)。請依照下面給出的步驟執行 HTML 到 XPS 的轉換。

  1. 從雲端儀表板取得您的客戶端 ID 和客戶端金鑰。
  2. 根據客戶端憑證取得 JSON Web 存取權杖。
  3. 呼叫 PutConvertDocumentToXps API。
  4. 生成的 PDF 檔案將保存在雲端儲存中。

請執行以下 cURL 指令來產生 JWT 存取權杖。

 curl -v "https://api.aspose.cloud/connect/token" \
 -X POST \
 -d "grant_type=client_credentials&client_id=4db2f826-bf9c-42e7-8b2a-8cbca2d15553&client_secret=d757548a9f2558c39c2feebdf85b4c44" \
 -H "Content-Type: application/x-www-form-urlencoded" \
 -H "Accept: application/json"

請執行以下命令將 HTML 檔案上傳到雲端儲存:

curl -X PUT "https://api.aspose.cloud/html/storage/file/inputHTML.html" \
-H  "accept: application/json" \
-H  "authorization: Bearer <JWT Token>" \
-H  "Content-Type: multipart/form-data" \
-d {"File":{}}

HTML 上傳到雲端儲存後,可以使用以下命令執行 HTML 到 XPS 的轉換並將結果檔案保存在雲端儲存中。

curl -X PUT "https://api.aspose.cloud/html/inputHTML.html/convert/xps?outPath=converted.xps&width=800&height=1000&leftMargin=10&rightMargin=10&topMargin=10&bottomMargin=10" \
-H  "accept: application/json" \
-H  "authorization: Bearer <JWT Token>"

免費 XPS 檢視器

為了查看XPS文件,您可以考慮使用XPS Viewer App。它是在 REST API 之上開發的,使您能夠體驗 API 的驚人功能。

結論

我們探索了 Aspose.HTML Cloud 將 HTML 檔案轉換為固定頁面佈局和其他光柵圖像的功能。我們探索了使用 C# .NET 程式碼片段以及使用 cURL 指令轉換 HTML 的功能。

然而,Aspose.HTML Cloud SDK for .NET是Aspose.HTML Cloud的包裝器,是在MIT許可下開發的,因此可以從GitHub下載完整的程式碼片段。如果您在使用 API 時遇到任何問題,請隨時透過免費產品支援論壇與我們聯絡。

相關文章

我們建議訪問以下連結以了解更多信息