ASP.NET Core PDF Görüntüleyici Nasıl Oluşturulur
IronPDF'nin Chrome tabanlı rendering motorunu kullanarak PDF dosyalarını tarayıcılara satır içi olarak göstermek, HTML içeriklerinden dinamik PDF'ler üretmek ve kullanıcıların belgeleri görüntüleyip indirip indiremeyeceğini kontrol etmek için ASP.NET Core MVC PDF görüntüleyici oluşturun – tümü dış eklentiler veya bağımlılıklar olmadan.
Modern tarayıcılar, bir web uygulaması doğru MIME tipiyle PDF dosyalarını sunduğunda otomatik olarak etkinleşen yerleşik bir PDF görüntüleyici içerir. Bu, üçüncü taraf araçlara veya eklentilere ihtiyaç duymadan, kullanıcıların PDF belgelerini doğrudan tarayıcılarında görüntülemelerine olanak tanır. IronPDF, Chrome tabanlı bir rendering motoruna sahip bir .NET PDF kütüphanesi, ASP.NET Core MVC uygulamalarında PDF dosyalarını üretmek, render etmek ve görüntülemek için kullanılabilir.
IronPDF'yi ASP.NET Core MVC Projesine Nasıl Yükleyebilirsiniz?
ASP.NET Core MVC'de bir PDF görüntüleyici oluşturmadan önce projenize IronPDF eklemeniz gerekir. En hızlı yol, Visual Studio'daki NuGet Package Manager veya komut satırında .NET CLI veya Package Manager Console kullanmaktır.
Install-Package IronPdf
Paket kurulduktan sonra, IronPdf ad alanını denetleyici dosyalarınıza ekleyin ve PDF belgeleri oluşturmaya ve sunmaya hazır olun. IronPDF, .NET 8 ve .NET 10'u hedefler, bu nedenle en son ASP.NET Core sürümleriyle herhangi bir ek yapılandırma gerektirmeden çalışır.
Çevrimdışı yükleme veya belirli sürüm sabitlemesi gerektiren projeler için, NuGet paketini doğrudan indirip yerel bir kaynak olarak ekleyebilirsiniz. IronPDF lisanslama sayfası, çevrimiçi olmadan önce deneme ve üretim lisansı seçeneklerini kapsamaktadır.
Modern Tarayıcılar PDF Dosyalarını Nasıl Görüntüler?
Chrome, Firefox, Edge ve Safari gibi modern tarayıcılar, yerleşik bir PDF görüntüleyici işlevi içerir. ASP.NET Core uygulamanız application/pdf içerik türüyle bir dosya döndürdüğünde, tarayıcı Adobe Acrobat veya harici eklentilere gerek duymadan PDF belgesini satır içi olarak işler. Bu yerleşik PDF görüntüleyici, metin seçimi, yazdırma, yakınlaştırma kontrolleri, yer imleri ve sayfa gezintisi gibi özellikleri destekleyerek kullanıcıların zaten aşina olduğu bir belge görüntüleme deneyimi sunar.
Mevcut dosyaları güvenli bir şekilde sunmak için, geliştirme ve üretim arasında değişebilecek dizin yollarına güvenmektense, barındırma ortamını kullanarak onları bulmak en iyi uygulamadır. Bir dosya akışı kullanmak, büyük belgeler için tüm bayt dizilerini yüklemekten daha bellek verimlidir.
using Microsoft.AspNetCore.Mvc;
public class DocumentController : Controller
{
public IActionResult ViewPdf()
{
// Path to an existing PDF file in the wwwroot folder
string path = Path.Combine(Directory.GetCurrentDirectory(), "wwwroot", "documents", "sample.pdf");
byte[] fileBytes = System.IO.File.ReadAllBytes(path);
// Return file for inline browser display
return File(fileBytes, "application/pdf");
}
}
using Microsoft.AspNetCore.Mvc;
public class DocumentController : Controller
{
public IActionResult ViewPdf()
{
// Path to an existing PDF file in the wwwroot folder
string path = Path.Combine(Directory.GetCurrentDirectory(), "wwwroot", "documents", "sample.pdf");
byte[] fileBytes = System.IO.File.ReadAllBytes(path);
// Return file for inline browser display
return File(fileBytes, "application/pdf");
}
}
Imports Microsoft.AspNetCore.Mvc
Public Class DocumentController
Inherits Controller
Public Function ViewPdf() As IActionResult
' Path to an existing PDF file in the wwwroot folder
Dim path As String = Path.Combine(Directory.GetCurrentDirectory(), "wwwroot", "documents", "sample.pdf")
Dim fileBytes As Byte() = System.IO.File.ReadAllBytes(path)
' Return file for inline browser display
Return File(fileBytes, "application/pdf")
End Function
End Class
PDF Tarayıcıda Görüntülendiğinde Nasıl Görünür?

