Use IronPDF with in-Engine Mode

This article was translated from English: Does it need improvement?
Translated
View the article in English

Difference between Native & Engine

IronPDF has some performance-intensive functions that you may choose to run remotely. While IronPDF does not require IronPdfEngine to run, setting up IronPdfEngine as a remote service is an optional way to avoid platform-specific Chrome compatibility issues on older operating systems and mobile environments.

Get started with IronPDF

Comience a usar IronPDF en su proyecto hoy con una prueba gratuita.

Primer Paso:
green arrow pointer


How using Engine changes the way you code with IronPDF

When using the Engine configuration, we recommend installing IronPdf.Slim instead of the full IronPdf package from NuGet, as the Engine manages all the extra bulk included in the Native package.

Install-Package IronPdf.Slim

After installing IronPdf.Slim, configure the connection settings by pointing IronPDF to your IronPdfEngine instance. Add the following code at the startup of your application (or before calling any IronPDF method):

Extra Line of Configuration Code to add to your C# code

Assuming that IronPdfEngine runs remotely at 123.456.7.8:33350:

// Establish a connection with the remote IronPdfEngine
// Remember to replace the IP address and port with your actual server details
Installation.ConnectToIronPdfHost(
    IronPdf.GrpcLayer.IronPdfConnectionConfiguration.RemoteServer("123.456.7.8:33350")
);

// Additional code for your application
// Establish a connection with the remote IronPdfEngine
// Remember to replace the IP address and port with your actual server details
Installation.ConnectToIronPdfHost(
    IronPdf.GrpcLayer.IronPdfConnectionConfiguration.RemoteServer("123.456.7.8:33350")
);

// Additional code for your application
' Establish a connection with the remote IronPdfEngine
' Remember to replace the IP address and port with your actual server details
Installation.ConnectToIronPdfHost(IronPdf.GrpcLayer.IronPdfConnectionConfiguration.RemoteServer("123.456.7.8:33350"))

' Additional code for your application
$vbLabelText   $csharpLabel

How does IronPdfEngine Work?

IronPdfEngine is a containerized server designed to manage various IronPDF operations, including creating, writing, editing, and reading PDFs, all using the gRPC protocol. Built as a self-contained C# .NET application, IronPdfEngine operates independently, eliminating the need for the .NET runtime during execution. We handle the gRPC connection for you so you can focus on the coding!

For a quick start tutorial regarding running IronPDF as its own container, please refer to this tutorial.

Other clarifications for IronPdfEngine

IronPdf .NET does not require IronPdfEngine to run. IronPdfEngine is just an optional way to use IronPdf. By default, IronPdf for .NET will not use IronPdfEngine.

Por favor notaEach version of IronPdf for .NET requires a specific version of IronPdfEngine. Cross-version support is not available. For IronPdf for .NET, the required version of IronPdfEngine will always match. For example, IronPdf 2024.2.2 will use IronPdfEngine 2024.2.2

IronPdf .NET with Remote IronPdfEngine

The IronPdf.slim NuGet package is the only package needed to use IronPdf for .NET with Remote IronPdfEngine.

Por favor notaIf you are using IronPdf or IronPdf.Linux, you may use IronPdf.slim instead to reduce your application size.

Assuming that IronPdfEngine runs remotely at 123.456.7.8:33350.

Install IronPdf using NuGet:

Install-Package IronPdf.Slim

After installing IronPdf.slim, you just need to tell IronPdf where IronPdfEngine is (please make sure that address is accessible, not blocked by firewall). Use the IronPdfConnectionConfiguration class to configure the connection settings. Add the below code to the initial stage of your application (or just before calling any IronPdf method).

// Connect to the remote IronPdfEngine
Installation.ConnectToIronPdfHost(
    IronPdf.GrpcLayer.IronPdfConnectionConfiguration.RemoteServer("123.456.7.8:33350")
);
// Connect to the remote IronPdfEngine
Installation.ConnectToIronPdfHost(
    IronPdf.GrpcLayer.IronPdfConnectionConfiguration.RemoteServer("123.456.7.8:33350")
);
' Connect to the remote IronPdfEngine
Installation.ConnectToIronPdfHost(IronPdf.GrpcLayer.IronPdfConnectionConfiguration.RemoteServer("123.456.7.8:33350"))
$vbLabelText   $csharpLabel

Simple as that! After this, your application will be connected to the Remote IronPdfEngine!


