Pruebas en un entorno real
Pruebe en producción sin marcas de agua.
Funciona donde lo necesites.
El ActivePDF Toolkit
es un componente de software utilizado para trabajar con archivos PDF(incluida la generación de archivos PDF a partir de distintas fuentes) y establecer sus propiedades(como Encabezado, Pie de página, Margen o Marca de agua).
ironPDF` es una herramienta deBiblioteca PDF C# que también ofrece estas funciones, con precios competitivos.
Aquí veremos las funciones, ejemplos de código y acciones paso a paso para utilizar ambos componentes de software en un proyecto .NET Visual Studio, para que pueda decidir por sí mismo qué es lo mejor para su aplicación.
Iron Software es un proveedor de componentes líder en el mercado, que ofreceIronPDF para trabajar con archivos PDF. Una forma integral de generar fácilmente archivos PDF a partir de diferentes formatos y establecer todas las propiedades mediante programación. Es el preferido por los desarrolladores debido a la salida consistente, fiable y precisa de archivos PDF utilizando sólo unas pocas líneas de código.
IronPDF está diseñado para C#, .NET, VB, ASPX, ASP.NET, MVC y .NET Core. Es compatible con Visual Studio, NuGet, Linux, Azure, Docker, etc.
ActivePDF es una empresa de software que proporciona muchos componentes para tratar archivos PDF. A diferencia del componente único IronPDF, ActivePDF ofrece diferentes soluciones para archivos PDF. Por ejemplo, para reducir el tamaño de los archivos PDF, puede utilizar ActivePDF Compressor
. Acrear PDF a partir de fuentes HTMLen este caso, utilice ActivePDF WebGrabber
.
En este artículo, utilizaremos ActivePDF WebGrabber para compararlo con IronPDF, echémosle un vistazo:
ActivePDF WebGrabber es un componente independiente de ActivePDF que se utiliza específicamente para generar archivos PDF a partir de fuentes HTML como URL, archivo HTML o cadena HTML. También proporciona las funciones para establecer las propiedades de página como Encabezado, Pie de página, Margen, Marca de agua o Marca de libro para crear archivos PDF según nuestros requisitos.
Veamos la comparación entre ambos componentes.
IronPDF | ActivePDF |
---|---|
IronPDF convierte fuentes HTML en archivos PDF. | ActivePDF convierte fuentes HTML en archivos PDF. |
IronPDF es compatible con .NET Core. | ActivePDF no es compatible con .NET Core. |
IronPDF es compatible con .NET 4.0 o superior. | ActivePDF es compatible con .NET 4.6.2 o superior. |
IronPDF es compatible con macOS. | ActivePDF no es compatible con macOS. |
IronPDF puede aplicar CSS para establecer las propiedades de WaterMark. | ActivePDF no admite CSS para establecer las propiedades de WaterMark. |
IronPDF puede establecer la orientación del papel de los archivos PDF. | ActivePDF puede establecer la orientación del papel de los archivos PDF. |
IronPDF proporciona la RenderDelay para retrasar la conversión del PDF. | ActivePDF proporciona el TimeoutSpan para retrasar la conversión del PDF. |
IronPDF proporciona funciones predefinidas para establecer el encabezado o el pie de página. | ActivePDF requiere la configuración del encabezado y pie de página mediante HTML y CSS sin procesar. |
IronPDF proporciona una función predefinida para dibujar una línea horizontal que separe el contenido. | ActivePDF no proporciona una línea para separar encabezados y pies de página. |
Para guardar el archivo PDF, podemos establecer el directorio y el nombre del archivo en una sola línea. | Tenemos que establecer el directorio y el nombre del archivo por separado. |
Necesidad de escribir menos líneas de código con una estructura de programación sencilla. | Necesidad de escribir muchas líneas de código. |
Licencia a partir de $749 . | Licencia a partir de 80 . |
Puede añadir la biblioteca IronPDF a su proyecto de dos formas distintas, sin que importe cuál adopte.
Busque IronPDF
e instálelo.
Alternativamente:
consola del gestor de paquetes
.Install-Package IronPdf
También podemosdescargar IronPDF.dlly, a continuación, añada su referencia en el proyecto.
Si puede acceder a IronPDF
escribiendo using IronPdf;
namespace, significa que IronPDF se ha importado correctamente a su proyecto y está listo para su uso.
Descargar WebGrabber-install.exey selecciona descargar archivo. Una vez descargado, haga doble clic en el archivo descargado. A continuación, solicite una clave de activación a ActivePDF para utilizarla con la siguiente clave de evaluación de 15 días: 001-AEALX-LC6Z5-7YD95-S3D8J-3LR25.
Tras la instalación, vaya al siguiente directorio:
C:Archivos de programa
ActivePDF WebGrabber
bin
En este directorio, obtendrá el archivo APWebGrabber.Net45.dll
. Añade su referencia en tu proyecto de Visual Studio.
Ahora, si puede acceder a WebGrabber
escribiendo using APWebGrabber;
namespace, significa que ActivePDF WebGrabber se ha importado correctamente en su proyecto y puede utilizarlo.
Documentación de ActivePDF para obtener más información sobre la instalación de ActivePDF WebGrabber.
Hemos visto la introducción de estos dos componentes y sus procesos de instalación, y ahora comenzaremos la comparación realizando diferentes tareas utilizando ambos. Esto nos permitirá entender la estructura de programación de ambos y decidir cuál es el mejor para nuestros proyectos. Para una mejor comprensión, ejecutaremos un caso de uso específico en cada tarea y proporcionaremos el código utilizado para implementarlo.
En la primera comparación, tomaremos un caso de uso en el que necesitamos crear un archivo PDF mediante una cadena HTML y guardarlo en la ubicación de destino. En primer lugar, empezamos a implementar este caso de uso mediante IronPDF:
/**
HTML String to PDF
anchor-html-string-with-ironpdf
**/
using IronPdf;
static void Main(string [] args)
{
//create rendering converter
var converter = new ChromePdfRenderer();
//HTML Source
string html = "<h1>Hello World!</h1> <h2>Welcome to IronPDF</h2> ";
//convert HTML string to PDF file
using var PDF = converter.RenderHtmlAsPdf(html);
//Save the file
PDF.SaveAs("E:/sample.pdf");
}
/**
HTML String to PDF
anchor-html-string-with-ironpdf
**/
using IronPdf;
static void Main(string [] args)
{
//create rendering converter
var converter = new ChromePdfRenderer();
//HTML Source
string html = "<h1>Hello World!</h1> <h2>Welcome to IronPDF</h2> ";
//convert HTML string to PDF file
using var PDF = converter.RenderHtmlAsPdf(html);
//Save the file
PDF.SaveAs("E:/sample.pdf");
}
'''
'''HTML String to PDF
'''anchor-html-string-with-ironpdf
'''*
Imports IronPdf
Shared Sub Main(ByVal args() As String)
'create rendering converter
Dim converter = New ChromePdfRenderer()
'HTML Source
Dim html As String = "<h1>Hello World!</h1> <h2>Welcome to IronPDF</h2> "
'convert HTML string to PDF file
Dim PDF = converter.RenderHtmlAsPdf(html)
'Save the file
PDF.SaveAs("E:/sample.pdf")
End Sub
Salida:
El código anterior creará un archivo PDF sample.pdf
en Local Disk E:
y su captura de pantalla es:
using APWebGrabber;
static void Main(string [] args)
{
//Instantiate Object
WebGrabber wg = new WebGrabber();
//HTML Source
string html = "<h1>Hello World!</h1> <h2>Welcome to ActivePDF WebGrabber</h2>";
//assign source html to WebGrabber
wg.CreateFromHTMLText = html;
//specify file directory
wg.OutputDirectory = "E:/";
// file name
wg.NewDocumentName = "sample.pdf";
//convert source HTML to PDF file
wg.ConvertToPDF();
}
using APWebGrabber;
static void Main(string [] args)
{
//Instantiate Object
WebGrabber wg = new WebGrabber();
//HTML Source
string html = "<h1>Hello World!</h1> <h2>Welcome to ActivePDF WebGrabber</h2>";
//assign source html to WebGrabber
wg.CreateFromHTMLText = html;
//specify file directory
wg.OutputDirectory = "E:/";
// file name
wg.NewDocumentName = "sample.pdf";
//convert source HTML to PDF file
wg.ConvertToPDF();
}
Imports APWebGrabber
Shared Sub Main(ByVal args() As String)
'Instantiate Object
Dim wg As New WebGrabber()
'HTML Source
Dim html As String = "<h1>Hello World!</h1> <h2>Welcome to ActivePDF WebGrabber</h2>"
'assign source html to WebGrabber
wg.CreateFromHTMLText = html
'specify file directory
wg.OutputDirectory = "E:/"
' file name
wg.NewDocumentName = "sample.pdf"
'convert source HTML to PDF file
wg.ConvertToPDF()
End Sub
La siguiente captura de pantalla es el archivo sample.pdf
recién generado a partir de este código:
En esta comparación, tomamos el caso de uso en el que necesitamos generar un archivo PDF a partir de un archivo HTML llamado myHtmlFile.html
que existe en el directorio E:/
, y que tiene el siguiente código HTML y CSS:
<html>
<style>
li{
font-size:x-large;
color: magenta;
font-style: italic;
}
</style>
<body>
<h1>I am Heading</h1>
<h2>Items List:</h2>
<ul>
<li>Item1</li>
<li>Item2</li>
<li>Item3</li>
<li>Item4</li>
</ul>
</body>
</html>
<html>
<style>
li{
font-size:x-large;
color: magenta;
font-style: italic;
}
</style>
<body>
<h1>I am Heading</h1>
<h2>Items List:</h2>
<ul>
<li>Item1</li>
<li>Item2</li>
<li>Item3</li>
<li>Item4</li>
</ul>
</body>
</html>
Ahora convertiremos el archivo myHtmlFile.html
en un archivo PDF utilizando ambos componentes. Empecemos por IronPDF.
/**
HTML File to PDF
anchor-html-file-with-ironpdf
**/
using IronPdf;
static void Main(string [] args)
{
//create rendering converter
var converter = new IronPdf.ChromePdfRenderer();
//render html file to pdf
using var PDF = converter.RenderHTMLFileAsPdf("E:/myHtmlFile.html");
//save to target location
PDF.SaveAs("E:/Sample.pdf");
}
/**
HTML File to PDF
anchor-html-file-with-ironpdf
**/
using IronPdf;
static void Main(string [] args)
{
//create rendering converter
var converter = new IronPdf.ChromePdfRenderer();
//render html file to pdf
using var PDF = converter.RenderHTMLFileAsPdf("E:/myHtmlFile.html");
//save to target location
PDF.SaveAs("E:/Sample.pdf");
}
'''
'''HTML File to PDF
'''anchor-html-file-with-ironpdf
'''*
Imports IronPdf
Shared Sub Main(ByVal args() As String)
'create rendering converter
Dim converter = New IronPdf.ChromePdfRenderer()
'render html file to pdf
Dim PDF = converter.RenderHTMLFileAsPdf("E:/myHtmlFile.html")
'save to target location
PDF.SaveAs("E:/Sample.pdf")
End Sub
La siguiente captura de pantalla es del archivo Sample.pdf
recién generado utilizando el código anterior:
Podemos ver que la página HTML myHtmlFile.html
se ha convertido correctamente en el archivo PDF Sample.pdf
, y también se han aplicado los estilos CSS.
Lea la documentación de IronPDF para más información sobre cómo podemos utilizar IronPDF en nuestro proyecto .NET.
Realicemos la misma tarea utilizando ActivePDF WebGrabber.
using APWebGrabber;
static void Main(string [] args)
{
//Instantiate Object
WebGrabber wg = new WebGrabber();
//specify file path to be converted
wg.URL = "E:/myHtmlFile.html";
//specify the directory for newly generated file
wg.OutputDirectory = "E:/";
//newly generated file name
wg.NewDocumentName = "Sample.pdf";
//convert HTML file to PDF
wg.ConvertToPDF();
}
using APWebGrabber;
static void Main(string [] args)
{
//Instantiate Object
WebGrabber wg = new WebGrabber();
//specify file path to be converted
wg.URL = "E:/myHtmlFile.html";
//specify the directory for newly generated file
wg.OutputDirectory = "E:/";
//newly generated file name
wg.NewDocumentName = "Sample.pdf";
//convert HTML file to PDF
wg.ConvertToPDF();
}
Imports APWebGrabber
Shared Sub Main(ByVal args() As String)
'Instantiate Object
Dim wg As New WebGrabber()
'specify file path to be converted
wg.URL = "E:/myHtmlFile.html"
'specify the directory for newly generated file
wg.OutputDirectory = "E:/"
'newly generated file name
wg.NewDocumentName = "Sample.pdf"
'convert HTML file to PDF
wg.ConvertToPDF()
End Sub
La siguiente captura de pantalla es del archivo Sample.pdf
recién generado, utilizando el código anterior:
Supongamos que tenemos una URL https://yandex.com/ y queremos generar un archivo PDF de su página web. Para ello, ambos componentes proporcionan una función. En primer lugar, veremos cómo puede hacerlo IronPDF.
/**
URL to PDF
anchor-url-with-ironpdf
**/
using IronPdf;
static void Main(string [] args)
{
//create rendering converter
var converter = new ChromePdfRenderer();
//Specify URL
using var PDF = converter.RenderUrlAsPdf("https://yandex.com/");
//Save the file
PDF.SaveAs("E:/Sample.pdf");
}
/**
URL to PDF
anchor-url-with-ironpdf
**/
using IronPdf;
static void Main(string [] args)
{
//create rendering converter
var converter = new ChromePdfRenderer();
//Specify URL
using var PDF = converter.RenderUrlAsPdf("https://yandex.com/");
//Save the file
PDF.SaveAs("E:/Sample.pdf");
}
'''
'''URL to PDF
'''anchor-url-with-ironpdf
'''*
Imports IronPdf
Shared Sub Main(ByVal args() As String)
'create rendering converter
Dim converter = New ChromePdfRenderer()
'Specify URL
Dim PDF = converter.RenderUrlAsPdf("https://yandex.com/")
'Save the file
PDF.SaveAs("E:/Sample.pdf")
End Sub
La siguiente captura de pantalla es del archivo Sample.pdf
recién generado por el código anterior
Puede visitar la página web de laMuestra de URL para comparar y ver con qué precisión coincide el archivo IronPDF.
Ahora, haremos la misma tarea utilizando ActivePDF WebGrabber.
using APWebGrabber;
static void Main(string [] args)
{
//Instantiate Object
WebGrabber wg = new WebGrabber();
//specify URL
wg.URL = "https://yandex.com/";
//specify the directory for newly generated file
wg.OutputDirectory = "E:/";
//specify file name
wg.NewDocumentName = "Sample.pdf";
//convert specified URL webpage to PDF
wg.ConvertToPDF();
}
using APWebGrabber;
static void Main(string [] args)
{
//Instantiate Object
WebGrabber wg = new WebGrabber();
//specify URL
wg.URL = "https://yandex.com/";
//specify the directory for newly generated file
wg.OutputDirectory = "E:/";
//specify file name
wg.NewDocumentName = "Sample.pdf";
//convert specified URL webpage to PDF
wg.ConvertToPDF();
}
Imports APWebGrabber
Shared Sub Main(ByVal args() As String)
'Instantiate Object
Dim wg As New WebGrabber()
'specify URL
wg.URL = "https://yandex.com/"
'specify the directory for newly generated file
wg.OutputDirectory = "E:/"
'specify file name
wg.NewDocumentName = "Sample.pdf"
'convert specified URL webpage to PDF
wg.ConvertToPDF()
End Sub
La siguiente captura de pantalla es del archivo Sample.pdf
recién generado por el código anterior:
En esta comparación, crearemos un archivo PDF utilizando una cadena HTML, y luego añadiremos una Marca de Agua en el centro de la página. Empecemos por IronPDF.
IronPDF proporciona la siguiente función para añadir WaterMark:
Página de marca de agua(WaterMark Cadena HTML, PageIndexToWaterMark, WaterMarkLocation,Opacity, Rotation, Hyperlink)`
Podemos utilizar el WaterMarkLocation
para fijar el WaterMark en las siguientes posiciones:
TopLeft
TopCenter
TopRight
MiddleLeft
MiddleCenter
MiddleRight
BottomLeft
BottomCenter
BottomRight
Veamos cómo utilizar las funciones anteriores para establecer la marca de agua:
/**
Watermark PDF
anchor-watermark-with-ironpdf
**/
using IronPdf;
static void Main(string [] args)
{
//create rendering converter
var converter = new ChromePdfRenderer();
//source html string
string html = "<h1 style='text-align:center'>WaterMark Example</h1>";
//add above string as PDF file content
using var PDF = converter.RenderHtmlAsPdf(html);
//HTML string for WaterMark
string WMStr = "<h1 style='color:red'>WaterMark</h1>";
//add WaterMark
PDF.WatermarkPage(WMStr, 0, PdfDocument.WaterMarkLocation.MiddleCenter, 100, -45, "");
//save the document
PDF.SaveAs("E:/Sample.pdf");
}
/**
Watermark PDF
anchor-watermark-with-ironpdf
**/
using IronPdf;
static void Main(string [] args)
{
//create rendering converter
var converter = new ChromePdfRenderer();
//source html string
string html = "<h1 style='text-align:center'>WaterMark Example</h1>";
//add above string as PDF file content
using var PDF = converter.RenderHtmlAsPdf(html);
//HTML string for WaterMark
string WMStr = "<h1 style='color:red'>WaterMark</h1>";
//add WaterMark
PDF.WatermarkPage(WMStr, 0, PdfDocument.WaterMarkLocation.MiddleCenter, 100, -45, "");
//save the document
PDF.SaveAs("E:/Sample.pdf");
}
'''
'''Watermark PDF
'''anchor-watermark-with-ironpdf
'''*
Imports IronPdf
Shared Sub Main(ByVal args() As String)
'create rendering converter
Dim converter = New ChromePdfRenderer()
'source html string
Dim html As String = "<h1 style='text-align:center'>WaterMark Example</h1>"
'add above string as PDF file content
Dim PDF = converter.RenderHtmlAsPdf(html)
'HTML string for WaterMark
Dim WMStr As String = "<h1 style='color:red'>WaterMark</h1>"
'add WaterMark
PDF.WatermarkPage(WMStr, 0, PdfDocument.WaterMarkLocation.MiddleCenter, 100, -45, "")
'save the document
PDF.SaveAs("E:/Sample.pdf")
End Sub
La siguiente captura de pantalla es del archivo Sample.pdf
recién generado por el código anterior:
Podemos añadir cualquier tipo de WaterMark y establecer sus propiedades mediante CSS. Ahora, haremos la misma tarea utilizando ActivePDF WebGrabber.
ActivePDF WebGrabber no proporciona una función específica para WaterMark, a diferencia de IronPDF. Pero podemos utilizar la función AddStampText()
funcionan como una solución provisional para este fin:
AñadirSelloTexto(float x, float y, cadena stampText);
stampText es el texto real del TextStamp.
Nota: ActivePDF WebGrabber no admite estilos CSS para TextStamp. Tenemos que establecer por otras funciones proporcionadas de la siguiente manera:
using APWebGrabber;
static void Main(string [] args)
{
//Instantiate Object
WebGrabber wg = new WebGrabber();
//HTML source for Page content
string html = "<h1 style='text-align:center'>WaterMark Example</h1>";
//assign page content source
wg.CreateFromHTMLText = html;
//add text stamp as WaterMark
wg.AddStampText(270.0f, 350.0f, "WaterMark");
//specify WaterMark's font size
wg.StampFontSize = 20;
//specify WaterMark's font family
wg.StampFont = "Times New Roman";
//specify WaterMark's opacity
wg.StampFontTransparency = 1f;
//specify WaterMark's rotation
wg.StampRotation = 45.0f;
//specify WaterMark's color
wg.StampColorNET = new ADK.PDF.Color() { Red = 255, Green = 0, Blue = 0, Gray = 0 };
//specify directory for newly created file
wg.OutputDirectory = "E:/";
//specify file name
wg.NewDocumentName = "Sample.pdf";
//convert above sources to PDF file
wg.ConvertToPDF();
}
using APWebGrabber;
static void Main(string [] args)
{
//Instantiate Object
WebGrabber wg = new WebGrabber();
//HTML source for Page content
string html = "<h1 style='text-align:center'>WaterMark Example</h1>";
//assign page content source
wg.CreateFromHTMLText = html;
//add text stamp as WaterMark
wg.AddStampText(270.0f, 350.0f, "WaterMark");
//specify WaterMark's font size
wg.StampFontSize = 20;
//specify WaterMark's font family
wg.StampFont = "Times New Roman";
//specify WaterMark's opacity
wg.StampFontTransparency = 1f;
//specify WaterMark's rotation
wg.StampRotation = 45.0f;
//specify WaterMark's color
wg.StampColorNET = new ADK.PDF.Color() { Red = 255, Green = 0, Blue = 0, Gray = 0 };
//specify directory for newly created file
wg.OutputDirectory = "E:/";
//specify file name
wg.NewDocumentName = "Sample.pdf";
//convert above sources to PDF file
wg.ConvertToPDF();
}
Imports APWebGrabber
Shared Sub Main(ByVal args() As String)
'Instantiate Object
Dim wg As New WebGrabber()
'HTML source for Page content
Dim html As String = "<h1 style='text-align:center'>WaterMark Example</h1>"
'assign page content source
wg.CreateFromHTMLText = html
'add text stamp as WaterMark
wg.AddStampText(270.0F, 350.0F, "WaterMark")
'specify WaterMark's font size
wg.StampFontSize = 20
'specify WaterMark's font family
wg.StampFont = "Times New Roman"
'specify WaterMark's opacity
wg.StampFontTransparency = 1F
'specify WaterMark's rotation
wg.StampRotation = 45.0F
'specify WaterMark's color
wg.StampColorNET = New ADK.PDF.Color() With {
.Red = 255,
.Green = 0,
.Blue = 0,
.Gray = 0
}
'specify directory for newly created file
wg.OutputDirectory = "E:/"
'specify file name
wg.NewDocumentName = "Sample.pdf"
'convert above sources to PDF file
wg.ConvertToPDF()
End Sub
La siguiente captura de pantalla muestra el archivo Sample.pdf
recién generado.
Supongamos que tenemos una simple página web llamada myHtmlFile.html
en nuestro Local Disk E
, que tiene un ancho de 100%
y un border
con color black
. Generaremos un archivo PDF a partir de él y estableceremos el Margen de página. Empecemos por IronPDF.
Para establecer los márgenes, IronPDF proporciona la clase ChromePdfRenderOptions
, que tiene las siguientes propiedades:
MarginBottom para establecer un Margen desde la parte inferior de la página.
Nota: Por defecto, IronPDF establece un margen de 20mm
a la izquierda, arriba, derecha y abajo para hacer la página más legible. Podemos ponerlo a 0mm
si no lo necesitamos.
/**
Set Margins
anchor-margins-with-ironpdf
**/
using IronPdf;
static void Main(string [] args)
{
//create html to PDF converter
var converter = new ChromePdfRenderer();
//specify left Margin
converter.RenderingOptions.MarginLeft = 50;
//specify top Margin
converter.RenderingOptions.MarginTop = 40;
//render html file to PDF
using var PDF = converter.RenderHTMLFileAsPdf("E:/myHtmlFile.html");
//save to the target location
PDF.SaveAs("E:/Sample.pdf");
}
/**
Set Margins
anchor-margins-with-ironpdf
**/
using IronPdf;
static void Main(string [] args)
{
//create html to PDF converter
var converter = new ChromePdfRenderer();
//specify left Margin
converter.RenderingOptions.MarginLeft = 50;
//specify top Margin
converter.RenderingOptions.MarginTop = 40;
//render html file to PDF
using var PDF = converter.RenderHTMLFileAsPdf("E:/myHtmlFile.html");
//save to the target location
PDF.SaveAs("E:/Sample.pdf");
}
'''
'''Set Margins
'''anchor-margins-with-ironpdf
'''*
Imports IronPdf
Shared Sub Main(ByVal args() As String)
'create html to PDF converter
Dim converter = New ChromePdfRenderer()
'specify left Margin
converter.RenderingOptions.MarginLeft = 50
'specify top Margin
converter.RenderingOptions.MarginTop = 40
'render html file to PDF
Dim PDF = converter.RenderHTMLFileAsPdf("E:/myHtmlFile.html")
'save to the target location
PDF.SaveAs("E:/Sample.pdf")
End Sub
La siguiente captura de pantalla es del archivo Sample.pdf
recién generado por el código anterior:
Se puede ver que la página PDF tiene 50mm
del lado izquierdo, 40
de la parte superior, y el Margen del lado izquierdo es 20mm
que es por defecto
. Podemos ver lo sencillo que es establecer el Margen de cualquier cara utilizando la clase ChromePdfRenderOptions
de IronPDF.
Más informaciónConfiguración de generación de PDF para más detalles: cómo trabajar con los márgenes y otras propiedades del archivo PDF.
Ahora, estableceremos el Margen de la página utilizando ActivePDF WebGrabber.
Para establecer los márgenes de la página, ActivePDF WebGrabber proporciona el comando SetMargins()
, y podemos utilizarla del siguiente modo:
SetMargins(Margen superior, Margen inferior, Margen izquierdo, Margen derecho)
Utilizaremos esta función para establecer el margen de página:
using APWebGrabber;
static void Main(string [] args)
{
//Instantiate Object
WebGrabber wg = new WebGrabber()
//specify source HTML file path
wg.URL = "E:/myHtmlFile.html";
//Margins
wg.SetMargins(1, 0, 1.5f, 0);
//specify directory for newly created file
wg.OutputDirectory = "E:/";
//specify file name
wg.NewDocumentName = "Sample.pdf";
//convert HTML file to PDF
wg.ConvertToPDF();
}
using APWebGrabber;
static void Main(string [] args)
{
//Instantiate Object
WebGrabber wg = new WebGrabber()
//specify source HTML file path
wg.URL = "E:/myHtmlFile.html";
//Margins
wg.SetMargins(1, 0, 1.5f, 0);
//specify directory for newly created file
wg.OutputDirectory = "E:/";
//specify file name
wg.NewDocumentName = "Sample.pdf";
//convert HTML file to PDF
wg.ConvertToPDF();
}
Imports APWebGrabber
Shared Sub Main(ByVal args() As String)
'Instantiate Object
'INSTANT VB WARNING: An assignment within expression was extracted from the following statement:
'ORIGINAL LINE: WebGrabber wg = new WebGrabber() wg.URL = "E:/myHtmlFile.html";
New WebGrabber() wg.URL = "E:/myHtmlFile.html"
Dim wg As New WebGrabber() wg.URL
'Margins
wg.SetMargins(1, 0, 1.5F, 0)
'specify directory for newly created file
wg.OutputDirectory = "E:/"
'specify file name
wg.NewDocumentName = "Sample.pdf"
'convert HTML file to PDF
wg.ConvertToPDF()
End Sub
La siguiente captura de pantalla es del archivo Sample.pdf
recién generado por el código anterior:
Podemos ver que la página PDF tiene un margen 1.5f
desde el lado izquierdo y 1f
desde la parte superior. Usando ambos componentes, podemos establecer fácilmente los márgenes de la página de acuerdo a nuestros requerimientos.
Más informaciónEstablecer márgenes con ActivePDF.
En esta comparación, veremos cómo establecer el Encabezado y el Pie de página de un archivo PDF. Utilizaremos las funciones y técnicas proporcionadas por ambos componentes, a través de las cuales podemos imprimir encabezados y pies de página personalizados en páginas PDF mediante programación.
IronPDF proporciona las siguientes propiedades, que pueden utilizarse para establecer tanto Encabezados como Pies de página:
DrawDividerLine: dibuja una línea horizontal que separa el contenido de la página del Encabezado o Pie de Página.
Podemos utilizar las siguientes funciones predefinidas de IronPDF entre llaves {}
para cabecera o pie de página:
{título pdf} establece el título del documento.
Veamos el siguiente ejemplo, en el que estableceremos el Encabezado y el Pie de Página utilizando las funciones anteriores:
/**
Set Header Footers
anchor-headers-and-footers-with-ironpdf
**/
using IronPdf;
static void Main(string [] args)
{
//create html to PDF converter
var converter = new IronPdf.ChromePdfRenderer();
//Page Content source
string html = "<h1 style='text-align:center;'>Page Content</h2>";
//Assign source to converter
using var PDF = converter.RenderHtmlAsPdf(html);
//Add Header settings
converter.RenderingOptions.TextHeader = new TextHeaderFooter()
{
LeftText = "Header Text",
RightText = "{date} {time}",
DrawDividerLine=true,
FontSize=13
};
//Add Footer settings
converter.RenderingOptions.TextFooter = new TextHeaderFooter()
{
RightText = "Page {page} of {total-pages}",
FontSize = 12
};
//save to target location
PDF.SaveAs("E:/Sample.pdf");
}
/**
Set Header Footers
anchor-headers-and-footers-with-ironpdf
**/
using IronPdf;
static void Main(string [] args)
{
//create html to PDF converter
var converter = new IronPdf.ChromePdfRenderer();
//Page Content source
string html = "<h1 style='text-align:center;'>Page Content</h2>";
//Assign source to converter
using var PDF = converter.RenderHtmlAsPdf(html);
//Add Header settings
converter.RenderingOptions.TextHeader = new TextHeaderFooter()
{
LeftText = "Header Text",
RightText = "{date} {time}",
DrawDividerLine=true,
FontSize=13
};
//Add Footer settings
converter.RenderingOptions.TextFooter = new TextHeaderFooter()
{
RightText = "Page {page} of {total-pages}",
FontSize = 12
};
//save to target location
PDF.SaveAs("E:/Sample.pdf");
}
'''
'''Set Header Footers
'''anchor-headers-and-footers-with-ironpdf
'''*
Imports IronPdf
Shared Sub Main(ByVal args() As String)
'create html to PDF converter
Dim converter = New IronPdf.ChromePdfRenderer()
'Page Content source
Dim html As String = "<h1 style='text-align:center;'>Page Content</h2>"
'Assign source to converter
Dim PDF = converter.RenderHtmlAsPdf(html)
'Add Header settings
converter.RenderingOptions.TextHeader = New TextHeaderFooter() With {
.LeftText = "Header Text",
.RightText = "{date} {time}",
.DrawDividerLine=True,
.FontSize=13
}
'Add Footer settings
converter.RenderingOptions.TextFooter = New TextHeaderFooter() With {
.RightText = "Page {page} of {total-pages}",
.FontSize = 12
}
'save to target location
PDF.SaveAs("E:/Sample.pdf")
End Sub
La siguiente captura de pantalla es del archivo Sample.pdf
recién generado por el código anterior:
Podemos ver que
Texto de cabecera
se imprime en la parte izquierda de la cabecera.DateTime
se imprime en la parte derecha de la Cabecera.Page CurrentPage of TotalPages
a la derecha del pie de página.
Más informaciónPropiedades de HTML a PDF utilizando IronPDF.
Utilicemos ahora ActivePDF WebGrabber para establecer encabezados y pies de página:
ActivePDF WebGrabber proporciona las propiedades HeaderHTML
y FooterHTML
para establecer el Encabezado y el Pie respectivamente. El HTML en bruto se pasa a estas propiedades como Cabecera o Pie de Página. A diferencia de IronPDF, ActivePDF WebGrabber no proporciona funciones predefinidas para establecer la alineación del Encabezado y Pie de Página, por lo que tenemos que establecerla utilizando propiedades HTML y CSS como se indica a continuación:
using APWebGrabber;
static void Main(string [] args)
{
//Instantiate Object
WebGrabber wg = new WebGrabber();
//Page content source
string html = @"<h1 style='text-align:center;'>Page Content</h2>";
//assign above source to WebGrabber
wg.CreateFromHTMLText = html;
//specify Footer height
wg.FooterHeight = 0.5f;
//Add Footer setting
wg.FooterHTML = "<div style='text-align: right;'>%cp% of %tp%</div>";
//create object for datetime
DateTime now = DateTime.Now;
//specify header height
wg.HeaderHeight = 0.5f;
//Add Header setting
wg.HeaderHTML = "<div style='float: left;'>Header Text</div>";
//append Header settings
wg.HeaderHTML = $"<div style='float: right;'>{DateTime.Now.ToShortDateString()} {DateTime.Now.ToShortTimeString()}</div>";
//specify directory for newly created file
wg.OutputDirectory = "E:/";
//specify file name
wg.NewDocumentName = "Sample.pdf";
//convert above sources to PDF file
wg.ConvertToPDF();
}
using APWebGrabber;
static void Main(string [] args)
{
//Instantiate Object
WebGrabber wg = new WebGrabber();
//Page content source
string html = @"<h1 style='text-align:center;'>Page Content</h2>";
//assign above source to WebGrabber
wg.CreateFromHTMLText = html;
//specify Footer height
wg.FooterHeight = 0.5f;
//Add Footer setting
wg.FooterHTML = "<div style='text-align: right;'>%cp% of %tp%</div>";
//create object for datetime
DateTime now = DateTime.Now;
//specify header height
wg.HeaderHeight = 0.5f;
//Add Header setting
wg.HeaderHTML = "<div style='float: left;'>Header Text</div>";
//append Header settings
wg.HeaderHTML = $"<div style='float: right;'>{DateTime.Now.ToShortDateString()} {DateTime.Now.ToShortTimeString()}</div>";
//specify directory for newly created file
wg.OutputDirectory = "E:/";
//specify file name
wg.NewDocumentName = "Sample.pdf";
//convert above sources to PDF file
wg.ConvertToPDF();
}
Imports APWebGrabber
Shared Sub Main(ByVal args() As String)
'Instantiate Object
Dim wg As New WebGrabber()
'Page content source
Dim html As String = "<h1 style='text-align:center;'>Page Content</h2>"
'assign above source to WebGrabber
wg.CreateFromHTMLText = html
'specify Footer height
wg.FooterHeight = 0.5F
'Add Footer setting
wg.FooterHTML = "<div style='text-align: right;'>%cp% of %tp%</div>"
'create object for datetime
Dim now As DateTime = DateTime.Now
'specify header height
wg.HeaderHeight = 0.5F
'Add Header setting
wg.HeaderHTML = "<div style='float: left;'>Header Text</div>"
'append Header settings
wg.HeaderHTML = $"<div style='float: right;'>{DateTime.Now.ToShortDateString()} {DateTime.Now.ToShortTimeString()}</div>"
'specify directory for newly created file
wg.OutputDirectory = "E:/"
'specify file name
wg.NewDocumentName = "Sample.pdf"
'convert above sources to PDF file
wg.ConvertToPDF()
End Sub
La siguiente captura de pantalla es del archivo Sample.pdf
recién generado a partir del código anterior:
Más información sobre cómo fijarencabezados y pies de página con ActivePDF WebGrabber.
DateTime
del framework .NETNombre | Detalle |
---|---|
ActivePDF DocConverter | Sirve para convertir los tipos de archivo más populares a y desde el formato PDF. |
ActivePDF WebGrabber | Toma el HTML de muchas fuentes y lo convierte en archivos PDF. |
ActivePDF DocSpace | Proporciona automatización de procesos por lotes y una interfaz de usuario para visualizar, generar, convertir, manipular e interactuar con PDF y otros formatos de archivo. |
Kit de herramientas ActivePDF | Se utiliza para crear, modificar, ver, extraer, manipular y automatizar el contenido de documentos desde y hacia archivos PDF. |
Portal ActivePDF | Permite a los usuarios ver y modificar documentos PDF de cualquier fuente en un navegador web estándar. |
ActivePDF CADConverter | Sirve para convertir archivos CAD en PDF. |
ActivePDF Xtractor | Se utiliza para extraer y encontrar el texto y las imágenes de archivos PDF. |
ActivePDF Spooler | Permite al desarrollador imprimir la página del archivo PDF en papel. |
ActivePDF Redactor | Se utiliza para ocultar información sensible al espectador. |
Servidor ActivePDF | Proporciona la solución de impresión para diferentes propósitos. |
ActivePDF no proporciona ninguna información sobre sus paquetes en suSitio web de ActivePDF. Para obtener información sobre la concesión de licencias, debepóngase en contacto con su vendedor. Sin embargo, debe saber exactamente qué tipo de licencia de producción está buscando. No facilitan una lista de precios, y aunque los precios empiezan en 1.180 dólares por una licencia anual, pueden ser más altos dependiendo del ámbito de uso y hay que detallarlos para obtener un presupuesto.
IronPDF ofrece precios transparentes conlicencias de $749con muchas opciones personalizables. Póngase en contacto con el equipo si tiene alguna duda.
Explore la Referencia de la API para la Biblioteca IronPDF C#, incluyendo detalles de todas las características, clases, campos de métodos, espacios de nombres y enums de IronPDF.
Ver la referencia de la API9 productos API .NET para sus documentos de oficina