PDF to MemoryStream C
IronPDF'in Stream özelliği veya BinaryData özelliğini kullanarak C# .NET'te PDF'leri MemoryStream'e dönüştürün, web uygulamaları ve veri işleme için dosya sistemine erişim olmadan bellek içi PDF manipülasyonu sağlar.
C# .NET'te PDF'yi dosya sistemine dokunmadan MemoryStream'e aktarabiliriz. Bu, System.IO .NET namespace'i içinde bulunan MemoryStream nesnesi ile mümkündür. Bu yaklaşım, bulut tabanlı uygulamalar geliştirirken, Azure Blob Storage ile çalışırken veya performans optimizasyonu için bellekte PDF işlemek gerektiğinde özellikle faydalıdır.
Bellek akışlarında PDF'lerle çalışabilme yeteneği, modern web uygulamaları için, özellikle Azure'a veya dosya sistemine erişimin kısıtlanabileceği diğer bulut platformlarına dağıtım yaparken veya disk G/Ç işlemlerinin ek yükünden kaçınmak istediğinizde önemlidir. IronPDF, akış manipülasyonu için yerleşik yöntemleri ile bu süreci kolaylaştırır.
Hızlı Başlangıç: PDF'yi MemoryStream'e Dönüştür
PDF dosyalarınızı IronPDF'in API'sini kullanarak bir MemoryStream'e dönüştürün. Bu kılavuz, geliştiricilere bir PDF yükleyip .NET uygulamalarına entegre etmek üzere bir MemoryStream'e aktarmaları konusunda başlangıç yapmalarına yardımcı olur. Bu örneği izleyerek, C# ile PDF işleme yeteneklerini uygulayın.
-
NuGet Paket Yöneticisi ile https://www.nuget.org/packages/IronPdf yükleyin
PM > Install-Package IronPdf -
Bu kod parçasını kopyalayıp çalıştırın.
using var stream = new IronPdf.ChromePdfRenderer().RenderHtmlAsPdf("<h1>Hello Stream!</h1>").Stream; -
Canlı ortamınızda test etmek için dağıtın
Bugün projenizde IronPDF kullanmaya başlayın ücretsiz deneme ile
Minimal Is Akisi (5 adimda)
- MemoryStream'i PDF'ye dönüştürmek için IronPDF C# kütüphanesini indirin
- Mevcut bir PDF'yi
PdfDocumentnesnesi olarak yükleyin - URL veya bir HTML dizgisi/dosyası üzerinden yeni bir PDF oluşturun
Streamyöntemi veBinaryDataözelliği kullanarak PDF'yi bir Akışa dönüştürün- MemoryStream'i Web'e, MVC ve ASP.NET dahil olmak üzere sunun
PDF'yi Belleğe Nasıl Kaydederim?
IronPdf.PdfDocument doğrudan belleğe iki yoldan biriyle kaydedilebilir:
IronPdf.PdfDocument.StreamPDF'yi birSystem.IO.MemoryStreamolarak dışa aktarırIronPdf.PdfDocument.BinaryDataPDF'yi bir bayt dizisi (byte[]) olarak dışa aktarır
Stream veya BinaryData kullanma seçiminiz, özel kullanım senaryonuza bağlıdır. MemoryStream, akış tabanlı API'lerle çalışmanız gerektiğinde veya diğer .NET akış işlemleri ile uyumluluğu korumanız gerektiğinde idealdir. BinaryData, PDF verilerini bir veritabanında saklamanız, bellekte önbelleğe almanız veya bir ağ üzerinden iletmeniz gereken senaryolar için mükemmeldir.
: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
Mevcut PDF'lerle Çalışmak
PDF'leri bellekten yüklemeniz gerektiğinde, IronPDF, zaten bellekte olan PDF'lerle çalışmak için uygun yöntemler sağlar:
using IronPdf;
using System.IO;
// Load PDF from byte array
byte[] pdfBytes = File.ReadAllBytes("existing.pdf");
PdfDocument pdfFromBytes = PdfDocument.FromFile(new MemoryStream(pdfBytes));
// Or directly from a MemoryStream
MemoryStream memoryStream = new MemoryStream(pdfBytes);
PdfDocument pdfFromStream = PdfDocument.FromFile(memoryStream);
// Modify the PDF (add watermark, headers, etc.)
// Then export back to memory
byte[] modifiedPdfBytes = pdfFromStream.BinaryData;
using IronPdf;
using System.IO;
// Load PDF from byte array
byte[] pdfBytes = File.ReadAllBytes("existing.pdf");
PdfDocument pdfFromBytes = PdfDocument.FromFile(new MemoryStream(pdfBytes));
// Or directly from a MemoryStream
MemoryStream memoryStream = new MemoryStream(pdfBytes);
PdfDocument pdfFromStream = PdfDocument.FromFile(memoryStream);
// Modify the PDF (add watermark, headers, etc.)
// Then export back to memory
byte[] modifiedPdfBytes = pdfFromStream.BinaryData;
Imports IronPdf
Imports System.IO
' Load PDF from byte array
Dim pdfBytes As Byte() = File.ReadAllBytes("existing.pdf")
Dim pdfFromBytes As PdfDocument = PdfDocument.FromFile(New MemoryStream(pdfBytes))
' Or directly from a MemoryStream
Dim memoryStream As New MemoryStream(pdfBytes)
Dim pdfFromStream As PdfDocument = PdfDocument.FromFile(memoryStream)
' Modify the PDF (add watermark, headers, etc.)
' Then export back to memory
Dim modifiedPdfBytes As Byte() = pdfFromStream.BinaryData
İleri Düzey Bellek Akışı İşlemleri
HTML dizgilerinden PDF oluştururken veya birden fazla görüntüyü PDF'ye dönüştürürken olduğu gibi daha karmaşık senaryolar için, her şeyi bellekte tutarken birden fazla işlemi birleştirebilirsiniz:
using IronPdf;
using System.IO;
using System.Collections.Generic;
// Create multiple PDFs in memory
var renderer = new ChromePdfRenderer();
List<MemoryStream> pdfStreams = new List<MemoryStream>();
// Generate multiple PDFs from HTML
string[] htmlTemplates = {
"<h1>Report 1</h1><p>Content...</p>",
"<h1>Report 2</h1><p>Content...</p>"
};
foreach (var html in htmlTemplates)
{
PdfDocument pdf = renderer.RenderHtmlAsPdf(html);
pdfStreams.Add(pdf.Stream);
}
// Merge all PDFs in memory
PdfDocument mergedPdf = PdfDocument.Merge(pdfStreams.Select(s =>
PdfDocument.FromFile(s)).ToList());
// Get the final merged PDF as a stream
MemoryStream finalStream = mergedPdf.Stream;
using IronPdf;
using System.IO;
using System.Collections.Generic;
// Create multiple PDFs in memory
var renderer = new ChromePdfRenderer();
List<MemoryStream> pdfStreams = new List<MemoryStream>();
// Generate multiple PDFs from HTML
string[] htmlTemplates = {
"<h1>Report 1</h1><p>Content...</p>",
"<h1>Report 2</h1><p>Content...</p>"
};
foreach (var html in htmlTemplates)
{
PdfDocument pdf = renderer.RenderHtmlAsPdf(html);
pdfStreams.Add(pdf.Stream);
}
// Merge all PDFs in memory
PdfDocument mergedPdf = PdfDocument.Merge(pdfStreams.Select(s =>
PdfDocument.FromFile(s)).ToList());
// Get the final merged PDF as a stream
MemoryStream finalStream = mergedPdf.Stream;
Imports IronPdf
Imports System.IO
Imports System.Collections.Generic
Imports System.Linq
' Create multiple PDFs in memory
Dim renderer As New ChromePdfRenderer()
Dim pdfStreams As New List(Of MemoryStream)()
' Generate multiple PDFs from HTML
Dim htmlTemplates As String() = {
"<h1>Report 1</h1><p>Content...</p>",
"<h1>Report 2</h1><p>Content...</p>"
}
For Each html As String In htmlTemplates
Dim pdf As PdfDocument = renderer.RenderHtmlAsPdf(html)
pdfStreams.Add(pdf.Stream)
Next
' Merge all PDFs in memory
Dim mergedPdf As PdfDocument = PdfDocument.Merge(pdfStreams.Select(Function(s) PdfDocument.FromFile(s)).ToList())
' Get the final merged PDF as a stream
Dim finalStream As MemoryStream = mergedPdf.Stream
Bellekten Web'e PDF Nasıl Sunarım?
Web'de bir PDF sunmak veya dışa aktarmak için, PDF dosyasını HTML yerine ikili veri olarak göndermeniz gerekir. Daha fazla bilgiyi C#'ta PDF belgelerini dışa aktarma ve kaydetme hakkında bu kılavuzda bulabilirsiniz. Özellikle ASP.NET MVC ortamlarında web uygulamalarıyla çalışırken, bellek akışlarından PDF sunmak, daha iyi performans ve azaltılmış sunucu disk kullanımı gibi birçok avantaj sunar.
İşte MVC ve ASP.NET için hızlı bir örnek:
MVC ile PDF Nasıl Dışa Aktarırım?
Kod parçasındaki akış, IronPDF'den elde edilen ikili veridir. Yanıtın MIME türü 'application/pdf' olup, dosya adını 'download.pdf' olarak belirler. Bu yaklaşım modern MVC uygulamalarıyla sorunsuz bir şekilde çalışır ve mevcut denetleyicilerinize entegre edilebilir.
using System.Web.Mvc;
using System.IO;
public ActionResult ExportPdf()
{
// Assume pdfAsStream is a MemoryStream containing PDF data
MemoryStream pdfAsStream = new MemoryStream();
return new FileStreamResult(pdfAsStream, "application/pdf")
{
FileDownloadName = "download.pdf"
};
}
using System.Web.Mvc;
using System.IO;
public ActionResult ExportPdf()
{
// Assume pdfAsStream is a MemoryStream containing PDF data
MemoryStream pdfAsStream = new MemoryStream();
return new FileStreamResult(pdfAsStream, "application/pdf")
{
FileDownloadName = "download.pdf"
};
}
Imports System.Web.Mvc
Imports System.IO
Public Function ExportPdf() As ActionResult
' Assume pdfAsStream is a MemoryStream containing PDF data
Dim pdfAsStream As New MemoryStream()
Return New FileStreamResult(pdfAsStream, "application/pdf") With {.FileDownloadName = "download.pdf"}
End Function
Daha gelişmiş senaryolar için, Razor Sayfaları ile çalıştığınızda veya özel başlıklar uygulamanız gerektiğinde:
using System.Web.Mvc;
using IronPdf;
public ActionResult GenerateReport(string reportType)
{
var renderer = new ChromePdfRenderer();
// Configure rendering options for better output
renderer.RenderingOptions.MarginTop = 50;
renderer.RenderingOptions.MarginBottom = 50;
renderer.RenderingOptions.PaperOrientation = PdfPaperOrientation.Portrait;
// Generate PDF based on report type
string htmlContent = GetReportHtml(reportType);
PdfDocument pdf = renderer.RenderHtmlAsPdf(htmlContent);
// Add metadata
pdf.MetaData.Author = "Your Application";
pdf.MetaData.Title = $"{reportType} Report";
// Return as downloadable file
return File(pdf.Stream, "application/pdf",
$"{reportType}_Report_{DateTime.Now:yyyyMMdd}.pdf");
}
using System.Web.Mvc;
using IronPdf;
public ActionResult GenerateReport(string reportType)
{
var renderer = new ChromePdfRenderer();
// Configure rendering options for better output
renderer.RenderingOptions.MarginTop = 50;
renderer.RenderingOptions.MarginBottom = 50;
renderer.RenderingOptions.PaperOrientation = PdfPaperOrientation.Portrait;
// Generate PDF based on report type
string htmlContent = GetReportHtml(reportType);
PdfDocument pdf = renderer.RenderHtmlAsPdf(htmlContent);
// Add metadata
pdf.MetaData.Author = "Your Application";
pdf.MetaData.Title = $"{reportType} Report";
// Return as downloadable file
return File(pdf.Stream, "application/pdf",
$"{reportType}_Report_{DateTime.Now:yyyyMMdd}.pdf");
}
Imports System.Web.Mvc
Imports IronPdf
Public Function GenerateReport(reportType As String) As ActionResult
Dim renderer As New ChromePdfRenderer()
' Configure rendering options for better output
renderer.RenderingOptions.MarginTop = 50
renderer.RenderingOptions.MarginBottom = 50
renderer.RenderingOptions.PaperOrientation = PdfPaperOrientation.Portrait
' Generate PDF based on report type
Dim htmlContent As String = GetReportHtml(reportType)
Dim pdf As PdfDocument = renderer.RenderHtmlAsPdf(htmlContent)
' Add metadata
pdf.MetaData.Author = "Your Application"
pdf.MetaData.Title = $"{reportType} Report"
' Return as downloadable file
Return File(pdf.Stream, "application/pdf", $"{reportType}_Report_{DateTime.Now:yyyyMMdd}.pdf")
End Function
ASP.NET ile PDF Nasıl Dışa Aktarırım?
Yukarıdaki örneğe benzer şekilde, akış IronPDF'den elde edilen ikili veridir. Yanıt, daha sonra müşteriye gönderildiğinden emin olmak için yapılandırılır ve temizlenir. Bu yöntem, ASP.NET Web Forms uygulamaları için veya HTTP yanıtı üzerinde daha fazla kontrol gerektiğinde özellikle kullanışlıdır.
using System.IO;
using System.Web;
public class PdfHandler : IHttpHandler
{
public void ProcessRequest(HttpContext context)
{
// Assume pdfAsStream is a MemoryStream containing PDF data
MemoryStream pdfAsStream = new MemoryStream();
context.Response.Clear();
context.Response.ContentType = "application/octet-stream";
context.Response.OutputStream.Write(pdfAsStream.ToArray(), 0, (int)pdfAsStream.Length);
context.Response.Flush();
}
public bool IsReusable => false;
}
using System.IO;
using System.Web;
public class PdfHandler : IHttpHandler
{
public void ProcessRequest(HttpContext context)
{
// Assume pdfAsStream is a MemoryStream containing PDF data
MemoryStream pdfAsStream = new MemoryStream();
context.Response.Clear();
context.Response.ContentType = "application/octet-stream";
context.Response.OutputStream.Write(pdfAsStream.ToArray(), 0, (int)pdfAsStream.Length);
context.Response.Flush();
}
public bool IsReusable => false;
}
Imports System.IO
Imports System.Web
Public Class PdfHandler
Implements IHttpHandler
Public Sub ProcessRequest(ByVal context As HttpContext) Implements IHttpHandler.ProcessRequest
' Assume pdfAsStream is a MemoryStream containing PDF data
Dim pdfAsStream As New MemoryStream()
context.Response.Clear()
context.Response.ContentType = "application/octet-stream"
context.Response.OutputStream.Write(pdfAsStream.ToArray(), 0, CInt(pdfAsStream.Length))
context.Response.Flush()
End Sub
Public ReadOnly Property IsReusable() As Boolean Implements IHttpHandler.IsReusable
Get
Return False
End Get
End Property
End Class
Modern ASP.NET Core uygulamaları için süreç daha da kolaylaştırılmıştır:
using Microsoft.AspNetCore.Mvc;
using IronPdf;
using System.Threading.Tasks;
[ApiController]
[Route("api/[controller]")]
public class PdfController : ControllerBase
{
[HttpGet("generate")]
public async Task<IActionResult> GeneratePdf()
{
var renderer = new ChromePdfRenderer();
// Render HTML to PDF asynchronously for better performance
PdfDocument pdf = await renderer.RenderHtmlAsPdfAsync("<h1>Dynamic PDF</h1>");
// Return PDF as file stream
return File(pdf.Stream, "application/pdf", "generated.pdf");
}
[HttpPost("convert")]
public async Task<IActionResult> ConvertHtmlToPdf([FromBody] string htmlContent)
{
var renderer = new ChromePdfRenderer();
// Apply custom styling and rendering options
renderer.RenderingOptions.CssMediaType = PdfCssMediaType.Print;
renderer.RenderingOptions.PrintHtmlBackgrounds = true;
PdfDocument pdf = await renderer.RenderHtmlAsPdfAsync(htmlContent);
// Stream directly to response without saving to disk
return File(pdf.Stream, "application/pdf");
}
}
using Microsoft.AspNetCore.Mvc;
using IronPdf;
using System.Threading.Tasks;
[ApiController]
[Route("api/[controller]")]
public class PdfController : ControllerBase
{
[HttpGet("generate")]
public async Task<IActionResult> GeneratePdf()
{
var renderer = new ChromePdfRenderer();
// Render HTML to PDF asynchronously for better performance
PdfDocument pdf = await renderer.RenderHtmlAsPdfAsync("<h1>Dynamic PDF</h1>");
// Return PDF as file stream
return File(pdf.Stream, "application/pdf", "generated.pdf");
}
[HttpPost("convert")]
public async Task<IActionResult> ConvertHtmlToPdf([FromBody] string htmlContent)
{
var renderer = new ChromePdfRenderer();
// Apply custom styling and rendering options
renderer.RenderingOptions.CssMediaType = PdfCssMediaType.Print;
renderer.RenderingOptions.PrintHtmlBackgrounds = true;
PdfDocument pdf = await renderer.RenderHtmlAsPdfAsync(htmlContent);
// Stream directly to response without saving to disk
return File(pdf.Stream, "application/pdf");
}
}
Imports Microsoft.AspNetCore.Mvc
Imports IronPdf
Imports System.Threading.Tasks
<ApiController>
<Route("api/[controller]")>
Public Class PdfController
Inherits ControllerBase
<HttpGet("generate")>
Public Async Function GeneratePdf() As Task(Of IActionResult)
Dim renderer As New ChromePdfRenderer()
' Render HTML to PDF asynchronously for better performance
Dim pdf As PdfDocument = Await renderer.RenderHtmlAsPdfAsync("<h1>Dynamic PDF</h1>")
' Return PDF as file stream
Return File(pdf.Stream, "application/pdf", "generated.pdf")
End Function
<HttpPost("convert")>
Public Async Function ConvertHtmlToPdf(<FromBody> htmlContent As String) As Task(Of IActionResult)
Dim renderer As New ChromePdfRenderer()
' Apply custom styling and rendering options
renderer.RenderingOptions.CssMediaType = PdfCssMediaType.Print
renderer.RenderingOptions.PrintHtmlBackgrounds = True
Dim pdf As PdfDocument = Await renderer.RenderHtmlAsPdfAsync(htmlContent)
' Stream directly to response without saving to disk
Return File(pdf.Stream, "application/pdf")
End Function
End Class
Bellek Akışı Yönetimi için En İyi Uygulamalar
Web uygulamalarında PDF bellek akışlarıyla çalışırken, bu en iyi uygulamaları dikkate alın:
-
Kaynakları düzgün şekilde atın: Her zaman
usingifadelerini kullanın veya bellek sızıntılarını önlemek içinMemoryStreamnesnelerini açıkça atın. -
Asenkron işlemler: Özellikle asenkron işlemlerle çalışırken daha iyi ölçeklenebilirlik için, uygun olduğunda asenkron yöntemler kullanın.
-
Akış boyutu dikkate alın: Büyük PDF'ler için, tüm PDF'yi bir kerede belleğe yüklemekten kaçınmak için akış yanıtlarını uygulamayı düşünün.
- Önbellekleme: Sık erişilen PDF'ler için, bayt dizisini bellekte önbelleğe almayı veya dağıtılmış bir önbellek kullanmayı düşünün.
// Example of proper resource management with caching
public class PdfService
{
private readonly IMemoryCache _cache;
private readonly ChromePdfRenderer _renderer;
public PdfService(IMemoryCache cache)
{
_cache = cache;
_renderer = new ChromePdfRenderer();
}
public async Task<byte[]> GetCachedPdfAsync(string cacheKey, string htmlContent)
{
// Try to get from cache first
if (_cache.TryGetValue(cacheKey, out byte[] cachedPdf))
{
return cachedPdf;
}
// Generate PDF if not in cache
using (var pdf = await _renderer.RenderHtmlAsPdfAsync(htmlContent))
{
byte[] pdfBytes = pdf.BinaryData;
// Cache for 10 minutes
_cache.Set(cacheKey, pdfBytes, TimeSpan.FromMinutes(10));
return pdfBytes;
}
}
}
// Example of proper resource management with caching
public class PdfService
{
private readonly IMemoryCache _cache;
private readonly ChromePdfRenderer _renderer;
public PdfService(IMemoryCache cache)
{
_cache = cache;
_renderer = new ChromePdfRenderer();
}
public async Task<byte[]> GetCachedPdfAsync(string cacheKey, string htmlContent)
{
// Try to get from cache first
if (_cache.TryGetValue(cacheKey, out byte[] cachedPdf))
{
return cachedPdf;
}
// Generate PDF if not in cache
using (var pdf = await _renderer.RenderHtmlAsPdfAsync(htmlContent))
{
byte[] pdfBytes = pdf.BinaryData;
// Cache for 10 minutes
_cache.Set(cacheKey, pdfBytes, TimeSpan.FromMinutes(10));
return pdfBytes;
}
}
}
Imports System
Imports System.Threading.Tasks
' Example of proper resource management with caching
Public Class PdfService
Private ReadOnly _cache As IMemoryCache
Private ReadOnly _renderer As ChromePdfRenderer
Public Sub New(cache As IMemoryCache)
_cache = cache
_renderer = New ChromePdfRenderer()
End Sub
Public Async Function GetCachedPdfAsync(cacheKey As String, htmlContent As String) As Task(Of Byte())
' Try to get from cache first
Dim cachedPdf As Byte() = Nothing
If _cache.TryGetValue(cacheKey, cachedPdf) Then
Return cachedPdf
End If
' Generate PDF if not in cache
Using pdf = Await _renderer.RenderHtmlAsPdfAsync(htmlContent)
Dim pdfBytes As Byte() = pdf.BinaryData
' Cache for 10 minutes
_cache.Set(cacheKey, pdfBytes, TimeSpan.FromMinutes(10))
Return pdfBytes
End Using
End Function
End Class
Bu desenleri izleyerek ve IronPDF'in bellek akışı yeteneklerini kullanarak, dosya sistemi işlemlerine güvenmeden PDF oluşturma ve teslim etme işlemlerini ele alan verimli ve ölçeklenebilir web uygulamaları oluşturabilirsiniz. Bu yaklaşım, bulut platformlarına, örneğin AWS'ye dağıtımlar veya kapsülleştirilmiş ortamlarda çalışırken özellikle yararlıdır.
Sıkça Sorulan Sorular
C#'ta PDF'yi MemoryStream'e nasıl dönüştürebilirim?
IronPDF, PDF'leri belleğe dönüştürmek için iki ana yol sunar: System.IO.MemoryStream olarak dışa aktarmak için Stream özelliğini kullanmak ya da byte dizisi olarak dışa aktarmak için BinaryData özelliğini kullanmak. Sadece bir PdfDocument oluşturun veya yükleyin ve bu özelliklere erişin, böylece dosya sistemiyle hiç etkileşime geçmeden bellek üzerindeki PDF'lerle çalışabilirsiniz.
Dosyalar yerine bellekteki PDF'lerle çalışmanın faydaları nelerdir?
IronPDF kullanarak bellekteki PDF'lerle çalışmanın birkaç avantajı vardır: disk G/Ç işlemlerinden kaçınarak performansı artırma, dosya sistemi erişiminin sınırlı olabileceği Azure gibi bulut platformlarıyla daha iyi uyumluluk, hassas PDF'leri diskte depolamadan güvenliği artırma ve web uygulamaları ve API'lerle sorunsuz entegrasyon.
Bellek akışından mevcut bir PDF yükleyebilir miyim?
Evet, IronPDF, bellekten PDF'leri yüklemenize olanak tanır, MemoryStream girdileri için PdfDocument.FromStream() yöntemini ya da bayt dizisi girdileri için PdfDocument.FromBytes() yöntemini kullanarak. Bu, web isteklerinden, veritabanlarından veya diğer bellek tabanlı kaynaklardan gelen PDF'lerle çalışmanıza olanak tanır ve bunları diske kaydetmeden kullanabilirsiniz.
Bir PDF'yi ASP.NET veya MVC uygulamalarında bellekten nasıl sunabilirim?
IronPDF, web uygulamalarında doğrudan bellekten PDF'leri sunmayı kolaylaştırır. PDF içeriğini almak için Stream veya BinaryData özelliğini kullanabilir ve PDF'yi ASP.NET Core veya MVC uygulamalarında anında oluşturmak ve sunmak için denetçi eylemlerinizde bir FileResult ya da FileContentResult olarak döndürebilirsiniz.
HTML'yi doğrudan bellekte PDF olarak oluşturmak mümkün mü?
Evet, IronPDF'in ChromePdfRenderer'ı HTML içeriğini geçici dosyalar oluşturmadan doğrudan bir MemoryStream içine render eder. RenderHtmlAsPdf() yöntemini kullanabilir ve ardından PDF'yi bir MemoryStream olarak almak için hemen Stream özelliğine erişebilirsiniz; bu, bulut tabanlı uygulamalar ve yüksek performans senaryoları için idealdir.

