PDF a MemoryStream C

Chaknith Bin
Chaknith Bin
25 de enero, 2023
Actualizado 12 de enero, 2025
Compartir:
This article was translated from English: Does it need improvement?
Translated
View the article in English

Podemos exportar PDF a MemoryStream en C# .NET sin siquiera tocar el sistema de archivos. Esto es posible a través del objeto MemoryStream presente dentro del espacio de nombres System.IO .NET.

Comience con IronPDF

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

Primer Paso:
green arrow pointer



Guardar un PDF en la memoria

Un documento IronPdf.PdfDocument puede guardarse directamente en la memoria de dos maneras:

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

var renderer = new ChromePdfRenderer();

// Convert the URL into PDF
PdfDocument pdf = renderer.RenderUrlAsPdf("https://ironpdf.com/");

// Export PDF as Stream
MemoryStream pdfAsStream = pdf.Stream;

// Export PDF as Byte Array
byte[] pdfAsByte = pdf.BinaryData;
Imports IronPdf
Imports System.IO

Private renderer = New ChromePdfRenderer()

' Convert the URL into PDF
Private pdf As PdfDocument = renderer.RenderUrlAsPdf("https://ironpdf.com/")

' Export PDF as Stream
Private pdfAsStream As MemoryStream = pdf.Stream

' Export PDF as Byte Array
Private pdfAsByte() As Byte = pdf.BinaryData
$vbLabelText   $csharpLabel

Servir un PDF a la Web desde la memoria

Para servir o exportar un PDF en la web, necesitas enviar el archivo PDF como datos binarios en lugar de HTML. Puedes obtener más información en esta guía sobre cómo exportar y guardar documentos PDF en C#.

He aquí un ejemplo rápido para MVC y ASP.NET:

Exportar un PDF con MVC

El flujo del fragmento de código siguiente son los datos binarios recuperados de IronPDF. El tipo MIME de la respuesta es 'application/pdf', especificando el nombre del archivo como 'download.pdf'.

return new FileStreamResult(pdfAsStream, "application/pdf")
{
    FileDownloadName = "download.pdf"
};
return new FileStreamResult(pdfAsStream, "application/pdf")
{
    FileDownloadName = "download.pdf"
};
Return New FileStreamResult(pdfAsStream, "application/pdf") With {.FileDownloadName = "download.pdf"}
$vbLabelText   $csharpLabel

Exportar un PDF con ASP.NET

Al igual que en el ejemplo anterior, el flujo son los datos binarios recuperados de IronPDF. A continuación, la respuesta se configura y se descarga para garantizar que se envía al cliente.

Response.Clear();

Response.ContentType = "application/octet-stream";

Context.Response.OutputStream.Write(pdfAsStream, 0, stream.Length);

Response.Flush();
Response.Clear();

Response.ContentType = "application/octet-stream";

Context.Response.OutputStream.Write(pdfAsStream, 0, stream.Length);

Response.Flush();
Response.Clear()

Response.ContentType = "application/octet-stream"

Context.Response.OutputStream.Write(pdfAsStream, 0, stream.Length)

Response.Flush()
$vbLabelText   $csharpLabel
Chaknith Bin
Ingeniero de software
Chaknith trabaja en IronXL e IronBarcode. Tiene una gran experiencia en C# y .NET, ayudando a mejorar el software y a apoyar a los clientes. Sus conocimientos de las interacciones con los usuarios contribuyen a mejorar los productos, la documentación y la experiencia general.