Cómo Linealizar PDFs Usando C## con IronPDF

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

Los PDF linealizados permiten la visualización instantánea de la primera página durante la descarga, lo que mejora notablemente la experiencia del usuario con documentos de gran tamaño. IronPDF proporciona métodos sencillos para crear y verificar PDF linealizados en C#, optimizando sus documentos para una rápida visualización en la web.

Un PDF linearizado, también conocido como "Vista Web Rápida" o "PDF optimizado para la web", se reorganiza estructuralmente para la transmisión por internet. Esto permite que un visor compatible muestre la primera página de un documento casi al instante, mucho antes de que haya terminado de descargarse el archivo completo.

En aplicaciones críticas para la misión o sensibles al tiempo, esta función es especialmente útil. Elimina los tiempos de carga frustrantes para documentos grandes, especialmente en redes lentas o móviles, permitiendo a los usuarios interactuar con el contenido de inmediato. Esto facilita la toma de decisiones más rápida y mejora la productividad en entornos profesionales. Cuando se combinan con las funciones de optimización del rendimiento de IronPDF, los PDF linealizados ofrecen una experiencia de visualización excepcional.

En este artículo de instrucciones, exploraremos las opciones que IronPDF ofrece a los desarrolladores para exportar sus documentos como PDF linealizados.

Inicio rápido: Lineariza tu PDF para una visualización web más rápida

Comienza con IronPDF para linearizar tus PDFs sin esfuerzo. Este sencillo ejemplo de código muestra cómo optimizar un PDF para que se cargue más rápidamente en los navegadores web mediante el método LinearizePdf de IronPDF. Mejora la experiencia del usuario permitiendo que las páginas se muestren mientras se cargan, en lugar de esperar a que se descargue todo el documento. Sigue los pasos a continuación para optimizar tus PDFs y hacerlos más eficientes para compartir en línea.

Nuget IconEmpieza a crear PDF con NuGet ahora:

  1. Instalar IronPDF con el gestor de paquetes NuGet

    PM > Install-Package IronPdf

  2. Copie y ejecute este fragmento de código.

    var pdf = IronPdf.PdfDocument.FromFile("input.pdf");
    pdf.SaveAsLinearized(pdf.BinaryData, "linearized.pdf");
  3. Despliegue para probar en su entorno real

    Empieza a utilizar IronPDF en tu proyecto hoy mismo con una prueba gratuita
    arrow pointer


¿Cómo se guarda un PDF en formato lineal?

Guardar un documento como un PDF linearizado con IronPDF es un proceso rápido y sencillo. Antes de empezar, asegúrese de haber instalado IronPDF a través de NuGet o mediante uno de los otros métodos de instalación disponibles.

En este ejemplo, convertiremos una cadena HTML en un PDF utilizando RenderHtmlAsPdf. Para documentos HTML más complejos, quizá quieras explorar las funciones de conversión de HTML a PDF de IronPDF. Después, guardaremos el objeto PdfDocument como un PDF linealizado utilizando el método de instancia SaveAsLinearized. Este método toma un argumento de cadena para la ruta del archivo de salida.

:path=/static-assets/pdf/content-code-examples/how-to/linearize-pdf.cs
using IronPdf;

// Instantiate Renderer
var renderer = new ChromePdfRenderer();

// Create a PDF from an HTML string using C#
var pdf = renderer.RenderHtmlAsPdf("<h1>Pdf Bytes</h1>");

// Get the PDF binary data
var pdfBytes = pdf.BinaryData;

// Save the PDF binary data as a linearized PDF file
PdfDocument.SaveAsLinearized(pdfBytes, "linearize-from-bytes.pdf");
Imports IronPdf

' Instantiate Renderer
Dim renderer As New ChromePdfRenderer()

' Create a PDF from an HTML string using VB.NET
Dim pdf = renderer.RenderHtmlAsPdf("<h1>Pdf Bytes</h1>")

' Get the PDF binary data
Dim pdfBytes = pdf.BinaryData

' Save the PDF binary data as a linearized PDF file
PdfDocument.SaveAsLinearized(pdfBytes, "linearize-from-bytes.pdf")
$vbLabelText   $csharpLabel

El proceso de linealización reestructura el formato interno del PDF, colocando la información crítica al principio del archivo. Esto permite la descarga y renderización progresivas, lo que resulta especialmente beneficioso cuando se sirven PDF a través de aplicaciones web.

¿Qué aspecto tiene el resultado?

Diálogo de propiedades de PDF en el que aparece resaltado el ajuste Vista web rápida, que muestra la optimización de PDF linealizado

¿Cómo guardar bytes de PDF como linealizados?

Además de guardar un objeto PdfDocument directamente, IronPDF también permite a los usuarios convertir un arreglo de bytes de PDF en un PDF linearizado. Esta flexibilidad es especialmente útil cuando se trabaja con PDF almacenados en bases de datos o cuando se procesan PDF en aplicaciones que consumen mucha memoria. Para obtener más información sobre cómo trabajar con archivos PDF en memoria, consulte nuestra guía sobre carga de archivos PDF desde flujos de memoria.

En este ejemplo, mostraremos cómo convertir una cadena HTML en un objeto PdfDocument, obtener su matriz de bytes y, a continuación, guardar esos datos como un PDF linealizado. Este método SaveAsLinearized también acepta un tercer parámetro de cadena opcional para una contraseña si el documento de origen está encriptado.

:path=/static-assets/pdf/content-code-examples/how-to/linearize-pdf.cs
using IronPdf;

// Instantiate Renderer
var renderer = new ChromePdfRenderer();

// Create a PDF from an HTML string using C#
var pdf = renderer.RenderHtmlAsPdf("<h1>Pdf Bytes</h1>");

// Get the PDF binary data
var pdfBytes = pdf.BinaryData;

// Save the PDF binary data as a linearized PDF file
PdfDocument.SaveAsLinearized(pdfBytes, "linearize-from-bytes.pdf");
Imports IronPdf

' Instantiate Renderer
Dim renderer As New ChromePdfRenderer()

' Create a PDF from an HTML string using VB.NET
Dim pdf = renderer.RenderHtmlAsPdf("<h1>Pdf Bytes</h1>")

' Get the PDF binary data
Dim pdfBytes = pdf.BinaryData

' Save the PDF binary data as a linearized PDF file
PdfDocument.SaveAsLinearized(pdfBytes, "linearize-from-bytes.pdf")
$vbLabelText   $csharpLabel

¿Qué aspecto tiene el resultado?

Este es el archivo que produjo el código:

¿Cómo guardar un MemoryStream como linealizado?

El método SaveAsLinearized también puede aceptar objetos Stream como entrada, proporcionando la máxima flexibilidad para diversas arquitecturas de aplicación. Esta capacidad es esencial cuando se integra con servicios en la nube o cuando se trabaja con archivos temporales. Más información sobre exportación de PDF a memoria para escenarios avanzados.

En este ejemplo, convertiremos un objeto PdfDocument en una matriz de bytes, lo escribiremos en un MemoryStream y, a continuación, guardaremos el flujo como un PDF linealizado para demostrar esta capacidad.

:path=/static-assets/pdf/content-code-examples/how-to/linearize-pdf-stream.cs
using IronPdf;
using System.IO;

// Instantiate Renderer
var renderer = new ChromePdfRenderer();

// Create a PDF from an HTML string using C#
var pdf = renderer.RenderHtmlAsPdf("<h1>Memory Stream</h1>");

// Get the PDF binary data
var pdfBytes = pdf.BinaryData;

// Transform PDF bytes to a MemoryStream
MemoryStream memoryStream = new MemoryStream(pdfBytes);

// Save the MemoryStream as a linearized PDF
PdfDocument.SaveAsLinearized(memoryStream, "linearize-stream.pdf");
Imports IronPdf
Imports System.IO

' Instantiate Renderer
Dim renderer As New ChromePdfRenderer()

' Create a PDF from an HTML string using VB.NET
Dim pdf As PdfDocument = renderer.RenderHtmlAsPdf("<h1>Memory Stream</h1>")

' Get the PDF binary data
Dim pdfBytes As Byte() = pdf.BinaryData

' Transform PDF bytes to a MemoryStream
Dim memoryStream As New MemoryStream(pdfBytes)

' Save the MemoryStream as a linearized PDF
PdfDocument.SaveAsLinearized(memoryStream, "linearize-stream.pdf")
$vbLabelText   $csharpLabel

Este enfoque es especialmente útil cuando se trabaja con archivos temporales o cuando se necesita procesar PDF sin escribir archivos intermedios en el disco, lo que mejora tanto el rendimiento como la seguridad.

Este es el archivo que produjo el código:


¿Cómo puedo comprobar si un PDF está linealizado?

Además de revisar las propiedades del documento en un visor PDF, como Adobe Acrobat, para ver si un PDF está linearizado, IronPDF también proporciona una forma de verificar esto programáticamente con el método IsLinearized. El método toma un parámetro de cadena para la ruta del archivo y un segundo parámetro de cadena opcional para la contraseña si el PDF está encriptado. Esta capacidad de verificación es esencial para garantizar la calidad y puede integrarse en flujos de trabajo de pruebas automatizadas.

En este ejemplo, utilizaremos los archivos de salida de los tres ejemplos anteriores para comprobar si están linealizados, e incluiremos un cuarto PDF no linealizado para mostrar el comportamiento del método. Para conocer técnicas más avanzadas de manipulación y verificación de PDF, explore el completo conjunto de funciones de IronPDF.

