Cómo crear un PDF en C# con Xceed PdfLibrary para .NET

Crea un PDF sencillo con un título y un cuerpo de texto en C# utilizando Xceed PdfLibrary para .NET. Configura el proyecto, agrega la licencia y, a continuación, utiliza PdfDocument.Create, AddParagraph y AddText para crear tu primer PDF.






 

Cómo crear un PDF en C# con Xceed PdfLibrary para .NET

Generar PDFs desde tu aplicación .NET es una necesidad común: informes, facturas o documentos que los usuarios pueden imprimir o compartir. Hacerlo en código te da control total sobre el diseño, el texto y la estructura sin edición manual ni herramientas externas.

Esta guía explica paso a paso cómo crear un PDF en C#: vas a agregar un PDF sencillo con un título y un texto de cuerpo utilizando Xceed PdfLibrary para .NET. Al final, tendrás un fragmento ejecutable, comprenderás la API principal y sabrás dónde encontrar ejemplos para marcadores, marcas de agua y más.

Lo que necesitas

  • .NET 5 a .NET 10
  • El ensamblado Xceed PdfLibrary para .NET (de prueba o con licencia). Agrégalo a través de NuGet o referencia la DLL desde tu proyecto.
  • Un par de minutos

Configurar el proyecto y la licencia

Crea un proyecto de consola o web y agrega la biblioteca. Desde la línea de comandos (.CLI de .NET):

dotnet add package Xceed.PdfLibrary.NET

En Visual Studio puedes usar el administrador de paquetes NuGet o navegar a Xceed.PdfLibrary.NET en NuGet.

Concesión de licencias: Xceed PdfLibrary requiere una clave de licencia (de prueba o comprada) antes de crear o cargar cualquier PDF. Obtenga una clave de prueba gratuita o una licencia completa de la página de producto.

Establezca la clave una vez al inicio de la aplicación, antes de cualquier DocumentoPdf llamadas

using Xceed.PdfLibrary.NET;

// Set the license key once at startup (e.g. in your app's entry point)
Licenser.LicenseKey = "YOUR-TRIAL-OR-PURCHASED-KEY";

using var doc = PdfDocument.Create("output.pdf");
// ... rest of your code

Crear y guardar un PDF

Para crear un PDF en C# después de incluir la biblioteca, llama a PdfDocument.Create(ruta). La ruta puede ser relativa (p. ej. “salida.pdf”, escrito en el directorio actual de tu aplicación) o una ruta completa. El documento comienza con una página; obtén la página con doc.Páginas.Primero(). Desde ahí añades un título y una línea de texto.

using var doc = PdfDocument.Create("output.pdf");
var page = doc.Pages.First();
var style = TextStyle.WithFont(doc.Fonts.GetStandardFont(StandardFontType.Helvetica), 18);
page.AddParagraph("Hello from the blog", style, new ParagraphStyle(ParagraphHorizontalAlignment.Center));
page.AddText("This PDF was created with Xceed PdfLibrary for .NET.", new Point(50, 120));
doc.Save();

El código crea un archivo, agrega un título centrado y una línea de texto en la posición (50, 120), luego guarda. Las coordenadas están en puntos (72 por pulgada), con el origen en la esquina superior izquierda de la página y la Y aumentando hacia abajo.

Agregar Párrafo es ideal para encabezados y bloques que se pueden ajustar; AgregarTexto dibuja una línea recta en un punto dado. Copia el fragmento de arriba en tu propia consola o proyecto web y ejecútalo.

¿Cuándo usar AddParagraph en lugar de AddText?

Usar Agregar Párrafo cuando tienes un bloque de texto (un encabezado o un párrafo) que debe ajustarse dentro de márgenes o un rectángulo. Puedes establecer la alineación (izquierda, centro, derecha) mediante EstiloDePárrafo. Por ejemplo, los títulos de informes y los párrafos del cuerpo son buenos candidatos para Agregar Párrafo.

Usar AgregarTexto cuando necesites una sola línea en una posición exacta, como etiquetas, pies de página o fragmentos posicionados como “Página 1 de 5”. Ambos métodos aceptan un Estilo de texto para fuente, tamaño y color. Elegir el método correcto mantiene el diseño predecible y evita saltos de línea manuales.

Agrega más páginas y contenido

Se agregan nuevas páginas con doc.Páginas.Agregar(). Regresas la nueva página y añades contenido de la misma manera: Agregar Párrafo, AgregarTexto, o más tarde AgregarImagen, campos de formulario y demás. La API es la misma para cada página, por lo que crear un reporte de múltiples páginas es una cuestión de iterar y añadir contenido.

Por ejemplo, bucle de 0 a N, llama Añadir(), luego, agrega un encabezado y texto en el cuerpo a cada página nueva. Los documentos de varias páginas son útiles para informes, facturas con páginas detalladas o cualquier contenido que exceda una sola hoja.

