# Cómo crear archivos PDF en Python
Cree archivos PDF en Python usando IronPDF convirtiendo cadenas HTML, archivos HTML o URLs a documentos PDF con solo unas pocas líneas de código. IronPDF gestiona automáticamente las funciones de renderizado, formato y seguridad.
*as-heading:2(Inicio rápido: Crear un PDF en Python)*
```python
# 1. Install IronPDF: pip install ironpdf
# 2. Import the library
from ironpdf import *
# 3. Create renderer
renderer = ChromePdfRenderer()
# 4. Convert HTML to PDF
pdf = renderer.RenderHtmlAsPdf("<h1>Hello World!</h1>")
# 5. Save the PDF
pdf.SaveAs("output.pdf")
```
<div class="hsg-featured-snippet">
<h2>Cómo Crear un Archivo PDF en Python</h2>
<ol>
<li><a class="js-modal-open" data-modal-id="download-modal" href="#download-modal">Instale la biblioteca IronPDF for Python</a></li>
<li>Use el método <code>RenderHtmlAsPdf</code> para convertir una cadena HTML en un documento PDF</li>
<li>Use el método <code>RenderHtmlFileAsPdf</code> para generar un archivo PDF a partir de un archivo HTML local</li>
<li>Use el método <code>RenderUrlAsPdf</code> para crear un PDF a partir de una URL de página web</li>
<li>Aplique protección con contraseña y guarde el PDF en el directorio deseado</li>
</ol>
</div>
Automatizar la creación de PDF en Python permite a los desarrolladores generar documentos programáticamente: facturas, informes, contratos y certificados, sin salir de la aplicación. Tradicionalmente, esto requería manejar motores de diseño y especificaciones de formato, pero el enfoque de HTML primero de IronPDF significa que cualquier documento HTML/CSS se convierte en un PDF exacto en píxeles con una sola llamada de método.
Esta Guía de Cómo Hacer cubre los cuatro flujos de trabajo principales de creación de PDF en [IronPDF for Python](https://ironpdf.com/python/): convertir una cadena HTML, convertir un archivo HTML local, convertir una URL y aplicar protección por contraseña antes de exportar.
## ¿Qué Biblioteca de Python Debería Usar para Crear PDF?
IronPDF es una biblioteca de Python desarrollada específicamente para crear documentos PDF a partir de HTML. Su API es sencilla: pasa una marca HTML (o una ruta de archivo, o una URL) y recibe un objeto `PdfDocument` que puedes guardar, estampar, combinar o encriptar.
La biblioteca envuelve el motor de renderizado .NET probado en batalla de IronPDF, el mismo motor utilizado en proyectos .NET, [Java](/java/) y [Node.js](https://ironpdf.com/nodejs/), por lo que la salida HTML a PDF es consistente en todas las plataformas. Admite estándares web modernos que incluyen ejecución de CSS3, HTML5, JavaScript, fuentes web y diseños responsivos.
Más allá de la generación de PDF, IronPDF cubre todo el ciclo de vida del PDF:
- Extracción de texto y datos de PDFs existentes
- Conversión de formatos de archivo (HTML, DOCX, imágenes a PDF)
- [Fusionar múltiples PDFs](https://ironpdf.com/python/how-to/python-merge-pdf/)
- [Comprimir archivos PDF](https://ironpdf.com/python/how-to/python-compress-pdf/)
- Cifrado con contraseña y gestión de derechos digitales
- [Rellenar formularios PDF programáticamente](https://ironpdf.com/python/how-to/python-fill-pdf-form/)
[[i:(IronPDF está disponible para [.NET](/), [Java](/java/), [Python](/python/) y [Node.js](https://ironpdf.com/nodejs/). Esta guía cubre específicamente la implementación en Python.)]]
## ¿Qué Prerrequisitos Necesito Antes de Crear PDFs?
Para usar IronPDF for Python, se debe instalar el siguiente software:
1. **`.NET 6.0 SDK`**: IronPDF for Python se ejecuta sobre la biblioteca IronPDF .NET. Descárguelo desde la [página oficial de descarga de Microsoft .NET 6.0](https://dotnet.microsoft.com/en-us/download/dotnet/6.0).
2. **`Python 3.x`**: Descarga e instala Python desde el [sitio web oficial de Python](https://www.python.org/downloads/). Seleccione la opción para añadir Python al PATH durante la instalación.
3. **`pip`**: Incluido con Python 3.4+. Verifica la instalación ejecutando `pip --version` en tu terminal.
4. **`IronPDF`**: Instala la biblioteca usando pip:
```shell
:ProductInstall
```
**Posibles Problemas de Instalación** En tales casos, utiliza `pip3` en lugar de `pip` para instalar el paquete de Python 3. Si encuentra errores de instalación, consulte nuestra [guía de solución de problemas para problemas OSError](https://ironpdf.com/python/troubleshooting/could-not-install-package/).)}]
### ¿Qué configuración de código se requiere antes de crear archivos PDF?
Agregue la siguiente declaración de importación a la parte superior de su script de Python:
```python
# Import statement for IronPDF for Python
from ironpdf import *
```
Antes de cualquier otra llamada de IronPDF, configura una clave de licencia válida asignándola al atributo `LicenseKey` de `License`. Esto elimina la marca de agua de prueba de los PDFs generados. Para obtener instrucciones detalladas sobre cómo implementar claves de licencia, visite la [guía de configuración de claves de licencia](https://ironpdf.com/python/get-started/license-keys/).
```python
# Apply your license key
License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01"
```
[[n:(Para crear PDFs sin marcas de agua, se requiere una clave de licencia válida. <a href="/python/licensing/">Compre una licencia</a> o <a class="js-modal-open" href="#trial-license" data-modal-id="trial-license">obtenga una clave de licencia de prueba gratuita</a>. Sin una clave de licencia, IronPDF agrega una marca de agua de prueba a cada PDF de salida.)]]
## ¿Cómo Convertir una Cadena HTML en un Documento PDF?
El método `RenderHtmlAsPdf` convierte una cadena de HTML directamente en un objeto `PdfDocument`. Pase cualquier marcado HTML válido como argumento del método y IronPDF lo renderiza usando su motor Chromium incorporado, ejecutando JavaScript y aplicando CSS antes de producir el PDF.
Este enfoque es el más flexible para contenido generado dinámicamente: construya la cadena HTML en Python (usando motores de plantillas como Jinja2 o formato de cadena simple), luego pásela directamente al renderizador. Generar una factura, por ejemplo, significa llenar una plantilla HTML con datos de pedidos y llamar a `RenderHtmlAsPdf` en un solo paso.
```python
from ironpdf import *
# Apply license key
License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01"
# Instantiate the Chromium renderer
renderer = ChromePdfRenderer()
# Convert an HTML string to a PDF document
pdf = renderer.RenderHtmlAsPdf("<h1>Hello World!</h1><p>This is an example HTML string.</p>")
```
### ¿Cómo guardo el PDF generado?
Una vez que la cadena de HTML ha sido convertida en una instancia `PdfDocument`, llama a `SaveAs` con una ruta de archivo objetivo:
```python
# Save the PDF to a file
pdf.SaveAs("htmlstring_to_pdf.pdf")
```
El archivo `htmlstring_to_pdf.pdf` se escribe en el directorio de trabajo actual, preservando el contenido HTML con todo el estilo CSS. Para técnicas avanzadas de renderizado de HTML, incluyendo frameworks de CSS, frameworks de JavaScript y diseños complejos, consulte el [tutorial de HTML a PDF for Python](https://ironpdf.com/python/tutorials/html-to-pdf/).
## ¿Cómo Generar un PDF a partir de un Archivo HTML Local?
Cuando el contenido HTML reside en un archivo en el sistema de archivos local, `RenderHtmlFileAsPdf` es el método adecuado. Proporcione la ruta del archivo como el argumento:
```python
from ironpdf import *
# Apply license key
License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01"
# Instantiate the renderer
renderer = ChromePdfRenderer()
# Create a PDF from a local HTML file
pdf = renderer.RenderHtmlFileAsPdf("example.html")
# Save the output PDF
pdf.SaveAs("htmlfile_to_pdf.pdf")
```
IronPDF resuelve rutas relativas para archivos CSS vinculados, imágenes y scripts en relación con la ubicación del archivo HTML. El renderizador carga todos los activos asociados antes de generar el PDF, por lo que el resultado coincide con lo que mostraría un navegador. Esto lo convierte en una opción confiable para documentos con plantillas donde el HTML y los activos se mantienen como archivos en disco.
[[t:(Cuando trabaje con archivos HTML locales, asegúrese de que todos los activos vinculados (hojas de estilo, fuentes, imágenes) utilicen rutas relativas al archivo HTML. IronPDF resuelve estas rutas antes de renderizar, produciendo un PDF completo y autocontenido.)]]
## ¿Cómo Crear un PDF desde una URL en Python?
Utiliza `RenderUrlAsPdf` para convertir una página web en vivo a PDF. Proporcione la URL completa como el argumento:
```python
from ironpdf import *
# Apply license key
License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01"
# Instantiate the renderer
renderer = ChromePdfRenderer()
# Convert a web page to PDF
pdf = renderer.RenderUrlAsPdf("https://ironpdf.com")
# Save the output PDF
pdf.SaveAs("url.pdf")
```
La función de renderización de URLs admite tecnologías web modernas, incluyendo contenido JavaScript dinámico, llamadas AJAX, y diseños responsivos. IronPDF espera que la página se cargue completamente, incluyendo la ejecución de JavaScript, antes de capturar el PDF, por lo que todo contenido dinámico se captura con precisión.
### ¿Dónde puedo encontrar más ejemplos de conversión de URL?
Hay ejemplos adicionales para convertir páginas web en PDF disponibles en la página de ejemplo de código [de URL a PDF](https://ironpdf.com/python/examples/converting-a-url-to-a-pdf/). Para páginas web que requieren autenticación, consulte la guía sobre [inicios de sesión en sitios web y sistemas](https://ironpdf.com/python/examples/ironpdf-website-and-system-logins/).
## ¿Cómo puedo personalizar las opciones de formato de un PDF?
La propiedad `RenderingOptions` de `ChromePdfRenderer` controla el formato y diseño del PDF de salida. Las configuraciones comunes incluyen tamaño de página, orientación de página, tamaño de margen y nivel de zoom.
```python
from ironpdf import *
License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01"
renderer = ChromePdfRenderer()
# Configure rendering options
renderer.RenderingOptions.PaperSize = PdfPaperSize.A4
renderer.RenderingOptions.PaperOrientation = PdfPaperOrientation.Portrait
renderer.RenderingOptions.MarginTop = 20
renderer.RenderingOptions.MarginBottom = 20
renderer.RenderingOptions.MarginLeft = 25
renderer.RenderingOptions.MarginRight = 25
# Render with custom formatting
pdf = renderer.RenderHtmlAsPdf("<h1>Custom Formatted PDF</h1><p>Content here.</p>")
pdf.SaveAs("formatted.pdf")
```
### ¿Qué Configuraciones de Formato Están Disponibles?
La propiedad `RenderingOptions` expone configuraciones para el tamaño del papel, orientación de la página, márgenes y zoom. La tabla a continuación enumera las propiedades más utilizadas:
<table class="content__data-table" data-content-table>
<caption>Propiedades de RenderingOptions comúnmente utilizadas para formato de PDF en Python</caption>
<thead>
<tr>
<th>Propiedad</th>
<th>Escriba a</th>
<th>Descripción</th>
</tr>
</thead>
<tbody>
<tr>
<td><code>PaperSize</code></td>
<td><code>PdfPaperSize</code></td>
<td>Tamaños de página estándar (A4, Carta, Legal) o <a href="https://ironpdf.com/python/examples/custom-pdf-paper-size/">tamaños personalizados</a></td>
</tr>
<tr>
<td><code>Orientación del documento</code></td>
<td><code>Orientación del documento pdf</code></td>
<td>Orientación de página en retrato o paisaje</td>
</tr>
<tr>
<td><code>MargenSuperior</code> / <code>MargenInferior</code></td>
<td><code>int</code> (mm)</td>
<td>Márgenes superior e inferior de página en milímetros</td>
</tr>
<tr>
<td><code>MargenIzquierdo</code> / <code>MargenDerecho</code></td>
<td><code>int</code> (mm)</td>
<td>Márgenes izquierdo y derecho de página en milímetros</td>
</tr>
<tr>
<td><code>CabezeraHtml</code> / <code>PieHtml</code></td>
<td><code>HtmlHeaderFooter</code></td>
<td>Encabezados y pies de página HTML en ejecución con soporte de numeración de páginas</td>
</tr>
</tbody>
</table>
Para una referencia completa con configuraciones adicionales, vea el ejemplo de código [de configuraciones de generación de PDF](https://ironpdf.com/python/examples/pdf-generation-settings/).
[[t:(Para agregar encabezados y pies de página con números de página, utiliza las propiedades `HtmlHeader` y `HtmlFooter` en `RenderingOptions`. El [ejemplo de encabezados y pies de página](https://ironpdf.com/python/examples/adding-headers-and-footers-advanced/) demuestra la sintaxis completa.)]]
## ¿Cómo proteger archivos PDF con contraseñas?
Para proteger con contraseña un PDF, configura la propiedad `UserPassword` en el atributo `SecuritySettings` del objeto `PdfDocument`. También se puede establecer una contraseña de propietario para restringir permisos de edición separadamente del acceso de lectura.
Considere proteger el PDF creado en el ejemplo de URL:
```python
from ironpdf import *
License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01"
renderer = ChromePdfRenderer()
pdf = renderer.RenderUrlAsPdf("https://ironpdf.com")
# Set user password (required to open the PDF)
pdf.SecuritySettings.UserPassword = "sharable"
# Set owner password (controls permissions)
pdf.SecuritySettings.OwnerPassword = "admin123"
# Configure document permissions
pdf.SecuritySettings.AllowUserPrinting = True
pdf.SecuritySettings.AllowUserCopyPasteContent = False
# Save the password-protected PDF
pdf.SaveAs("protected.pdf")
```
### ¿Cómo funciona en la práctica la protección por contraseña?
Abrir `protected.pdf` en cualquier visor de PDF solicita la contraseña del usuario antes de mostrar el contenido del documento. La contraseña del propietario otorga acceso administrativo para modificar la configuración de seguridad. Configurar `AllowUserCopyPasteContent = False` previene que los lectores copien texto del PDF mientras aún permite la impresión.
<iframe loading="lazy" src="/static-assets/ironpdf-python/howto/python-create-pdf-tutorial/protected.pdf" width="100%" height="500px">
</iframe>
Para un mayor control sobre los permisos de documentos, vea el ejemplo de configuración [de seguridad y metadatos](https://ironpdf.com/python/examples/security-and-metadata/) y la guía [de cifrado y descifrado de PDF](https://ironpdf.com/python/examples/encryption-and-decryption/).
## ¿Qué es el código fuente completo?
El ejemplo combinado a continuación demuestra los cuatro flujos de trabajo de creación de PDF en un solo script de Python:
```python
from ironpdf import *
# Apply your license key
License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01"
# --- HTML string to PDF ---
renderer = ChromePdfRenderer()
pdf = renderer.RenderHtmlAsPdf("<h1>Hello World!</h1><p>This is an example HTML string.</p>")
pdf.SaveAs("htmlstring_to_pdf.pdf")
# --- Local HTML file to PDF ---
renderer = ChromePdfRenderer()
pdf = renderer.RenderHtmlFileAsPdf("example.html")
pdf.SaveAs("htmlfile_to_pdf.pdf")
# --- URL to PDF ---
renderer = ChromePdfRenderer()
pdf = renderer.RenderUrlAsPdf("https://ironpdf.com")
pdf.SaveAs("url.pdf")
# --- Password-protected PDF ---
pdf.SecuritySettings.UserPassword = "sharable"
pdf.SecuritySettings.OwnerPassword = "admin123"
pdf.SecuritySettings.AllowUserPrinting = True
pdf.SecuritySettings.AllowUserCopyPasteContent = False
pdf.SaveAs("protected.pdf")
```
IronPDF renderiza todas las imágenes y texto con precisión mientras preserva el formato. Los elementos interactivos como los botones permanecen funcionales y los cuadros de texto conservan su editabilidad dentro del PDF generado.
## ¿Cuáles son los Próximos Pasos para Crear PDFs en Python?
Esta guía cubrió los tres métodos principales de creación de PDF en IronPDF for Python: cadena HTML, archivo HTML local y URL, junto con la protección con contraseña para asegurar los archivos de salida. Cada método produce un objeto `PdfDocument` que puede ser procesado: estampado, combinado, dividido o encriptado antes de guardar.
¿Listo para extender estos flujos de trabajo? Los siguientes recursos demuestran pasos prácticos siguientes:
- [Tutorial de HTML a PDF en Python](https://ironpdf.com/python/tutorials/html-to-pdf/) - renderización avanzada con frameworks de CSS y JavaScript
- [Combinar PDFs en Python](https://ironpdf.com/python/how-to/python-merge-pdf/) - combine múltiples documentos en un solo archivo
- [Comprimir PDFs en Python](https://ironpdf.com/python/how-to/python-compress-pdf/) - reduzca el tamaño del archivo para almacenamiento y email
- [Llenar formularios PDF en Python](https://ironpdf.com/python/how-to/python-fill-pdf-form/) - complete campos de formularios PDF existentes
IronPDF requiere una licencia válida para uso en producción. La concesión de licencias comienza desde `$liteLicense`. <a class="js-modal-open" href="#trial-license" data-modal-id="trial-license">Comience una prueba gratuita de 30 días</a> para evaluar la biblioteca sin restricciones, o <a href="#licensing">vea las opciones de licencia</a> para la suite de productos completa.
*[Descargue el código fuente completo.](https://ironpdf.com/downloads/python-create-pdf.zip)*
Cree archivos PDF en Python usando IronPDF convirtiendo cadenas HTML, archivos HTML o URLs a documentos PDF con solo unas pocas líneas de código. IronPDF gestiona automáticamente las funciones de renderizado, formato y seguridad.
Inicio rápido: Crear un PDF en Python
# 1. Install IronPDF: pip install ironpdf# 2. Import the libraryfrom ironpdf import *# 3. Create rendererrenderer = ChromePdfRenderer()# 4. Convert HTML to PDFpdf = renderer.RenderHtmlAsPdf("<h1>Hello World!</h1>")# 5. Save the PDFpdf.SaveAs("output.pdf")
# 1. Install IronPDF: pip install ironpdf
# 2. Import the library
from ironpdf import *
# 3. Create renderer
renderer = ChromePdfRenderer()
# 4. Convert HTML to PDF
pdf = renderer.RenderHtmlAsPdf("<h1>Hello World!</h1>")
# 5. Save the PDF
pdf.SaveAs("output.pdf")
Use el método RenderHtmlAsPdf para convertir una cadena HTML en un documento PDF
Use el método RenderHtmlFileAsPdf para generar un archivo PDF a partir de un archivo HTML local
Use el método RenderUrlAsPdf para crear un PDF a partir de una URL de página web
Aplique protección con contraseña y guarde el PDF en el directorio deseado
Automatizar la creación de PDF en Python permite a los desarrolladores generar documentos programáticamente: facturas, informes, contratos y certificados, sin salir de la aplicación. Tradicionalmente, esto requería manejar motores de diseño y especificaciones de formato, pero el enfoque de HTML primero de IronPDF significa que cualquier documento HTML/CSS se convierte en un PDF exacto en píxeles con una sola llamada de método.
Esta Guía de Cómo Hacer cubre los cuatro flujos de trabajo principales de creación de PDF en IronPDF for Python: convertir una cadena HTML, convertir un archivo HTML local, convertir una URL y aplicar protección por contraseña antes de exportar.
¿Qué Biblioteca de Python Debería Usar para Crear PDF?
IronPDF es una biblioteca de Python desarrollada específicamente para crear documentos PDF a partir de HTML. Su API es sencilla: pasa una marca HTML (o una ruta de archivo, o una URL) y recibe un objeto PdfDocument que puedes guardar, estampar, combinar o encriptar.
La biblioteca envuelve el motor de renderizado .NET probado en batalla de IronPDF, el mismo motor utilizado en proyectos .NET, Java y Node.js, por lo que la salida HTML a PDF es consistente en todas las plataformas. Admite estándares web modernos que incluyen ejecución de CSS3, HTML5, JavaScript, fuentes web y diseños responsivos.
Más allá de la generación de PDF, IronPDF cubre todo el ciclo de vida del PDF:
Extracción de texto y datos de PDFs existentes
Conversión de formatos de archivo (HTML, DOCX, imágenes a PDF)
Python 3.x: Descarga e instala Python desde el sitio web oficial de Python. Seleccione la opción para añadir Python al PATH durante la instalación.
pip: Incluido con Python 3.4+. Verifica la instalación ejecutando pip --version en tu terminal.
IronPDF: Instala la biblioteca usando pip:
> pip install ironpdf
pip install ironpdf
Posibles Problemas de Instalación En tales casos, utiliza pip3 en lugar de pip para instalar el paquete de Python 3. Si encuentra errores de instalación, consulte nuestra guía de solución de problemas para problemas OSError.)}]
¿Qué configuración de código se requiere antes de crear archivos PDF?
Agregue la siguiente declaración de importación a la parte superior de su script de Python:
# Import statement for IronPDF for Pythonfrom ironpdf import *
# Import statement for IronPDF for Python
from ironpdf import *
Python
Antes de cualquier otra llamada de IronPDF, configura una clave de licencia válida asignándola al atributo LicenseKey de License. Esto elimina la marca de agua de prueba de los PDFs generados. Para obtener instrucciones detalladas sobre cómo implementar claves de licencia, visite la guía de configuración de claves de licencia.
# Apply your license keyLicense.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01"
# Apply your license key
License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01"
¿Cómo Convertir una Cadena HTML en un Documento PDF?
El método RenderHtmlAsPdf convierte una cadena de HTML directamente en un objeto PdfDocument. Pase cualquier marcado HTML válido como argumento del método y IronPDF lo renderiza usando su motor Chromium incorporado, ejecutando JavaScript y aplicando CSS antes de producir el PDF.
Este enfoque es el más flexible para contenido generado dinámicamente: construya la cadena HTML en Python (usando motores de plantillas como Jinja2 o formato de cadena simple), luego pásela directamente al renderizador. Generar una factura, por ejemplo, significa llenar una plantilla HTML con datos de pedidos y llamar a RenderHtmlAsPdf en un solo paso.
from ironpdf import *# Apply license keyLicense.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01"# Instantiate the Chromium rendererrenderer = ChromePdfRenderer()# Convert an HTML string to a PDF documentpdf = renderer.RenderHtmlAsPdf("<h1>Hello World!</h1><p>This is an example HTML string.</p>")
from ironpdf import *
# Apply license key
License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01"
# Instantiate the Chromium renderer
renderer = ChromePdfRenderer()
# Convert an HTML string to a PDF document
pdf = renderer.RenderHtmlAsPdf("<h1>Hello World!</h1><p>This is an example HTML string.</p>")
Python
¿Cómo guardo el PDF generado?
Una vez que la cadena de HTML ha sido convertida en una instancia PdfDocument, llama a SaveAs con una ruta de archivo objetivo:
# Save the PDF to a filepdf.SaveAs("htmlstring_to_pdf.pdf")
# Save the PDF to a file
pdf.SaveAs("htmlstring_to_pdf.pdf")
Python
El archivo htmlstring_to_pdf.pdf se escribe en el directorio de trabajo actual, preservando el contenido HTML con todo el estilo CSS. Para técnicas avanzadas de renderizado de HTML, incluyendo frameworks de CSS, frameworks de JavaScript y diseños complejos, consulte el tutorial de HTML a PDF for Python.
¿Cómo Generar un PDF a partir de un Archivo HTML Local?
Cuando el contenido HTML reside en un archivo en el sistema de archivos local, RenderHtmlFileAsPdf es el método adecuado. Proporcione la ruta del archivo como el argumento:
from ironpdf import *# Apply license keyLicense.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01"# Instantiate the rendererrenderer = ChromePdfRenderer()# Create a PDF from a local HTML filepdf = renderer.RenderHtmlFileAsPdf("example.html")# Save the output PDFpdf.SaveAs("htmlfile_to_pdf.pdf")
from ironpdf import *
# Apply license key
License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01"
# Instantiate the renderer
renderer = ChromePdfRenderer()
# Create a PDF from a local HTML file
pdf = renderer.RenderHtmlFileAsPdf("example.html")
# Save the output PDF
pdf.SaveAs("htmlfile_to_pdf.pdf")
Python
IronPDF resuelve rutas relativas para archivos CSS vinculados, imágenes y scripts en relación con la ubicación del archivo HTML. El renderizador carga todos los activos asociados antes de generar el PDF, por lo que el resultado coincide con lo que mostraría un navegador. Esto lo convierte en una opción confiable para documentos con plantillas donde el HTML y los activos se mantienen como archivos en disco.
Consejos: Cuando trabaje con archivos HTML locales, asegúrese de que todos los activos vinculados (hojas de estilo, fuentes, imágenes) utilicen rutas relativas al archivo HTML. IronPDF resuelve estas rutas antes de renderizar, produciendo un PDF completo y autocontenido.
¿Cómo Crear un PDF desde una URL en Python?
Utiliza RenderUrlAsPdf para convertir una página web en vivo a PDF. Proporcione la URL completa como el argumento:
from ironpdf import *# Apply license keyLicense.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01"# Instantiate the rendererrenderer = ChromePdfRenderer()# Convert a web page to PDFpdf = renderer.RenderUrlAsPdf("https://ironpdf.com")# Save the output PDFpdf.SaveAs("url.pdf")
from ironpdf import *
# Apply license key
License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01"
# Instantiate the renderer
renderer = ChromePdfRenderer()
# Convert a web page to PDF
pdf = renderer.RenderUrlAsPdf("https://ironpdf.com")
# Save the output PDF
pdf.SaveAs("url.pdf")
Python
La función de renderización de URLs admite tecnologías web modernas, incluyendo contenido JavaScript dinámico, llamadas AJAX, y diseños responsivos. IronPDF espera que la página se cargue completamente, incluyendo la ejecución de JavaScript, antes de capturar el PDF, por lo que todo contenido dinámico se captura con precisión.
¿Dónde puedo encontrar más ejemplos de conversión de URL?
Hay ejemplos adicionales para convertir páginas web en PDF disponibles en la página de ejemplo de código de URL a PDF. Para páginas web que requieren autenticación, consulte la guía sobre inicios de sesión en sitios web y sistemas.
¿Cómo puedo personalizar las opciones de formato de un PDF?
La propiedad RenderingOptions de ChromePdfRenderer controla el formato y diseño del PDF de salida. Las configuraciones comunes incluyen tamaño de página, orientación de página, tamaño de margen y nivel de zoom.
¿Qué Configuraciones de Formato Están Disponibles?
La propiedad RenderingOptions expone configuraciones para el tamaño del papel, orientación de la página, márgenes y zoom. La tabla a continuación enumera las propiedades más utilizadas:
Propiedades de RenderingOptions comúnmente utilizadas para formato de PDF en Python
Consejos: Para agregar encabezados y pies de página con números de página, utiliza las propiedades HtmlHeader y HtmlFooter en RenderingOptions. El ejemplo de encabezados y pies de página demuestra la sintaxis completa.
¿Cómo proteger archivos PDF con contraseñas?
Para proteger con contraseña un PDF, configura la propiedad UserPassword en el atributo SecuritySettings del objeto PdfDocument. También se puede establecer una contraseña de propietario para restringir permisos de edición separadamente del acceso de lectura.
Considere proteger el PDF creado en el ejemplo de URL:
from ironpdf import *License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01"renderer = ChromePdfRenderer()pdf = renderer.RenderUrlAsPdf("https://ironpdf.com")# Set user password (required to open the PDF)pdf.SecuritySettings.UserPassword = "sharable"# Set owner password (controls permissions)pdf.SecuritySettings.OwnerPassword = "admin123"# Configure document permissionspdf.SecuritySettings.AllowUserPrinting = Truepdf.SecuritySettings.AllowUserCopyPasteContent = False# Save the password-protected PDFpdf.SaveAs("protected.pdf")
from ironpdf import *
License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01"
renderer = ChromePdfRenderer()
pdf = renderer.RenderUrlAsPdf("https://ironpdf.com")
# Set user password (required to open the PDF)
pdf.SecuritySettings.UserPassword = "sharable"
# Set owner password (controls permissions)
pdf.SecuritySettings.OwnerPassword = "admin123"
# Configure document permissions
pdf.SecuritySettings.AllowUserPrinting = True
pdf.SecuritySettings.AllowUserCopyPasteContent = False
# Save the password-protected PDF
pdf.SaveAs("protected.pdf")
Python
¿Cómo funciona en la práctica la protección por contraseña?
Abrir protected.pdf en cualquier visor de PDF solicita la contraseña del usuario antes de mostrar el contenido del documento. La contraseña del propietario otorga acceso administrativo para modificar la configuración de seguridad. Configurar AllowUserCopyPasteContent = False previene que los lectores copien texto del PDF mientras aún permite la impresión.
El ejemplo combinado a continuación demuestra los cuatro flujos de trabajo de creación de PDF en un solo script de Python:
from ironpdf import *# Apply your license keyLicense.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01"# --- HTML string to PDF ---renderer = ChromePdfRenderer()pdf = renderer.RenderHtmlAsPdf("<h1>Hello World!</h1><p>This is an example HTML string.</p>")pdf.SaveAs("htmlstring_to_pdf.pdf")# --- Local HTML file to PDF ---renderer = ChromePdfRenderer()pdf = renderer.RenderHtmlFileAsPdf("example.html")pdf.SaveAs("htmlfile_to_pdf.pdf")# --- URL to PDF ---renderer = ChromePdfRenderer()pdf = renderer.RenderUrlAsPdf("https://ironpdf.com")pdf.SaveAs("url.pdf")# --- Password-protected PDF ---pdf.SecuritySettings.UserPassword = "sharable"pdf.SecuritySettings.OwnerPassword = "admin123"pdf.SecuritySettings.AllowUserPrinting = Truepdf.SecuritySettings.AllowUserCopyPasteContent = Falsepdf.SaveAs("protected.pdf")
from ironpdf import *
# Apply your license key
License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01"
# --- HTML string to PDF ---
renderer = ChromePdfRenderer()
pdf = renderer.RenderHtmlAsPdf("<h1>Hello World!</h1><p>This is an example HTML string.</p>")
pdf.SaveAs("htmlstring_to_pdf.pdf")
# --- Local HTML file to PDF ---
renderer = ChromePdfRenderer()
pdf = renderer.RenderHtmlFileAsPdf("example.html")
pdf.SaveAs("htmlfile_to_pdf.pdf")
# --- URL to PDF ---
renderer = ChromePdfRenderer()
pdf = renderer.RenderUrlAsPdf("https://ironpdf.com")
pdf.SaveAs("url.pdf")
# --- Password-protected PDF ---
pdf.SecuritySettings.UserPassword = "sharable"
pdf.SecuritySettings.OwnerPassword = "admin123"
pdf.SecuritySettings.AllowUserPrinting = True
pdf.SecuritySettings.AllowUserCopyPasteContent = False
pdf.SaveAs("protected.pdf")
Python
IronPDF renderiza todas las imágenes y texto con precisión mientras preserva el formato. Los elementos interactivos como los botones permanecen funcionales y los cuadros de texto conservan su editabilidad dentro del PDF generado.
¿Cuáles son los Próximos Pasos para Crear PDFs en Python?
Esta guía cubrió los tres métodos principales de creación de PDF en IronPDF for Python: cadena HTML, archivo HTML local y URL, junto con la protección con contraseña para asegurar los archivos de salida. Cada método produce un objeto PdfDocument que puede ser procesado: estampado, combinado, dividido o encriptado antes de guardar.
¿Listo para extender estos flujos de trabajo? Los siguientes recursos demuestran pasos prácticos siguientes:
Ejecuta pip install ironpdf en tu terminal. También necesitas tener instalado Python 3.x y el SDK de .NET 6.0, ya que IronPDF for Python se ejecuta sobre el motor IronPDF .NET.
¿Cuál es la forma más sencilla de convertir HTML a PDF en Python?
Crea una instancia de ChromePdfRenderer, luego llama a renderer.RenderHtmlAsPdf('<h1>Hola</h1>'). El método acepta cualquier cadena HTML válida y devuelve un objeto PdfDocument que puedes guardar con pdf.SaveAs('output.pdf').
¿Puedo generar un PDF desde un archivo HTML local?
Sí. Usa renderer.RenderHtmlFileAsPdf('path/to/file.html'). IronPDF resuelve el CSS enlazado, imágenes, y scripts relativos a la ubicación del archivo HTML antes de renderizar.
¿Cómo convierto una URL de página web en vivo a PDF?
Llama a renderer.RenderUrlAsPdf('https://example.com'). IronPDF espera que la página completa cargue, incluyendo la ejecución de JavaScript, antes de capturar el PDF.
¿Cómo protejo con contraseña un PDF generado?
Establece pdf.SecuritySettings.UserPassword para requerir una contraseña al abrir el archivo, y pdf.SecuritySettings.OwnerPassword para restringir los permisos de edición. Llama a pdf.SaveAs después para escribir el archivo protegido.
¿Puedo controlar el tamaño de página y los márgenes de los PDFs generados?
Sí. Configura renderer.RenderingOptions.PaperSize (por ejemplo, PdfPaperSize.A4) y establece MarginTop, MarginBottom, MarginLeft, y MarginRight en milímetros antes de llamar a un método de renderización.
¿Soporta IronPDF ejecución de JavaScript en la conversión de HTML a PDF?
Sí. IronPDF usa un motor de renderización basado en Chromium que ejecuta JavaScript, procesa llamadas AJAX, y aplica CSS antes de generar el PDF, por lo que el contenido dinámico se captura con precisión.
¿Puedo fusionar o comprimir PDFs después de crearlos?
Sí. IronPDF ofrece métodos separados para fusionar múltiples objetos PdfDocument en un archivo y comprimir PDFs existentes para reducir el tamaño del archivo. Ambas operaciones funcionan en el objeto PdfDocument devuelto por cualquier método de renderizado.
What are the main methods for creating PDFs in IronPDF?
The main methods for creating PDFs in IronPDF include converting an HTML string, a local HTML file, a live URL, and securing the PDF with passwords. Each method is designed to handle different types of content transformations.
How can I ensure that my generated PDFs are not watermarked when using IronPDF?
You need to configure a valid license key before generating PDFs to ensure they are not watermarked. Assign the license key to the `LicenseKey` attribute in your script to remove the trial watermark.
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 estructurados y visualmente atractivos.