En la era digital actual, la necesidad de convertir HTML a PDF se ha vuelto cada vez más importante. HTML, el lenguaje de la web, nos permite crear contenido dinámico e interactivo al que se puede acceder desde varios dispositivos y plataformas. Sin embargo, hay casos en los que necesitamos un formato más estático y de acceso universal para nuestro contenido web. PDF, con su diseño uniforme, compatibilidad multiplataforma y su naturaleza lista para imprimir, es una solución ideal. En este artículo, exploraremos los pormenores de la conversión de HTML a PDF mediante la API REST de .NET, lo que le permitirá aprovechar el poder de PDF y llevar su contenido web a nuevas alturas.
- API REST de conversión de HTML a PDF
- HTML a PDF en C#
- Convertir una página web a PDF mediante comandos cURL
API REST de conversión de HTML a PDF
Aspose.HTML Cloud SDK for .NET es una potente herramienta que permite la conversión sin problemas de HTML a PDF. El SDK ofrece una interfaz fácil de usar y un amplio conjunto de métodos y opciones para personalizar el proceso de conversión según los requisitos específicos. Por lo tanto, con Aspose.HTML Cloud SDK for .NET, los desarrolladores pueden integrar sin esfuerzo las capacidades de conversión de HTML a PDF en sus aplicaciones .NET, agilizando los flujos de trabajo y mejorando la accesibilidad y la facilidad de uso del contenido web.
El SDK se puede descargar desde NuGet o GitHub. Ahora, para instalar el SDK a través de NuGet, ejecute el siguiente comando en una ventana de terminal:
nuget install Aspose.HTML-Cloud
También puede instalar el paquete a través del administrador de paquetes NuGet ejecutando el siguiente comando:
PM> Install-Package Aspose.HTML-Cloud
Otro enfoque más sencillo es instalar el SDK a través del Administrador de paquetes NuGet dentro de Visual Studio IDE.
- Abra el Explorador de soluciones.
- Expanda el proyecto y haga clic derecho en la carpeta Paquetes dentro de su solución.
- Seleccione la opción Administrar paquetes NuGet…
- Haga clic en la pestaña Explorar y busque “Aspose.HTML-Cloud”.
- Haga clic en el paquete Aspose.HTML-Cloud, seleccione la versión adecuada en la pestaña derecha y haga clic en el botón Agregar paquete.
El siguiente paso importante es una suscripción gratuita a nuestros servicios en la nube a través del panel de control de Aspose.Cloud utilizando GitHub o una cuenta de Google. O bien, simplemente crea una nueva cuenta y obtén los detalles de tus credenciales de cliente.
HTML a PDF en C#
En esta sección se explica la conversión de una página web a PDF. El HTML de entrada ya está almacenado en la nube y, después de la conversión, el archivo resultante también se almacena en la nube.
- En primer lugar, cree una instancia de HtmlApi mientras pasa los detalles de ClientID y ClientSecret como argumentos.
- En segundo lugar, lea el contenido del archivo HTML utilizando el método File.OpenRead(..).
- En tercer lugar, cree una instancia de StorageApi y utilice el método UploadFile(…) para cargar el HTML de entrada al almacenamiento en la nube.
- Por último, llame al método PutConvertDocumentToPdf(…) para realizar la conversión de HTML a PDF y guardar la salida en el almacenamiento en la nube.
// Obtenga ClientID desde https://dashboard.aspose.cloud/
string clientSecret = "d757548a9f2558c39c2feebdf85b4c44";
string clientID = "4db2f826-bf9c-42e7-8b2a-8cbca2d15553";
// cadena URL base
const string SERVICE_API_HOST = "https://api.aspose.cloud";
// Crear una instancia de 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.
// nombre del archivo resultante
string resultantFile = "Resultant.pdf";
try
{
// cargar el archivo desde la unidad local
using (var file = System.IO.File.OpenRead(@"C:\Users\shahbnay\Desktop\" + name))
{
// Crear una instancia de StorageApi
var uploadFileRequest = new StorageApi(clientID, clientSecret, SERVICE_API_HOST);
// Subir archivo HTML al almacenamiento en la nube
uploadFileRequest.UploadFile(file, "inputHTML.html");
}
// Realizar la conversión a formato PDF
// guardar la salida en el almacenamiento en la nube
AsposeResponse response = htmlApi.PutConvertDocumentToPdf(
name, resultantFile, width, height,
leftMargin, rightMargin, topMargin, bottomMargin);
// Imprimir mensaje de éxito si la conversión es exitosa
if (response != null && response.Equals("OK"))
{
Console.WriteLine("HTML successfully converted to PDF !");
}
}catch (Exception ex)
{
Console.WriteLine("error:" + ex.Message + "\n" + ex.StackTrace);
}
Puede descargar los archivos de muestra utilizados en el ejemplo anterior desde inputHTML.html y Resultant.pdf, respectivamente.
Convertir una página web a PDF mediante comandos cURL
La conversión de HTML a PDF mediante comandos cURL ofrece varias ventajas. En primer lugar, proporciona un método sencillo y directo para iniciar el proceso de conversión sin necesidad de codificación o integración complejas. En segundo lugar, al aprovechar cURL, puede enviar fácilmente solicitudes HTTP y gestionar respuestas, lo que lo convierte en una opción conveniente para realizar la conversión de HTML a PDF. Además, los comandos cURL se pueden incorporar fácilmente a secuencias de comandos o flujos de trabajo de automatización, lo que permite conversiones por lotes eficientes y automatizadas.
Siga los pasos que se indican a continuación para realizar la conversión de HTML a PDF.
- Obtén tu Id. de cliente y secreto de cliente desde el panel de control de la nube.
- Obtenga el token de acceso web JSON basado en las credenciales del cliente.
- Llame a la API PutConvertDocumentToPdf.
Ahora, ejecute el siguiente comando cURL para generar el token de acceso 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"
Ejecute el siguiente comando para cargar el archivo HTML de entrada al almacenamiento en la nube:
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":{}}
Ahora, ejecute el siguiente comando para guardar la página web como HTML. El archivo resultante se almacenará en la nube.
curl -X PUT "https://api.aspose.cloud/html/inputHTML.html/convert/pdf?outPath=Converted.pdf&width=800&height=1000&leftMargin=10&rightMargin=10&topMargin=10&bottomMargin=10" \
-H "accept: application/json" \
-H "authorization: Bearer <JWT Token>"
Enlaces útiles
Conclusión
En conclusión, convertir HTML a PDF es un requisito fundamental para muchas aplicaciones y, con la disponibilidad de herramientas potentes como Aspose.HTML Cloud SDK para .NET y los comandos cURL, tiene múltiples opciones para lograr esta tarea. Ya sea que prefiera la simplicidad y la conveniencia de un SDK dedicado o la flexibilidad y las capacidades de automatización de los comandos cURL, ambos enfoques ofrecen soluciones eficientes y confiables.
Entonces, ya sea que esté creando aplicaciones web, generando informes o archivando contenido web, la capacidad de convertir HTML a PDF mediante .NET REST API garantiza que pueda satisfacer de manera fácil y efectiva sus necesidades comerciales.
Artículos relacionados
Le recomendamos visitar los siguientes enlaces para obtener más información sobre: