html в xps

Как преобразовать HTML в XPS в C# .NET

Файл HTML широко используется в Интернете для обмена информацией. Поскольку он поддерживается большинством платформ и почти все веб-браузеры способны загружать этот формат, он является одним из приемлемых форматов. Однако из-за его широкого распространения многие хакеры пытаются встроить вредоносные скрипты в файлы HTML. Громкие атаки вредоносного кода HTML и JavaScript в последние годы стали значительно более осведомленными и эксплуатируемыми. С другой стороны, файл XPS представляет собой файлы макетов страниц, основанные на спецификациях XML Paper.

  • Формат XPS похож на формат файла PDF, но использует XML для макета, внешнего вида и печати информации документа.

API преобразования HTML

Aspose.HTML Cloud специально разработан для предоставления возможностей обработки HTML-файлов. Помимо входного HTML, мы также можем загружать XHTML, MHTML, EPUB, Markdown или веб-страницу по ее URL-адресу. Результирующим выводом могут быть форматы PDF, XPS, DOCX или растровые изображения: JPEG, PNG, TIFF, BMP, GIF. Поскольку API разработан в соответствии с архитектурой REST, его можно использовать в настольных, мобильных, веб- и гибридных приложениях, а также на настольных или мобильных платформах.

Чтобы еще больше облегчить работу нашим клиентам, мы создали SDK для конкретных языков программирования. Cloud SDK — это оболочки вокруг REST API на различных языках программирования, позволяющие обрабатывать документы на выбранном вами языке. Таким образом, вы можете быстро и легко получить все преимущества строгих типов и возможностей IDE. Пожалуйста, проверьте репозиторий Aspose.HTML GitHub на наличие SDK вместе с рабочими примерами, чтобы вы могли начать работу в кратчайшие сроки. В этой статье мы обсудим функции преобразования документов Aspose.HTML Cloud SDK для .NET.

Установка

Чтобы начать использовать Cloud SDK, первым шагом будет его установка в системе. SDK доступен через NuGet и GitHub. Пожалуйста, выполните следующую команду в окне терминала, чтобы выполнить установку для NuGet

nuget install Aspose.HTML-Cloud

Другой вариант — установить SDK через Package Manager Console в Visual Studio. Выполните следующую команду:

 PM> Install-Package Aspose.HTML-Cloud
Консоль менеджера пакетов

Изображение 1:- Установлен пакет Aspose.HTML NuGet.

Менеджер пакетов NuGet

Другой самый простой подход — установить SDK через диспетчер пакетов NuGet в среде Visual Studio IDE.

  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, просто зарегистрируйтесь или нажмите кнопку создать новую учетную запись и укажите необходимую информацию. Теперь войдите в панель управления, используя учетные данные, разверните раздел «Приложения» на панели управления и прокрутите вниз до раздела «Учетные данные клиента», чтобы увидеть данные Client ID и Client Secret.

Учетные данные клиента

Изображение 3: Учетные данные клиента на панели управления Aspose.Cloud.

HTML в XPS на C#

В этом разделе мы рассмотрим преобразование файлов HTML в формат XPS для следующих двух сценариев.

Загрузить HTML из облачного хранилища

Пожалуйста, следуйте инструкциям ниже, чтобы загрузить HTML-файл в облачное хранилище, а затем выполнить преобразование в формат XPS.

  • Прежде всего, создайте экземпляр HtmlApi, передав данные ClientID и ClientSecret в качестве аргументов.
  • Во-вторых, прочитайте HTML-файл, используя метод File.OpenRead(…).
  • В-третьих, создайте экземпляр StorageApi и используйте метод UploadFile(…) для загрузки HTML-файла в облачное хранилище.
  • Наконец, вызовите метод PutConvertDocumentToXps(…), чтобы выполнить преобразование HTML в XPS и сохранить полученный XPS в облачном хранилище.
// Получите ClientID с https://dashboard.aspose.cloud/
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.

Для целей тестирования входной HTML и результирующий XPS можно загрузить с inputHTML.html и Resultant.xps.

Конвертируйте HTML в XPS с помощью cURL

Поскольку наши API разработаны в соответствии с архитектурой REST, к ним также можно получить доступ с помощью команд cURL. В этом разделе мы обсудим преобразование HTML-страницы в формат XPS с помощью команды cURL. Но прежде чем мы продолжим, первым шагом будет создание JSON Web Token (JWT) на основе учетных данных клиента из панели управления Aspose.Cloud. Пожалуйста, следуйте инструкциям ниже, чтобы выполнить преобразование HTML в XPS.

  1. Получите свой идентификатор клиента и секретный код клиента из панели управления в облаке.
  2. Получите токен веб-доступа JSON на основе учетных данных клиента.
  3. Вызовите API PutConvertDocumentToXps.
  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 в фиксированную разметку страницы и другие растровые изображения. Мы изучили функции преобразования HTML с использованием фрагмента кода C# .NET, а также с использованием команд cURL.

Тем не менее, Aspose.HTML Cloud SDK для .NET, который является оболочкой вокруг Aspose.HTML Cloud, разработан под лицензией MIT, поэтому полный фрагмент кода можно загрузить с GitHub. Если у вас возникнут какие-либо проблемы при использовании API, пожалуйста, свяжитесь с нами через бесплатный форум поддержки продукта.

Похожие статьи

Мы рекомендуем посетить следующие ссылки, чтобы узнать больше о