Saltar al pie de página
USANDO IRONPDF

C# Añadir Imagen a PDF (Tutorial para Desarrolladores)

Desde la perspectiva de un desarrollador, agregar imágenes a documentos PDF programáticamente es una tarea desafiante debido a la variedad de formatos de imagen y su complejidad para manipular. Por lo tanto, se recomienda la biblioteca IronPDF C# para agregar imágenes al documento PDF programáticamente. Exploremos qué es IronPDF y cómo usarlo efectivamente.

IronPDF: Biblioteca PDF C

La biblioteca IronPDF C# es una biblioteca PDF escrita en C# y que apunta al modelo de objetos PDF. Esta biblioteca proporciona al desarrollador una forma de crear, editar y guardar archivos PDF sin la necesidad de mantener estrictamente la relevancia con API específicas como Acrobat de Adobe. La biblioteca IronPDF C# se puede utilizar cuando no se desea usar Adobe Acrobat u otra pieza de software individual.

Esta biblioteca ayuda a los desarrolladores con muchas herramientas para crear, editar archivos PDF con C#, guardar archivos PDF y características que otras bibliotecas PDF para .NET no ofrecen. Muchos desarrolladores prefieren la biblioteca IronPDF C# porque ofrece todo lo que buscan en una biblioteca PDF en las plataformas Windows, Linux y macOS, ¡y sin costo alguno! IronPDF constantemente agrega características y extiende sus servicios para hacer de ella la mejor utilidad para tus necesidades de PDF. La biblioteca sobresale más allá de los requisitos básicos para aquellos que necesitan explorar, buscar, encontrar, extraer datos de archivos PDF o crear archivos PDF. Veamos cómo se utiliza IronPDF para agregar imágenes a un documento PDF.

Crear o abrir un proyecto C

Para agregar imágenes a un documento PDF, se recomienda la última versión de Visual Studio para crear un proyecto C# para una experiencia fluida.

  • Abre Visual Studio.

Cómo Agregar Imágenes en PDF usando C#, Figura 1: UI de inicio de Visual Studio UI de inicio de Visual Studio

  • Haga clic en el botón "Crear un Nuevo Proyecto".
  • Seleccione "Aplicación Consola C#" de las plantillas de Proyecto y haga clic en el botón Siguiente. Puede elegir una plataforma según sus necesidades.

Cómo Agregar Imágenes en PDF usando C#, Figura 2: Crear una Aplicación de Consola en Visual Studio Crear una Aplicación de Consola en Visual Studio

  • A continuación, dé un nombre a su proyecto y haga clic en el botón Siguiente.
  • Elija el Framework .NET Objetivo >= versión de .NET Core 3.1 y haga clic en el botón Crear.

Siguiendo los pasos anteriores, podrá crear un nuevo proyecto C# fácilmente. Puede usar un proyecto C# ya existente. Simplemente abra el proyecto e instale la biblioteca IronPDF.

Instalar la biblioteca IronPDF

La biblioteca IronPDF se puede instalar de múltiples maneras.

  • Usando el Administrador de Paquetes NuGet
  • Usando la Consola del Administrador de Paquetes

Uso del Administrador de paquetes NuGet

Para instalar la biblioteca usando el Administrador de Paquetes NuGet, siga los pasos a continuación:

  • Vaya a Herramientas > Administrador de Paquetes NuGet > Administrar Paquete NuGet para la Solución desde las opciones del menú principal.

Cómo Agregar Imágenes en PDF usando C#, Figura 3: Navegar al Administrador de Paquetes NuGet Navega al Administrador de Paquetes NuGet

  • Esto abrirá la ventana del Administrador de Paquetes NuGet. Vaya a la pestaña de búsqueda y busque IronPDF. Seleccione la biblioteca IronPDF y haga clic en el botón "Instalar".

Cómo Agregar Imágenes en PDF usando C#, Figura 4: Instalar el paquete IronPDF desde el Administrador de Paquetes NuGet Instalar el paquete IronPdf desde el Administrador de Paquetes NuGet