Lo mismo Agregar Párrafo y AgregarTexto las llamadas funcionan en todas las páginas; solo necesitas seguir la posición vertical (Y) si quieres que el contenido fluya hacia abajo en la página.

Puedes establecer el tamaño de página y los márgenes predeterminados al crear el documento o por página. Xceed PdfLibrary utiliza un sistema de coordenadas con el origen en la esquina superior izquierda; Y aumenta hacia abajo. Esto coincide con la forma en que funcionan muchas otras APIs de documentos y es fácil de entender para encabezados, pies de página y columnas.

Si necesitas un tamaño de página diferente (por ejemplo, A5 o legal), configúralo al crear el documento o en la página antes de agregar contenido.

Estilo: fuentes y colores

Elige la fuente y el tamaño mediante TextStyle.ConFuente o ConFuenteYColor para texto a color). Las fuentes PDF estándar como Helvetica, Helvetica-Bold y Times están integradas. Para marcas personalizadas o idiomas, puedes incrustar fuentes TrueType desde una ruta de archivo o un flujo. Para párrafos centrados o alineados a la derecha, pasa un EstiloDePárrafo con la alineación que desees.

Mezclar fuentes y tamaños en el mismo documento es sencillo: crea un Estilo de texto por combinación y pásalo a Agregar Párrafo o AgregarTexto.

La biblioteca funciona con .NET 5 a través de .NET 10 y se ejecuta en Windows, macOS y Linux. El mismo código funciona en aplicaciones de escritorio, ASP.NET o en otros entornos de hospedaje.

¿Listo para crear PDFs en .NET?

Descarga Xceed PdfLibrary para .NET y pruébala gratis por 45 días, sin compromiso.

Consíguelo ahora – prueba gratuita de 45 días

Ejecutar el código

Pega los fragmentos de código anteriores en una consola o proyecto web, configura tu clave de licencia y ejecuta. El PDF se escribe en la ruta que pasaste a PdfDocument.Crear (por ejemplo. salida.pdf. Desde Visual Studio, el directorio actual suele ser la carpeta del proyecto; desde la línea de comandos, es la carpeta desde la cual invocaste la aplicación.

Abre el archivo generado en cualquier visor de PDF para confirmar que el título y el texto aparecen como se espera. Si el archivo no está donde esperas, usa una ruta absoluta (por ejemplo,. Path.Combine(AppContext.BaseDirectory, “output.pdf”)) o revise su directorio de trabajo en el depurador.

Preguntas frecuentes

¿Necesito desechar el documento? Sí. Usa usando (como en el fragmento) o llamar Eliminar Así se liberan los manejadores de archivo y los flujos.

¿Puedo guardar en un flujo en lugar de un archivo? Sí. Usa las sobrecargas que aceptan un Transmitir para creación o GuardarComo(flujo) al guardar. Esto es útil cuando se generan PDF en memoria para respuestas web o APIs.

¿Puedo crear un PDF en memoria sin un archivo? Sí. Cree el documento con un Transmitir (por ejemplo. MemoryStreamy llama Ahorra o Guardar como para escribir en ese stream. Luego puedes usar el buffer para subidas o respuestas.

¿Qué pasa si obtengo un error de licencia o archivo? Configurar Licenser.ClaveDeLicencia antes de cualquier DocumentoPdf llame. Si el PDF no se encuentra después de la ejecución, verifique que la ruta sea relativa al directorio actual de su proceso o utilice una ruta absoluta.

¿Dónde puedo ver más muestras? Ver el Documentación de Xceed PdfLibrary para .NET para temas avanzados y más ejemplos.

¿Puedo usar esto en una aplicación ASP.NET Core? Sí. El mismo código se ejecuta en cualquier host .NET. Establece la clave de licencia al iniciar (por ejemplo, en Program.cs o al construir el host), entonces crea o carga PDFs en tus controladores o servicios. Para respuestas web, crea el documento con un MemoryStream y devuélvelo con el apropiado Content-Type: application/pdf encabezado.

Resumen: Ya has visto cómo crear un PDF en C#: instala el paquete, configura la clave de licencia una sola vez al iniciar el programa y luego usa PdfDocument.Crear, Páginas, Agregar Párrafoy AgregarTexto para crear tu primer PDF.

¿Qué más puedes hacer con Xceed PdfLibrary?

Con Xceed PdfLibrary para .NET puedes agregar marcadores, hipervínculos, imágenes y campos de formulario (cuadros de texto, casillas de verificación, campos de firma). Puedes cargar un PDF existente, modificarlo y guardarlo en un archivo nuevo, o extraer texto y metadatos. Los mismos patrones que usaste aquí (crear o cargar, obtener páginas, agregar contenido, guardar) se aplican a todas estas funciones.

Una vez que te hayas familiarizado con cómo crear un PDF en C#, intenta agregar imágenes o campos de formulario utilizando la misma API de documentos y páginas.

Próximos pasos

dotnet add package Xceed.PdfLibrary.NET






Echa un vistazo a la biblioteca de palabras y PDF de Xceed paquete