Saltar al pie de página
COMPARACIONES DE PRODUCTOS

PDFsharp Añadir Números de Páginas a PDF VS IronPDF (Ejemplo)

The PDF (Portable Document Format) is a universally accepted format for sharing documents across various platforms. Its ability to preserve formatting, fonts, and layout makes it indispensable for business, legal, and educational purposes. As the need for PDF manipulation grows in software development, the .NET ecosystem provides developers with multiple libraries for working with PDFs. Among them, PDFSharp and IronPDF stand out as powerful solutions for PDF creation and manipulation.

This article will show you how to add page numbers to PDF documents using PDFsharp and IronPDF in C#, and compare the features of both libraries to help you decide which one best suits your needs.

What is IronPDF?

PDFsharp Add Page Numbers to PDF VS IronPDF (Example): Figure 1 - image.png

IronPDF is a powerful .NET library designed for seamless PDF creation, manipulation, and rendering. It stands out for its ability to convert HTML, CSS, and JavaScript directly into high-quality PDFs using a Chromium-based engine. This makes IronPDF an ideal solution for developers who need to convert dynamic web pages or complex HTML content into a well-formatted PDF, preserving the layout and style as it appears in the browser.

Key Features of IronPDF:

  • Converts HTML, JavaScript, and CSS to high-quality PDFs.
  • Enables custom headers, footers, watermarks, and other page elements.
  • Supports merging PDF files and splitting them.
  • Works seamlessly with .NET applications, including ASP.NET and MVC frameworks.
  • Provides precise control over PDF rendering, ensuring content is displayed as intended.
  • Offers a straightforward API for easy integration into projects.

To explore more advanced features and examples, refer to the official IronPDF documentation.

Installing IronPDF

To add IronPDF to your project, use the NuGet package manager in Visual Studio. You can install it using the Visual Command-Line interface or search directly in the NuGet Package Manager.

Command-line installation:

Install-Package IronPdf

Alternatively, you can search for "IronPDF" in the NuGet Package Manager and install it from there.

What is PDFSharp?

PDFsharp is a versatile .NET library focused on creating and manipulating PDF documents with high flexibility. Unlike other libraries, PDFsharp allows detailed control over the structure and design of PDFs, making it a great choice for developers who want to create documents from scratch or modify existing PDFs. With its rich API, PDFsharp supports a wide array of document manipulation tasks, including adding text, images, tables, and even page numbers.

Key Features of PDFSharp:

  • Creates, reads, and modifies PDF documents.
  • Customizable page events to add elements such as page numbers or footers.
  • Supports adding images, text, tables, and other content.
  • Offers detailed control over PDF layout and structure.
  • Can modify existing PDFs, including merging or splitting documents.
  • Open-source library with flexibility for developers to customize or extend.

To dive deeper into PDFSharp's functionality and usage, check out the PDFSharp GitHub repository.

Installing PDFsharp

To get started with PDFSharp, install the package via NuGet using the command line:

Command-line installation:

Install-Package PDFSharp

Alternatively, you can search for "PDFSharp" in the NuGet Package Manager and install it from there.

How to Add Page Numbers using IronPDF

IronPDF is a versatile PDF library designed to handle a wide range of PDF operations, including adding page numbers. IronPDF operates internally on a Chromium engine, allowing it to offer precise rendering of HTML content as PDFs. With its simple API, adding page numbers to your PDF is both efficient and straightforward.

The following code is an example of how to add page numbers using IronPDF in C#:

using IronPdf;
class Program
{
    static void Main(string[] args)
    {
        var html = "<h1>Hello World!</h1><p>This document was generated using IronPDF</p>";

        // Instantiate ChromePdfRenderer
        ChromePdfRenderer renderer = new ChromePdfRenderer()
        {
            // Set rendering options for page header
            RenderingOptions = {
                HtmlHeader = new HtmlHeaderFooter
                {
                    HtmlFragment = "<center><i>{page} of {total-pages}</i></center>" // Page number format
                },
            }
        };

        // Render given HTML as PDF
        PdfDocument pdf = renderer.RenderHtmlAsPdf(html);

        // Save the resulting PDF with page numbers
        pdf.SaveAs("pageNumbers.pdf");
    }
}
using IronPdf;
class Program
{
    static void Main(string[] args)
    {
        var html = "<h1>Hello World!</h1><p>This document was generated using IronPDF</p>";

        // Instantiate ChromePdfRenderer
        ChromePdfRenderer renderer = new ChromePdfRenderer()
        {
            // Set rendering options for page header
            RenderingOptions = {
                HtmlHeader = new HtmlHeaderFooter
                {
                    HtmlFragment = "<center><i>{page} of {total-pages}</i></center>" // Page number format
                },
            }
        };

        // Render given HTML as PDF
        PdfDocument pdf = renderer.RenderHtmlAsPdf(html);

        // Save the resulting PDF with page numbers
        pdf.SaveAs("pageNumbers.pdf");
    }
}
Imports IronPdf
Friend Class Program
	Shared Sub Main(ByVal args() As String)
		Dim html = "<h1>Hello World!</h1><p>This document was generated using IronPDF</p>"

		' Instantiate ChromePdfRenderer
		Dim renderer As New ChromePdfRenderer() With {
			.RenderingOptions = {
				HtmlHeader = New HtmlHeaderFooter With {.HtmlFragment = "<center><i>{page} of {total-pages}</i></center>"}
			}
		}

		' Render given HTML as PDF
		Dim pdf As PdfDocument = renderer.RenderHtmlAsPdf(html)

		' Save the resulting PDF with page numbers
		pdf.SaveAs("pageNumbers.pdf")
	End Sub
End Class
$vbLabelText   $csharpLabel

Output

PDFsharp Add Page Numbers to PDF VS IronPDF (Example): Figure 2

This code demonstrates how to easily insert page numbers in the header of a PDF document. The HtmlHeaderFooter object is used to specify the header content, and placeholders like {page} and {total-pages} automatically populate with the page number and the total page count respectively.

With this approach, IronPDF simplifies the process of rendering HTML as PDFs while managing page number placement effortlessly.

How to Add Page Numbers using PDFsharp

PDFSharp is a comprehensive library for working with PDFs in C#. It provides tools for creating, modifying, and reading PDFs. Though it is not designed specifically for HTML-to-PDF conversion, it offers robust control over PDF documents, including the ability to add page numbers using custom page events. Whether you wish to add page numbers to just the first page, or second page, a range of pages, or just all of them.

Here’s an example of how to add page numbers using PDFSharp:

using PdfSharp.Pdf;
using PdfSharp.Pdf.IO;
using PdfSharp.Drawing;
internal class Program
{
    static void Main(string[] args)
    {
        // Create a new PDF document
        var doc = new PdfDocument();
        doc.Info.Title = "Page Numbers Example";

        // Add a new page to the document
        PdfPage page = doc.AddPage();

        // Create graphics object for drawing
        var gfx = XGraphics.FromPdfPage(page);
        var font = new XFont("Arial", 12);

        // Draw page number in the footer
        gfx.DrawString("Page " + doc.PageCount, font, XBrushes.Black, new XPoint(500, 770));

        // Save the PDF file
        doc.Save("PdfSharpOutput.pdf");
    }
}
using PdfSharp.Pdf;
using PdfSharp.Pdf.IO;
using PdfSharp.Drawing;
internal class Program
{
    static void Main(string[] args)
    {
        // Create a new PDF document
        var doc = new PdfDocument();
        doc.Info.Title = "Page Numbers Example";

        // Add a new page to the document
        PdfPage page = doc.AddPage();

        // Create graphics object for drawing
        var gfx = XGraphics.FromPdfPage(page);
        var font = new XFont("Arial", 12);

        // Draw page number in the footer
        gfx.DrawString("Page " + doc.PageCount, font, XBrushes.Black, new XPoint(500, 770));

        // Save the PDF file
        doc.Save("PdfSharpOutput.pdf");
    }
}
Imports PdfSharp.Pdf
Imports PdfSharp.Pdf.IO
Imports PdfSharp.Drawing
Friend Class Program
	Shared Sub Main(ByVal args() As String)
		' Create a new PDF document
		Dim doc = New PdfDocument()
		doc.Info.Title = "Page Numbers Example"

		' Add a new page to the document
		Dim page As PdfPage = doc.AddPage()

		' Create graphics object for drawing
		Dim gfx = XGraphics.FromPdfPage(page)
		Dim font = New XFont("Arial", 12)

		' Draw page number in the footer
		gfx.DrawString("Page " & doc.PageCount, font, XBrushes.Black, New XPoint(500, 770))

		' Save the PDF file
		doc.Save("PdfSharpOutput.pdf")
	End Sub