Uso de la consola del gestor de paquetes

A continuación se presentan los pasos para instalar la biblioteca IronPDF usando la Consola.

  • Vaya a la Consola del Administrador de Paquetes (generalmente ubicada en la parte inferior de Visual Studio).
  • Escriba el siguiente comando para comenzar la instalación de la biblioteca IronPDF.
Install-Package IronPdf

Comenzará la instalación y podrá ver el progreso de la instalación. Después de la instalación, podrá utilizar la biblioteca IronPDF en su proyecto muy rápidamente.

Cómo Agregar Imágenes en PDF usando C#, Figura 5:


La biblioteca ha sido instalada, y ahora es momento de escribir el código para agregar imágenes al documento PDF. Comenzando con la importación del espacio de nombres IronPDF. Entonces, escriba la siguiente línea en su archivo de código:

using IronPdf;
using IronPdf;
Imports IronPdf
$vbLabelText   $csharpLabel

Añadir mapas de bits e imágenes al documento PDF

Hay múltiples formas de agregar imágenes a documentos PDF usando IronPDF: usar un archivo de imagen directo, convertir imágenes a bytes, o usar System.Drawing.Bitmap. Además, la biblioteca IronPDF soporta múltiples formatos de imagen.

Veamos un ejemplo:

using IronPdf;
using System.IO;
using System.Drawing;

class PDFImageAdder
{
    /* This method demonstrates how to convert an image file to a PDF document in C# */
    static void Main(string[] args)
    {
        // Initialize IronPdf Renderer
        var renderer = new IronPdf.ChromePdfRenderer();

        // Read the PNG image file into binary format
        var pngBinaryData = File.ReadAllBytes("embed_me.png");

        // Convert image binary data to base64 for embedding in HTML
        var ImgDataURI = "data:image/png;base64," + Convert.ToBase64String(pngBinaryData);

        // Embed the image as a base64 data URI in an HTML <img> tag
        var ImgHtml = $"<img src='{ImgDataURI}'>";

        // Render the HTML as a PDF document
        using var pdfdoc = renderer.RenderHtmlAsPdf(ImgHtml);

        // Save the rendered PDF document
        pdfdoc.SaveAs("embedded_example_1.pdf");
    }
}
using IronPdf;
using System.IO;
using System.Drawing;

class PDFImageAdder
{
    /* This method demonstrates how to convert an image file to a PDF document in C# */
    static void Main(string[] args)
    {
        // Initialize IronPdf Renderer
        var renderer = new IronPdf.ChromePdfRenderer();

        // Read the PNG image file into binary format
        var pngBinaryData = File.ReadAllBytes("embed_me.png");

        // Convert image binary data to base64 for embedding in HTML
        var ImgDataURI = "data:image/png;base64," + Convert.ToBase64String(pngBinaryData);

        // Embed the image as a base64 data URI in an HTML <img> tag
        var ImgHtml = $"<img src='{ImgDataURI}'>";

        // Render the HTML as a PDF document
        using var pdfdoc = renderer.RenderHtmlAsPdf(ImgHtml);

        // Save the rendered PDF document
        pdfdoc.SaveAs("embedded_example_1.pdf");
    }
}
Imports IronPdf
Imports System.IO
Imports System.Drawing

Friend Class PDFImageAdder
	' This method demonstrates how to convert an image file to a PDF document in C# 
	Shared Sub Main(ByVal args() As String)
		' Initialize IronPdf Renderer
		Dim renderer = New IronPdf.ChromePdfRenderer()

		' Read the PNG image file into binary format
		Dim pngBinaryData = File.ReadAllBytes("embed_me.png")

		' Convert image binary data to base64 for embedding in HTML
		Dim ImgDataURI = "data:image/png;base64," & Convert.ToBase64String(pngBinaryData)

		' Embed the image as a base64 data URI in an HTML <img> tag
		Dim ImgHtml = $"<img src='{ImgDataURI}'>"

		' Render the HTML as a PDF document
		Dim pdfdoc = renderer.RenderHtmlAsPdf(ImgHtml)

		' Save the rendered PDF document
		pdfdoc.SaveAs("embedded_example_1.pdf")
	End Sub