Yukarıdaki kod, sunucudan mevcut bir PDF dosyasını okur ve tarayıcıya döndürür. File() yöntemi, bir byte dizisi ve bir içerik türü kabul eder, tarayıcıdaki belge görüntüleyicinin içeriği satır içi olarak işlemesini sağlar. Bu yaklaşım, masaüstü ve mobil cihazlardaki tüm modern tarayıcılarda çalışır, tüm kullanıcılar için tutarlı bir deneyim sunar.
Daha gelişmiş senaryolar için, hafızadan PDF yüklemek veya Azure Blob Storage kullanmak isteyebilirsiniz, bu da ölçeklenebilirliği artırabilir ve sunucu depolama gereksinimlerini azaltabilir. ASP.NET Core'da statik dosyaları sunma üzerine Microsoft dokümanları, üretimde dosya işlemi için en iyi uygulamaları kapsar.
ASP.NET Core'da PDF Belgelerini Dinamik Olarak Nasıl Üretirsiniz?
Statik PDF dosyaları faydalıdır, ancak birçok web uygulaması, mevcut kullanıcıya veya isteğe göre uyarlanmış dinamik olarak oluşturulmuş belgelere ihtiyaç duyar. IronPDF'nin ChromePdfRenderer sınıfı, HTML içeriğini profesyonelce işlenmiş PDF dosyalarına dönüştürür ve bu süreçte gerçek bir Chromium tarayıcı motoru kullanır.
HTML dizesine doğrudan belirli temanız için CSS veya grafikler için JavaScript gibi dış varlıkları ekleyebilirsiniz. Yorum motoru, CSS3, JavaScript ES6+ ve web fontlar dahil modern web standartlarını destekler, bu nedenle oluşturulan PDF, tarayıcının aynı HTML sayfasını render edeceği şekilde görünür.
using IronPdf;
using Microsoft.AspNetCore.Mvc;
public class ReportController : Controller
{
public IActionResult GenerateReport()
{
var renderer = new ChromePdfRenderer();
// HTML content with CSS styling
string html = @"
<html>
<head>
<style>
body { font-family: Arial, sans-serif; padding: 40px; }
h1 { color: #2c3e50; }
.report-body { line-height: 1.6; }
</style>
</head>
<body>
<h1>Monthly Sales Report</h1>
<div class='report-body'>
<p>Generated: " + DateTime.Now.ToString("MMMM dd, yyyy") + @"</p>
<p>This report contains the latest sales figures.</p>
</div>
</body>
</html>";
PdfDocument pdf = renderer.RenderHtmlAsPdf(html);
return File(pdf.BinaryData, "application/pdf");
}
}
using IronPdf;
using Microsoft.AspNetCore.Mvc;
public class ReportController : Controller
{
public IActionResult GenerateReport()
{
var renderer = new ChromePdfRenderer();
// HTML content with CSS styling
string html = @"
<html>
<head>
<style>
body { font-family: Arial, sans-serif; padding: 40px; }
h1 { color: #2c3e50; }
.report-body { line-height: 1.6; }
</style>
</head>
<body>
<h1>Monthly Sales Report</h1>
<div class='report-body'>
<p>Generated: " + DateTime.Now.ToString("MMMM dd, yyyy") + @"</p>
<p>This report contains the latest sales figures.</p>
</div>
</body>
</html>";
PdfDocument pdf = renderer.RenderHtmlAsPdf(html);
return File(pdf.BinaryData, "application/pdf");
}
}
Imports IronPdf
Imports Microsoft.AspNetCore.Mvc
Public Class ReportController
Inherits Controller
Public Function GenerateReport() As IActionResult
Dim renderer As New ChromePdfRenderer()
' HTML content with CSS styling
Dim html As String = "
<html>
<head>
<style>
body { font-family: Arial, sans-serif; padding: 40px; }
h1 { color: #2c3e50; }
.report-body { line-height: 1.6; }
</style>
</head>
<body>
<h1>Monthly Sales Report</h1>
<div class='report-body'>
<p>Generated: " & DateTime.Now.ToString("MMMM dd, yyyy") & "</p>
<p>This report contains the latest sales figures.</p>
</div>
</body>
</html>"
Dim pdf As PdfDocument = renderer.RenderHtmlAsPdf(html)
Return File(pdf.BinaryData, "application/pdf")
End Function
End Class
HTML İçeriği PDF Oluşturulduktan Sonra Nasıl Görünür?

Bu örnek, IronPDF'nin bir HTML dizisini bir PDF'ye nasıl dönüştürdüğünü göstermektedir. ChromePdfRenderer, Chromium tabanlı bir motor kullanır, bu da doğru CSS işleme ve JavaScript desteği sağlar. Oluşturulan PDF, HTML'de tanımlanan tüm stilleri korur, bu da raporlar, faturalar ve tutarlı biçimlendirme gerektiren diğer belgeler için idealdir.
HTML'den PDF'ye dönüşüm hakkında ek kod örnekleri için IronPDF'nin dokümantasyonunu keşfedin. CSHTML Razor görünümleri, URL'ler veya hatta Markdown içeriğinden de PDF'ler üretebilirsiniz.
Satır İçi Gösterim ile Dosya İndirme Arasında Nasıl Kontrol Sağlarsınız?
Bazen kullanıcılar, PDF dosyalarını tarayıcıda görüntülemek yerine indirmelidir. Tarayıcının yanıtı nasıl ele aldığı Content-Disposition başlığına bağlıdır. Bu ayrımın anlaşılması, uygulamanızda doğru deneyimi sunmanız için önemlidir.
File() yönteminde dosya adı parametresini atladığınızda, ASP.NET Core bir Content-Disposition başlığı ayarlamaz, bu nedenle tarayıcı varsayılan davranışını kullanır - ki bu genellikle satır içi gösterimdir. Dosya adını üçüncü parametre olarak sağladığınızda, ASP.NET Core otomatik olarak Content-Disposition: attachment ekler, böylece kullanıcıların dosyayı kaydetmeleri önerilir.
using IronPdf;
using Microsoft.AspNetCore.Mvc;
public class PdfController : Controller
{
public IActionResult DisplayInline()
{
var renderer = new ChromePdfRenderer();
renderer.RenderingOptions.PaperOrientation = PdfPaperOrientation.Portrait;
renderer.RenderingOptions.MarginTop = 25;
renderer.RenderingOptions.MarginBottom = 25;
PdfDocument pdf = renderer.RenderUrlAsPdf("https://en.wikipedia.org/wiki/Main_Page");
// Display PDF inline in browser -- no filename = inline
return File(pdf.BinaryData, "application/pdf");
}
public IActionResult DownloadPdf()
{
var renderer = new ChromePdfRenderer();
renderer.RenderingOptions.PaperSize = PdfPaperSize.Letter;
renderer.RenderingOptions.EnableJavaScript = true;
PdfDocument pdf = renderer.RenderUrlAsPdf("https://en.wikipedia.org/wiki/Main_Page");
// Prompt download with specified filename
return File(pdf.BinaryData, "application/pdf", "webpage-report.pdf");
}
}
using IronPdf;
using Microsoft.AspNetCore.Mvc;
public class PdfController : Controller
{
public IActionResult DisplayInline()
{
var renderer = new ChromePdfRenderer();
renderer.RenderingOptions.PaperOrientation = PdfPaperOrientation.Portrait;
renderer.RenderingOptions.MarginTop = 25;
renderer.RenderingOptions.MarginBottom = 25;
PdfDocument pdf = renderer.RenderUrlAsPdf("https://en.wikipedia.org/wiki/Main_Page");
// Display PDF inline in browser -- no filename = inline
return File(pdf.BinaryData, "application/pdf");
}
public IActionResult DownloadPdf()
{
var renderer = new ChromePdfRenderer();
renderer.RenderingOptions.PaperSize = PdfPaperSize.Letter;
renderer.RenderingOptions.EnableJavaScript = true;
PdfDocument pdf = renderer.RenderUrlAsPdf("https://en.wikipedia.org/wiki/Main_Page");
// Prompt download with specified filename
return File(pdf.BinaryData, "application/pdf", "webpage-report.pdf");
}
}
Imports IronPdf
Imports Microsoft.AspNetCore.Mvc
Public Class PdfController
Inherits Controller
Public Function DisplayInline() As IActionResult
Dim renderer As New ChromePdfRenderer()
renderer.RenderingOptions.PaperOrientation = PdfPaperOrientation.Portrait
renderer.RenderingOptions.MarginTop = 25
renderer.RenderingOptions.MarginBottom = 25
Dim pdf As PdfDocument = renderer.RenderUrlAsPdf("https://en.wikipedia.org/wiki/Main_Page")
' Display PDF inline in browser -- no filename = inline
Return File(pdf.BinaryData, "application/pdf")
End Function
Public Function DownloadPdf() As IActionResult
Dim renderer As New ChromePdfRenderer()
renderer.RenderingOptions.PaperSize = PdfPaperSize.Letter
renderer.RenderingOptions.EnableJavaScript = True
Dim pdf As PdfDocument = renderer.RenderUrlAsPdf("https://en.wikipedia.org/wiki/Main_Page")
' Prompt download with specified filename
Return File(pdf.BinaryData, "application/pdf", "webpage-report.pdf")
End Function
End Class
Satır İçi Gösterim Yerine Ne Zaman İndirme Kullanın?

İki denetleyici işlevi arasındaki fark, File() içindeki bu üçüncü parametreye dayanmaktadır. Bu esneklik, uygulamanızın kullanıcı ihtiyaçlarına veya iş gereksinimlerine göre her iki senaryoyu desteklemesine olanak tanır. Daha fazla denetim için, ayrıca özel HTTP başlıkları ayarlayabilir veya kağıt boyutu ve yönlendirme ayarlarını render etmeden önce yapılandırabilirsiniz.
Bazı uygulamalar her iki yaklaşımı birleştirir: bir önizleme uç noktası satır içi olarak PDF'yi gösterirken, ayrı bir indirme uç noktası, bir dosya kaydetme işlemi tetikler. Bu örüntü, kullanıcıların indirmeye karar vermeden önce belgeyi görme imkanı sunar.
Razor Sayfaları PDF Üretimi ile Nasıl Entegre Edersiniz?
ASP.NET Core MVC'deki Razor Sayfaları, bir .NET PDF görüntüleyici uygulamak için başka bir yaklaşım sağlar. Sayfa modeli, standart MVC kontrolörlerinde olduğu gibi IronPDF işlevini kullanarak PDF dosyalarını üretebilir ve döndürebilir. Bu yapısal desen, PDF üretim mantığının üretildiği sayfa ile birlikte yer almasını sağladığı için, hali hazırda Razor Sayfalarını kullanan uygulamalar için iyi çalışır.
Bir Razor Page'deki OnGet işleyici, bir denetleyici işlevi gibi davranır -- isteği alır, iş yapar ve bir sonuç döndürür. Bir sayfa modelinden FileResult döndürmek ASP.NET Core tarafından desteklenir ve bir denetleyiciden File() döndürmekle aynı şekilde çalışır.
using IronPdf;
using Microsoft.AspNetCore.Mvc;
using Microsoft.AspNetCore.Mvc.RazorPages;
public class InvoiceModel : PageModel
{
public IActionResult OnGet(int id)
{
var renderer = new ChromePdfRenderer();
renderer.RenderingOptions.MarginTop = 20;
renderer.RenderingOptions.MarginBottom = 20;
renderer.RenderingOptions.PaperSize = PdfPaperSize.A4;
// Add header and footer
renderer.RenderingOptions.TextHeader.CenterText = "Invoice Document";
renderer.RenderingOptions.TextFooter.RightText = "Page {page} of {total-pages}";
renderer.RenderingOptions.TextFooter.FontSize = 10;
string html = $@"
<html>
<head>
<style>
body {{font-family: 'Segoe UI', Arial, sans-serif; padding: 40px;}}
h1 {{color: #1a5490; border-bottom: 2px solid #1a5490; padding-bottom: 10px;}}
.invoice-details {{margin: 20px 0;}}
table {{width: 100%; border-collapse: collapse;}}
th, td {{padding: 10px; text-align: left; border-bottom: 1px solid #ddd;}}
</style>
</head>
<body>
<h1>Invoice #{id}</h1>
<div class='invoice-details'>
<p><strong>Date:</strong> {DateTime.Now:yyyy-MM-dd}</p>
<p><strong>Due Date:</strong> {DateTime.Now.AddDays(30):yyyy-MM-dd}</p>
</div>
<table>
<tr><th>Description</th><th>Amount</th></tr>
<tr><td>Professional Services</td><td>$1,500.00</td></tr>
</table>
<p style='margin-top: 40px;'>Thank you for your business!</p>
</body>
</html>";
PdfDocument pdf = renderer.RenderHtmlAsPdf(html);
return File(pdf.BinaryData, "application/pdf");
}
}
using IronPdf;
using Microsoft.AspNetCore.Mvc;
using Microsoft.AspNetCore.Mvc.RazorPages;
public class InvoiceModel : PageModel
{
public IActionResult OnGet(int id)
{
var renderer = new ChromePdfRenderer();
renderer.RenderingOptions.MarginTop = 20;
renderer.RenderingOptions.MarginBottom = 20;
renderer.RenderingOptions.PaperSize = PdfPaperSize.A4;
// Add header and footer
renderer.RenderingOptions.TextHeader.CenterText = "Invoice Document";
renderer.RenderingOptions.TextFooter.RightText = "Page {page} of {total-pages}";
renderer.RenderingOptions.TextFooter.FontSize = 10;
string html = $@"
<html>
<head>
<style>
body {{font-family: 'Segoe UI', Arial, sans-serif; padding: 40px;}}
h1 {{color: #1a5490; border-bottom: 2px solid #1a5490; padding-bottom: 10px;}}
.invoice-details {{margin: 20px 0;}}
table {{width: 100%; border-collapse: collapse;}}
th, td {{padding: 10px; text-align: left; border-bottom: 1px solid #ddd;}}
</style>
</head>
<body>
<h1>Invoice #{id}</h1>
<div class='invoice-details'>
<p><strong>Date:</strong> {DateTime.Now:yyyy-MM-dd}</p>
<p><strong>Due Date:</strong> {DateTime.Now.AddDays(30):yyyy-MM-dd}</p>
</div>
<table>
<tr><th>Description</th><th>Amount</th></tr>
<tr><td>Professional Services</td><td>$1,500.00</td></tr>
</table>
<p style='margin-top: 40px;'>Thank you for your business!</p>
</body>
</html>";
PdfDocument pdf = renderer.RenderHtmlAsPdf(html);
return File(pdf.BinaryData, "application/pdf");
}
}
Imports IronPdf
Imports Microsoft.AspNetCore.Mvc
Imports Microsoft.AspNetCore.Mvc.RazorPages
Public Class InvoiceModel
Inherits PageModel
Public Function OnGet(id As Integer) As IActionResult
Dim renderer As New ChromePdfRenderer()
renderer.RenderingOptions.MarginTop = 20
renderer.RenderingOptions.MarginBottom = 20
renderer.RenderingOptions.PaperSize = PdfPaperSize.A4
' Add header and footer
renderer.RenderingOptions.TextHeader.CenterText = "Invoice Document"
renderer.RenderingOptions.TextFooter.RightText = "Page {page} of {total-pages}"
renderer.RenderingOptions.TextFooter.FontSize = 10
Dim html As String = $"
<html>
<head>
<style>
body {{font-family: 'Segoe UI', Arial, sans-serif; padding: 40px;}}
h1 {{color: #1a5490; border-bottom: 2px solid #1a5490; padding-bottom: 10px;}}
.invoice-details {{margin: 20px 0;}}
table {{width: 100%; border-collapse: collapse;}}
th, td {{padding: 10px; text-align: left; border-bottom: 1px solid #ddd;}}
</style>
</head>
<body>
<h1>Invoice #{id}</h1>
<div class='invoice-details'>
<p><strong>Date:</strong> {DateTime.Now:yyyy-MM-dd}</p>
<p><strong>Due Date:</strong> {DateTime.Now.AddDays(30):yyyy-MM-dd}</p>
</div>
<table>
<tr><th>Description</th><th>Amount</th></tr>
<tr><td>Professional Services</td><td>$1,500.00</td></tr>
</table>
<p style='margin-top: 40px;'>Thank you for your business!</p>
</body>
</html>"
Dim pdf As PdfDocument = renderer.RenderHtmlAsPdf(html)
Return File(pdf.BinaryData, "application/pdf")
End Function
End Class
PDF Özelleştirme İçin Hangi Render Seçenekleri Mevcuttur?

Bu Razor Pages örneği, OnGet işleyicisinin bir URL parametresinden PDF nasıl oluşturduğunu gösterir. RenderingOptions özelliği, kenar boşlukları, sayfa yönlendirmesi ve diğer düzen ayarları üzerinde ince ayar yapılmasına olanak tanır. Başlıklar ve altlıklar ekleyebilir, sayfa numaraları yapılandırabilir veya özel kağıt boyatları oluşturabilirsiniz.
RenderingOptions aracılığıyla sunulan gelişmiş özellikler arasında filigran ekleme, PDF sıkıştırma ve dijital imzalar yer alır. Mevcut her seçenek için detaylar için IronPDF rendering seçenekleri referansına başvurun.
PDF Güvenliği ve Erişim Kontrolü Nasıl Yapılır?
Üretim uygulamaları genellikle bir PDF belgesini kimlerin görüntüleyebileceğini veya değiştirebileceğini sınırlama ihtiyacı duyar. IronPDF, PDF şifreleri ve izinleri için yerleşik destek sağlar, belgeleri şifrelemenize, açmak için şifre gerektirmenize veya yazdırma ve kopyalama işlemlerini sınırlamanıza olanak tanır.
Herhangi bir PdfDocument nesnesine, denetleyicinizden döndürmeden önce güvenlik ayarları uygulayabilirsiniz. Bu yaklaşım, PDF'nin HTML'den üretilmesi, diskten yüklenmesi veya bir veritabanından alınması fark etmeksizin çalışır.
| Güvenlik Özelliği | IronPDF Özelliği | Kullanım Örneği |
|---|---|---|
| Sahip şifresi | OwnerPassword |
Yetkisiz izin değişikliklerini önleyin |
| Kullanıcı şifresi | UserPassword |
Belgeyi açmak için şifre gerektir |
| Yazdırmayı engelle | AllowUserPrinting |
Alıcıların dosyayı yazdırmasını önleyin |
| Kopyalamayı engelle | AllowUserCopyPasteContent |
PDF'den metin çıkarımını engelleyin |
| Dijital imza | PdfSignature |
Belge otantikliğini doğrulayın |
Sözleşmeler, mali tablolar veya tıbbi kayıtlar gibi hassas belgeler için, kullanıcı şifresini sınırlı izinlerle birleştirmek, alıcıların dosya ile ne yapabileceğini tam olarak kontrol etmenizi sağlar. Uzun süreli arşivleme senaryolarında belgenin bütünlüğünün on yıllar boyunca korunması gerektiğinde PDF/A uyumluluk modu başka bir seçenek olarak değerlidir.
PDF Üretim Performansı Nasıl Optimize Edilir?
PDF üretimi, CPU ve bellek işlemi içerir, bu nedenle performans yoğun trafik uygulamalarında önemlidir. IronPDF'deki asenkron render API'si, PDF oluşturmayı istek kuyruğunu kilitlemeden arka plan bir işlemciye aktarır. Bu, tek bir istek içinde birden fazla PDF üretirken veya toplu iş işlemleri yaparken özellikle değerlidir.
Linux veya Docker konteynerlerinde üretim dağıtımları için, IronPDF, Windows'a özgü bağımlılıklar gerektirmeden çapraz-platform çalışmayı destekler. IronPDF Linux kurulum kılavuzu ve Docker yapılandırma referansı, kurulum adımlarını kapsar. Hem Mozilla PDF.js projesi hem de yerel tarayıcı görüntüleyicileri, IronPDF tarafından üretilen herhangi bir PDF ile uyumludur, bu nedenle görüntüleme tarafında esnekliğe sahipsiniz.
Üretimde verimi artıran birkaç uygulama:
ChromePdfRendererörneklerini mümkün olduğunca yeniden kullanın, isteğe bağlı olarak yeni bir tane oluşturmak yerine çünkü işlemci başlatma işlemi biraz yük getirir.- async yöntemleri kullanın,
RenderHtmlAsPdfAsyncgibi, Chromium moturu işlerken thread'i serbest bırakmak için. - Aynı belge tekrar tekrar isteniyorsa, IMemoryCache veya dağıtılmış bir önbellek kullanarak oluşturulan PDF'leri önbelleğe alın.
- Çok büyük belgeler için, tüm bayt dizisini bellekte tamponlamak yerine çıktıyı akışla düşünün.
Asenkron Render İşlevi Pratikte Nasıl Çalışır?
Async API, senkron sürümünü yansıtır ancak bir Task<PdfDocument> döndürür. async denetleyici işlevi içinde sonucu await edersiniz, bu sayede işleme devam ederken thread havuzu diğer gelen istekleri karşılamak için serbest kalır. Eşzamanlıdan asenkron render'a geçiş, yüksek yük senaryosunda genellikle thread çekişmesini azaltır ve eşzamanlı yük altında genel yanıt sürelerini iyileştirir.
Sonraki Adımlarınız Neler?
ASP.NET Core MVC'de bir PDF görüntüleyici oluşturmak, tarayıcı yerel görüntüleme yeteneklerini IronPDF'nin üretim özellikleriyle birleştirir. Modern tarayıcılardaki yerleşik PDF görüntüleyici, ASP.NET kontrolörünüz doğru MIME tipiyle dosyalar döndürdüğünde görüntüleme, yazdırma ve gezintiyi otomatik olarak yönetir. IronPDF, HTML, URL'ler veya mevcut dosyaları iyi biçimlendirilmiş PDF belgelerine dönüştürerek üretim tarafını yönetir ve CSS, JavaScript, başlıklar, altlıklar ve güvenlik ayarları için tam destek sunar.
Bu kılavuzda ele alınan anahtar yetenekler:
File()yöntemi veapplication/pdfMIME türü ile mevcut PDF dosyalarını satır içi sunmaChromePdfRendererkullanarak HTML dizgilerinden dinamik PDF'ler üretmeContent-Dispositionbaşlığı aracılığıyla satır içi görüntüleme ve dosya indirme kontrolüRenderingOptionsüzerinden başlıklar, altlıklar, kenar boşlukları ve güvenlik ayarları ekleme- PDF üretimi için MVC kontrolörlerinin alternatifi olarak Razor Sayfalarını kullanma
- Hassas belgelere şifre koruması ve izin kısıtlamaları uygulama
- Asenkron render ve yanıt önbellekleme ile performansı artırma
Buradan, birden çok PDF'yi birleştirme, doldurulabilir formlar oluşturma veya CSHTML Razor görünümlerinden PDF oluşturma gibi daha ileri iş akışlarını keşfedebilirsiniz. IronPDF dokümantasyonu, çalışan kod örnekleriyle her özelliği kapsar.
Ücretsiz denemenizi başlatın ve IronPDF'nin tam yeteneklerini keşfetmek için veya üretim amaçlı lisans satın alın.
Sıkça Sorulan Sorular
ASP.NET Core MVC uygulamalarında PDF dosyaları nasıl görüntülenir?
IronPDF kullanarak ASP.NET Core MVC uygulamalarında PDF dosyalarını görüntüleyebilirsiniz. Modern yerleşik PDF görüntüleyicileri kullanarak PDF dosyalarını doğrudan tarayıcıda oluşturmanızı, render etmenizi ve görüntülemenizi sağlar.
Bir tarayıcıda PDF'leri görüntülemek için üçüncü taraf eklentiler gerekli mi?
Hayır, modern tarayıcılar, PDF dosyaları correct MIME türü ile sunulduğunda otomatik olarak etkinleşen yerleşik PDF görüntüleyicilere sahiptir. IronPDF, PDF'lerinizin doğru şekilde sunulmasını sağlar.
IronPDF kullanmanın ASP.NET Core MVC'de avantajı nedir?
IronPDF, ASP.NET Core MVC uygulamaları içinde PDF belgelerini oluşturma ve render etme sürecini basitleştiren bir .NET PDF kütüphanesidir, üretkenliği artırır ve PDF yönetimini düzene sokar.
IronPDF mevcut tarayıcı PDF görüntüleyicileri ile çalışabilir mi?
Evet, IronPDF, PDF dosyalarının otomatik olarak tarayıcıda görüntülenmesi için correct MIME türü ile sunulmasını sağlayarak mevcut tarayıcı PDF görüntüleyicileri ile sorunsuz bir şekilde çalışır.
IronPDF sık güncelleniyor mu?
Evet, IronPDF, ASP.NET Core MVC uygulamalarında PDF belgelerinin işlenmesi için en son özellikler ve iyileştirmeler sunan sık güncellenen bir .NET PDF kütüphanesidir.
IronPDF, web uygulamalarında PDF oluşturmayı nasıl ele alır?
IronPDF, çeşitli içerik türlerinden PDF oluşturmak için sağlam işlevsellik sunar, geliştiricilerin web uygulamaları içinde dinamik ve etkileşimli PDF belgeleri oluşturmasını sağlar.
PDF dosyalarının sunulması için hangi MIME türü kullanılmalıdır?
Tarayıcıda doğru bir şekilde görüntülenmesini sağlamak için, PDF dosyaları 'application/pdf' MIME türü ile sunulmalıdır. IronPDF bu yönü etkin bir şekilde yönetmenize yardımcı olabilir.
IronPDF'de PDF işlemesini özelleştirmek mümkün mü?
Evet, IronPDF, PDF render edilmesine yönelik geniş özelleştirme seçenekleri sunar, çıktıyı belirli tasarım ve işlevsellik gereksinimlerine uygun hale getirmenizi sağlar.
IronPDF yalnızca ASP.NET Core MVC uygulamalarını mı destekler?
IronPDF, ASP.NET Core MVC uygulamaları için mükemmel olsa da, .NET uygulamaları ile çeşitli PDF işlevselliklerini ele almak için kullanabileceğiniz esnek bir şekilde başka uygulamalarla da uyumludur.