End Class
$vbLabelText   $csharpLabel

Output

PDFsharp Add Page Numbers to PDF VS IronPDF (Example): Figure 3

Conclusion

In summary, IronPDF stands out for its ability to easily add page numbers to existing PDF documents in one concise block of code, giving you full control over how and where your page numbers are displayed. While PDFsharp is a versatile option for creating and manipulating PDFs with fine-grained control, it does lead to a more manual, harder-to-implement approach to adding page numbers to PDF files.

IronPDF's commercial licensing is available, allowing users to evaluate its features before committing to a purchase.

For more information on IronPDF, visit the documentation page, and for PDFSharp, check out the GitHub repository.

Por favor notaPDFsharp is a registered trademark of its respective owner. This site is not affiliated with, endorsed by, or sponsored by PDFsharp. All product names, logos, and brands are property of their respective owners. Comparisons are for informational purposes only and reflect publicly available information at the time of writing.

Preguntas Frecuentes

¿Cómo puedo agregar números de página a un PDF usando C#?

Puedes agregar números de página a un PDF en C# usando IronPDF configurando encabezados o pies de página personalizados con la clase HtmlHeaderFooter, incorporando marcadores de posición como {page} y {total-pages} para mostrar números de página.

¿Cuáles son las ventajas de usar IronPDF para la manipulación de PDF?

IronPDF proporciona un conjunto completo de funciones como convertir HTML, CSS y JavaScript a PDF, agregar marcas de agua e integrar encabezados y pies de página personalizados. Utiliza un motor basado en Chromium, asegurando una renderización PDF de alta calidad, lo cual es ideal para desarrolladores web.

¿Cómo difiere PDFsharp de IronPDF en términos de creación de PDF?

PDFsharp ofrece un enfoque más manual para la creación de PDF, permitiendo un control detallado sobre la estructura y el diseño del documento. Se enfoca en agregar elementos como texto, imágenes y tablas directamente, mientras que IronPDF agiliza el proceso con renderización basada en HTML.

¿Cuáles son los pasos de instalación para IronPDF en una aplicación .NET?

Para instalar IronPDF en una aplicación .NET, utiliza el Administrador de Paquetes NuGet en Visual Studio. Puedes ejecutar el comando Install-Package IronPdf en la línea de comandos o buscar 'IronPDF' directamente en la interfaz del Administrador de Paquetes NuGet.

¿Puede usar IronPDF para convertir sitios web a PDF?

Sí, IronPDF puede convertir sitios web completos o contenido HTML específico en documentos PDF. Utiliza un motor basado en Chromium para asegurar la renderización precisa de páginas web, incluyendo CSS y JavaScript.

¿Es IronPDF adecuado para agregar marcas de agua a PDFs?

IronPDF es altamente adecuado para agregar marcas de agua a PDFs. Te permite integrar marcas de agua basadas en texto o en imágenes sin problemas en tus documentos PDF durante el proceso de renderización.

¿Cuáles son los casos de uso típicos para usar PDFsharp?

PDFsharp se usa típicamente para proyectos que requieren un control detallado sobre la creación de documentos PDF, como agregar texto, imágenes y tablas con ajustes precisos de diseño. Es preferido por los desarrolladores que necesitan manipular manualmente la estructura del PDF.

¿Cómo pueden los desarrolladores elegir entre IronPDF y PDFsharp?

Los desarrolladores deben elegir IronPDF si necesitan una solución de renderización sencilla y de alta calidad con menos intervención manual, especialmente al tratar con contenido HTML. PDFsharp es más adecuado para aquellos que requieren una amplia personalización y control manual de los elementos PDF.

Curtis Chau
Escritor Técnico

Curtis Chau tiene una licenciatura en Ciencias de la Computación (Carleton University) y se especializa en el desarrollo front-end con experiencia en Node.js, TypeScript, JavaScript y React. Apasionado por crear interfaces de usuario intuitivas y estéticamente agradables, disfruta trabajando con frameworks modernos y creando manuales bien ...

Leer más