End Class
$vbLabelText   $csharpLabel

Este programa cargará primero la imagen. La función ReadAllBytes convierte la imagen en formato de bytes en el código anterior. Después de eso, los datos de la imagen se codificarán en base64 y se colocarán en una etiqueta HTML <img> como cadena. Después de eso, la cadena HTML se renderizará en un PDF usando la función del método RenderHtmlAsPdf. Creará una página PDF en el documento PDF.

El próximo ejemplo mostrará cómo usar una imagen Bitmap en el documento PDF. IronPDF tiene un método útil para incrustar una System.Drawing.Image en un documento HTML, que luego puede renderizarse como PDF. Visite el siguiente API de ImageUtilities para entender más sobre ello. El siguiente código mostrará cómo funciona:

using IronPdf;
using System.Drawing;

class PDFImageAdder
{
    static void Main(string[] args)
    {
        // Initialize IronPdf Renderer
        var renderer = new IronPdf.ChromePdfRenderer();

        // Create a Bitmap image
        Bitmap MyImage = new Bitmap("Path-to-Your-Image");

        // Convert the Bitmap image to a Data URI
        string DataURI = IronPdf.Util.ImageToDataUri(MyImage);

        // Embed the image as a Data URI in an HTML <img> tag
        var ImgHtml = $"<img src='{DataURI}'>";

        // Render the HTML to PDF
        using var pdfdoc2 = renderer.RenderHtmlAsPdf(ImgHtml);

        // Save the PDF document
        pdfdoc2.SaveAs("embedded_example_2.pdf");
    }
}
using IronPdf;
using System.Drawing;

class PDFImageAdder
{
    static void Main(string[] args)
    {
        // Initialize IronPdf Renderer
        var renderer = new IronPdf.ChromePdfRenderer();

        // Create a Bitmap image
        Bitmap MyImage = new Bitmap("Path-to-Your-Image");

        // Convert the Bitmap image to a Data URI
        string DataURI = IronPdf.Util.ImageToDataUri(MyImage);

        // Embed the image as a Data URI in an HTML <img> tag
        var ImgHtml = $"<img src='{DataURI}'>";

        // Render the HTML to PDF
        using var pdfdoc2 = renderer.RenderHtmlAsPdf(ImgHtml);

        // Save the PDF document
        pdfdoc2.SaveAs("embedded_example_2.pdf");
    }
}
Imports IronPdf
Imports System.Drawing

Friend Class PDFImageAdder
	Shared Sub Main(ByVal args() As String)
		' Initialize IronPdf Renderer
		Dim renderer = New IronPdf.ChromePdfRenderer()

		' Create a Bitmap image
		Dim MyImage As New Bitmap("Path-to-Your-Image")

		' Convert the Bitmap image to a Data URI
		Dim DataURI As String = IronPdf.Util.ImageToDataUri(MyImage)

		' Embed the image as a Data URI in an HTML <img> tag
		Dim ImgHtml = $"<img src='{DataURI}'>"

		' Render the HTML to PDF
		Dim pdfdoc2 = renderer.RenderHtmlAsPdf(ImgHtml)

		' Save the PDF document
		pdfdoc2.SaveAs("embedded_example_2.pdf")
	End Sub
End Class
$vbLabelText   $csharpLabel

En el código anterior, la función ImageToDataUri se usa para convertir una imagen en formato URI. La imagen luego se dibuja en el documento PDF usando la función RenderHtmlAsPdf. Esto se aplica a múltiples imágenes.

Además, IronPDF también es capaz de renderizar gráficos en PDFs, agregar códigos de barras a documentos PDF, mejorar la seguridad del PDF con contraseñas, y añadir marcas de agua en archivos PDF, e incluso manejar formularios PDF programáticamente.