IronPdfEngine Limitations

  • Currently, IronPdfEngine does not support horizontal scaling yet (load balancing with multiple instances) because we store the processing PDF file binaries inside the server memory and use PdfDocumentId for communicating between server and client. This also minimizes bandwidth usage and increases the processing speed.
  • To run IronPdfEngine Docker remotely, you need to ensure that the IronPdfEngine port is reachable.
  • IronPdfEngine Docker running on Linux x64 (Debian) using official ubuntu:22.04 based images may produce PDF output that is slightly different from what you would get running IronPdf locally due to different OS behavior.
  • Since IronPdfEngine Docker is Linux-based, it requires Linux Containers daemon (select Switch to Linux Containers if you are using Windows).
  • IronPdfEngine binaries are not cross-platform, so we build them for each platform specifically.
  • Cross-version support is not available.

Preguntas Frecuentes

¿Cómo puedo configurar IronPdfEngine para la generación remota de PDF?

Para configurar IronPdfEngine para la generación remota de PDF, instala el paquete IronPdf.Slim desde NuGet y configura las configuraciones de conexión usando la clase IronPdfConnectionConfiguration. Esta configuración te permite conectar tu aplicación a la instancia de IronPdfEngine remotamente.

¿Cuáles son los principales beneficios de usar IronPdfEngine con mi aplicación?

Usar IronPdfEngine con tu aplicación permite la ejecución remota de tareas PDF, ayudando a evitar problemas de compatibilidad específicos de la plataforma, especialmente en sistemas más antiguos y plataformas móviles. También elimina la necesidad del tiempo de ejecución de .NET durante la ejecución.

¿Por qué podría elegir usar IronPdfEngine en lugar de la biblioteca PDF nativa?

Podrías elegir IronPdfEngine para ejecutar funciones PDF intensivas en rendimiento de forma remota, reduciendo problemas de compatibilidad con diferentes sistemas operativos y mejorando el rendimiento al aprovechar un renderizador idéntico a Chrome para la conversión de HTML a PDF.

¿Es compatible el escalado horizontal en IronPdfEngine?

No, IronPdfEngine actualmente no admite el escalado horizontal, lo que significa que no puede ser equilibrado en carga entre múltiples instancias debido a la forma en que se manejan los archivos binarios de PDF en la memoria del servidor.

¿Puede ejecutarse IronPdfEngine en diferentes sistemas operativos?

IronPdfEngine está diseñado para ejecutarse en sistemas Linux usando contenedores Docker. Sin embargo, los archivos binarios son específicos de la plataforma, por lo que necesitas asegurarte de usar la versión correcta para tu sistema operativo.

¿Qué debo hacer si mis salidas de PDF son diferentes al usar IronPdfEngine?

Las salidas de PDF pueden variar ligeramente debido a comportamientos diferentes del sistema operativo. Para minimizar diferencias, asegúrate de estar usando la imagen Docker correcta y verifica cualquier configuración específica del sistema operativo que pueda afectar el renderizado.

¿Cómo aseguro que mi aplicación esté usando la versión correcta de IronPdfEngine?

Para asegurar la compatibilidad, cada versión de IronPDF requiere una versión correspondiente de IronPdfEngine. Asegúrate de actualizar ambos componentes simultáneamente para evitar problemas de versiones cruzadas.

¿Cuáles son las limitaciones al usar IronPdfEngine en Windows?

Al usar IronPdfEngine en Windows, necesitas contenedores de Linux para Docker y debes asegurarte de que el puerto del servidor sea accesible. Los binarios son específicos de la plataforma y se requiere cambiar a contenedores de Linux.

¿Cómo configuro IronPDF para conectar a un servidor remoto de IronPdfEngine?

Para configurar IronPDF para un servidor remoto, usa Installation.ConnectToIronPdfHost con el método IronPdf.GrpcLayer.IronPdfConnectionConfiguration.RemoteServer, especificando los detalles de IP y puerto del servidor.

¿Qué paquete debo usar para minimizar el tamaño de la aplicación al usar IronPdfEngine?

Deberías usar el paquete IronPdf.Slim de NuGet, ya que incluye solo los componentes necesarios para ejecutar IronPDF con IronPdfEngine, reduciendo así el tamaño de la aplicación.

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
¿Listo para empezar?
Nuget Descargas 16,154,058 | Versión: 2025.11 recién lanzado