:path=/static-assets/pdf/content-code-examples/how-to/linearize-pdf-test.cs
using IronPdf;
using System;

// First example Linearized PDF
Console.WriteLine(PdfDocument.IsLinearized("linearize.pdf"));

// Second example Linearized PDF
Console.WriteLine(PdfDocument.IsLinearized("linearize-from-bytes.pdf"));

// Third example Linearized PDF
Console.WriteLine(PdfDocument.IsLinearized("linearize-stream.pdf"));

// Fourth example Non-Linearized PDF
Console.WriteLine(PdfDocument.IsLinearized("sample.pdf"));
Imports IronPdf
Imports System

' First example Linearized PDF
Console.WriteLine(PdfDocument.IsLinearized("linearize.pdf"))

' Second example Linearized PDF
Console.WriteLine(PdfDocument.IsLinearized("linearize-from-bytes.pdf"))

' Third example Linearized PDF
Console.WriteLine(PdfDocument.IsLinearized("linearize-stream.pdf"))

' Fourth example Non-Linearized PDF
Console.WriteLine(PdfDocument.IsLinearized("sample.pdf"))
$vbLabelText   $csharpLabel

¿Cuáles son los resultados?

Salida de depuración que muestra los resultados de la linealización de PDF: tres valores Verdadero y un valor Falso

Como puedes ver, los tres primeros ejemplos devuelven true, mientras que el último PDF, que no está linealizado, devuelve false.

Por favor notaNo existe ningún método para comprobar si un objeto PdfDocument está linealizado. Esto se debe a que cuando un archivo PDF se abre y se carga en un objeto, su estructura especial linearizada se pierde. Por la misma razón, no hay ningún método para devolver un PDF linearizado como un arreglo de bytes. Esta función linealizada sólo existe como archivo guardado en disco.

Prácticas recomendadas para PDF linealizados

Cuando trabaje con PDF linealizados, tenga en cuenta estas prácticas recomendadas:

  1. Consideraciones sobre el tamaño del archivo: La linealización puede aumentar ligeramente el tamaño del archivo debido al formato reestructurado. Utilice las funciones de compresión de IronPDF para optimizar el tamaño de los archivos cuando sea necesario.

  2. Despliegue web: Los PDF linealizados son ideales para aplicaciones web. Configure su servidor web para que admita solicitudes de rango de bytes para maximizar los beneficios de la linealización.

  3. Pruebas de rendimiento: Pruebe siempre los PDF linealizados en el entorno de destino. La mejora del rendimiento es más notable con archivos grandes en conexiones lentas.

  4. Compatibilidad: Aunque la mayoría de los visores de PDF modernos admiten PDF linealizados, asegúrese de la compatibilidad con los visores preferidos de sus usuarios.

Para obtener más información sobre estrategias de optimización y técnicas avanzadas de manejo de PDF, consulte Documentación sobre opciones de renderizado de IronPDF.

Preguntas Frecuentes

¿Qué es un PDF linealizado y por qué debería utilizarlo?

Un PDF linealizado, también conocido como "vista web rápida" o "PDF optimizado para la web", se reorganiza estructuralmente para la transmisión por Internet. La función de linealización de IronPDF permite a los visores compatibles mostrar la primera página casi al instante mientras se descarga el resto, lo que mejora notablemente la experiencia del usuario con documentos de gran tamaño, especialmente en redes lentas o móviles.

¿Cómo puedo crear un PDF linealizado en C#?

Con IronPDF, puede crear fácilmente un PDF linealizado utilizando el método SaveAsLinearized. Simplemente cargue o cree su documento PDF, luego llame a pdf.SaveAsLinearized(pdf.BinaryData, 'output.pdf') para guardarlo como un PDF linealizado optimizado para una rápida visualización web.

¿Puedo convertir los PDF existentes al formato linealizado?

Sí, IronPDF permite convertir PDF existentes a formato linealizado. Puede cargar cualquier PDF utilizando PdfDocument.FromFile('input.pdf') y, a continuación, utilizar el método SaveAsLinearized para guardarlo como un PDF linealizado para mejorar el rendimiento web.

¿Cómo puedo comprobar si un PDF ya está linealizado?

IronPDF proporciona la propiedad IsLinearized para comprobar si un PDF está linealizado. Simplemente cargue su documento PDF y compruebe la propiedad booleana IsLinearized para determinar si el documento ya está optimizado para una visualización web rápida.

¿Cuáles son las principales ventajas de linealizar PDF para aplicaciones web?

La linealización de PDFs con IronPDF proporciona una visualización instantánea de la primera página, elimina los frustrantes tiempos de carga de documentos de gran tamaño, permite una toma de decisiones más rápida en entornos profesionales y mejora significativamente la experiencia del usuario, especialmente en aplicaciones de misión crítica o sensibles al tiempo.

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 17,386,124 | Versión: 2026.2 recién lanzado