Licencias

IronPDF es una excelente biblioteca PDF que le ayuda a crear y personalizar archivos PDF, y está disponible para comprar hoy. Sin embargo, IronPDF es completamente gratuito para propósitos de desarrollo. También puede activar la versión de prueba gratuita para producción sin ningún detalle de pago. Después de comprar IronPDF, Iron Software le hace una oferta fantástica para comprar cinco paquetes de Iron Software por el precio de solo dos. ¡Sí! Lo ha escuchado bien: puede comprar un conjunto de cinco productos de Iron Software por el precio de solo dos. ¡Cómprelo ahora! Visite la página de licencias de IronPDF para más detalles.

Preguntas Frecuentes

¿Cómo puedo agregar imágenes a un PDF usando C#?

Puede agregar imágenes a un PDF en C# convirtiendo las imágenes a formato base64, incrustándolas en una etiqueta  related to ¿Cómo puedo agregar imágenes a un PDF usando C#? de HTML y usando el método RenderHtmlAsPdf de IronPDF para convertir el HTML a PDF.

¿Cuáles son los pasos para configurar un proyecto C# para agregar imágenes a PDFs?

Para configurar un proyecto C# para agregar imágenes a PDFs, abra Visual Studio, cree una nueva Aplicación de Consola C# y asegúrese de que su proyecto apunte a la versión 3.1 o superior de .NET Framework. Instale la biblioteca IronPDF a través del Gestor de NuGet o del Administrador de Consolas de Paquetes.

¿Cómo convierto una imagen a base64 en C# para incrustarla en un PDF?

En C#, puede convertir una imagen a base64 leyendo el archivo de imagen en un arreglo de bytes y luego convirtiéndolo usando Convert.ToBase64String. Esta cadena base64 puede incrustarse en una etiqueta  related to ¿Cómo convierto una imagen a base64 en C# para incrustarla en un PDF? de HTML para la conversión a PDF usando IronPDF.

¿Qué formatos de imagen son compatibles para incrustar en PDFs?

IronPDF admite múltiples formatos de imagen, lo que le permite incrustar varios tipos de imágenes en sus documentos PDF, incluidos JPEG, PNG y BMP.

¿Cuál es el método para incrustar imágenes Bitmap en PDFs usando C#?

Para incrustar imágenes Bitmap en PDFs usando C#, convierta el Bitmap a un URI de datos utilizando la función ImageToDataUri, incrústelo en una etiqueta  related to ¿Cuál es el método para incrustar imágenes Bitmap en PDFs usando C#? de HTML y renderícelo como un PDF con el método RenderHtmlAsPdf de IronPDF.

¿Cómo puedo mejorar la seguridad del PDF mientras incrusto imágenes?

IronPDF ofrece funciones para mejorar la seguridad de los PDF, como agregar contraseñas y permisos. Esto se puede hacer junto con la incrustación de imágenes configurando opciones de seguridad en el proceso de creación del PDF.

¿Puedo añadir gráficos y códigos de barras a PDFs junto con imágenes?

Sí, IronPDF le permite agregar gráficos y códigos de barras a PDFs además de imágenes. Estos elementos pueden ser creados y renderizados usando HTML y CSS, y luego convertirse a PDF usando IronPDF.

¿Cuáles son las opciones de licencia para IronPDF?

IronPDF ofrece una prueba gratuita para desarrollo y opciones de licenciamiento rentables para uso más amplio. Se puede encontrar más información en la página de licencias de IronPDF.

¿Cómo instalo IronPDF utilizando la Consola del Administrador de Paquetes?

Para instalar IronPDF usando el Administrador de Consolas de Paquetes, use el comando Install-Package IronPdf.

¿IronPDF es compatible con .NET 10?

Sí: IronPDF es totalmente compatible con .NET 10, junto con versiones anteriores, incluidas .NET 9, 8, 7, 6, .NET Core, .NET Standard y .NET Framework.

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