PDFView4NET'den IronPDF'e C# ile Nasıl Geçilir
PDFView4NET'ten IronPDF'e geçmek, PDF iş akışınızı bir WinForms/WPF görüntüleme bileşeni yerine kafa kullanmayan bir PDF oluşturan ve işleyen kütüphaneye taşır. Bu rehber, sunucu tarafı işleme, web uygulaması desteği ve PDFView4NET'in görüntüleme, işleme, baskı kapsamının ötesindeki daha geniş PDF ömrü yönetimi sağlayan adım adım geçiş yolunu kapsar.
Neden PDFView4NET'ten IronPDF'ye Geçmeli
PDFView4NET'i Anlamak
PDFView4NET (O2 Solutions, o2sol.com)WinFormsveWPFuygulamaları için bir görüntüleyici / işleme / baskı aracıdır. İki NuGet paketi olarak gelir — O2S.Components.PDFView4NET.Win ve O2S.Components.PDFView4NET.WPF — ve kendi PDF render motorunu içerir. O2 Solutions, programlı olarak oluşturma/düzenleme için ayrı bir kütüphane olan PDF4NET'i satmaktadır; bu kılavuz yalnızca PDFView4NET'i kapsamaktadır.
PDF oluşturma, HTML'den PDF'ye işleme veya sunucu tarafı iş akışlarına ihtiyaç duyan ekipler, genellikle PDFView4NET'yi başka bir kütüphane ile birleştirir veya PDF oluşturma, işleme ve kafasız dağıtım senaryolarını kapsayan IronPDF gibi bir araca doğrudan geçiş yapar.
Görünüm / İşleme / Baskı Kapsamı
PDFView4NET, PDF'leri görüntüleme, işlememe ve yazdırmanın, ayrıca açıklamalar ve form doldurmanın üzerinde kurulu bir yapıdır. Geçiş yapmak için yaygın nedenler:
-
Görünüm / İşleme / Baskı Odaklı: PDFView4NET, mevcut PDF'leri görüntüleme, yazdırma veya görüntü işleme için yükler. HTML veya URL'lerden PDF oluşturmaz.
-
UI Çerçevesi Bağımlılığı:WinFormsveWPFsürümlerinde dağıtılır; her ikisi de Windows masaüstünü hedefler, bu da kullanımını konsol işçi veya sunucu tarafı ana veri sunucularında sınırlar.
-
HTML'den PDF'ye yok:
HtmlToPdfConverterveyaO2S.Components.PDFView4NETiçinde HTML render API yok. -
Sınırlı Manipülasyon: Manipülasyon, tamamı içerik oluşturma yerine açıklamalar ve form alanlarına odaklanır.
-
Linux /Docker/Sunucu Yolu Yok: Araç seti sadece WinForms/WPF üzerinden Windows'ta çalışır ve Linux veya konteyner iş yüklerinde ASP.NET ana bilgisayarlara yönelik değildir.
- Aktif, ama Dar: O2 Solutions hala sürümler gönderiyor; ürün sürdürülebilir, ancak kapsamı kasıtlı olarak dar.
PDFView4NETvs IronPDF Karşılaştırması
| Özellik | PDFView4NET | IronPDF |
|---|---|---|
| Temel Odak | PDF Görüntüleme | Tam PDF Çözümü (Oluştur, Görüntüle, Düzenle) |
| UI Çerçeveleri Gereklidir | WinForms, WPF | None |
| PDF Oluşturma | Hayır | Evet |
| PDF Manipülasyonu | Sınırlı (Anotasyonlar) | Evet |
| Sunucu Tarafı | Desteklenmiyor | Tam Destek |
| Web Uygulamaları | Hayır | Evet |
| Konsol Uygulamaları | Sınırlı | Tam Destek |
| Azure/Docker | Hayır | Evet |
| HTML'den PDF'ye | Hayır | Evet |
| Çapraz Platform Bağlamı | Hayır | Evet |
| Entegrasyon Kolaylığı | Orta | Yüksek |
IronPDF, PDF oluşturma, işleme ve görüntülemeye bitişik iş akışları üzerindeki işleme sunmanın ötesindeki kullanım senaryolarını kapsar.
IronPDF ayrıca bağımsız bir bağlamda çalışır — web uygulamaları, hizmetleri ve Windows, Linux, macOS,Dockerve Azure'de çalışan konsol uygulamaları, çapraz platform desteği veya sunucu tarafı barındırma ihtiyacı olan projeler için önem taşıyabilir.
Başlamadan Önce
Ön Koşullar
- .NET Ortamı: .NET Framework 4.6.2+ veya .NET Core 3.1+ / .NET 5/6/7/8/9+
- NuGet Erişimi: NuGet paketlerini yükleyebilme
- IronPDF Lisansı: Lisans anahtarınızı ironpdf.com adresinden edinin
NuGet Paket Değişiklikleri
<PackageReference Include="O2S.Components.PDFView4NET.Win" Version="*" Remove />
<PackageReference Include="IronPdf" Version="*" />
<PackageReference Include="O2S.Components.PDFView4NET.Win" Version="*" Remove />
<PackageReference Include="IronPdf" Version="*" />
Veya CLI üzerinden:
dotnet remove package O2S.Components.PDFView4NET.Win
# (use O2S.Components.PDFView4NET.WPF for theWPFedition)
dotnet add package IronPdf
dotnet remove package O2S.Components.PDFView4NET.Win
# (use O2S.Components.PDFView4NET.WPF for theWPFedition)
dotnet add package IronPdf
Lisans Yapılandırması
// Add at application startup
IronPdf.License.LicenseKey = "YOUR-LICENSE-KEY";
// Add at application startup
IronPdf.License.LicenseKey = "YOUR-LICENSE-KEY";
' Add at application startup
IronPdf.License.LicenseKey = "YOUR-LICENSE-KEY"
Tam API Referansı
Ad Alanı Değişiklikleri
// Before: PDFView4NET
using O2S.Components.PDFView4NET;
// After: IronPDF
using IronPdf;
// Before: PDFView4NET
using O2S.Components.PDFView4NET;
// After: IronPDF
using IronPdf;
Imports IronPdf
Temel API Eşlemeleri
| PDFView4NET | IronPDF |
|---|---|
new PDFDocument(); doc.Load(path)|PdfDocument.FromFile(path)` |
|
new PDFDocument(); doc.Load(stream)|PdfDocument.FromStream(stream)` |
|
document.Pages[index] |
pdf.Pages[index] |
document.PageCount |
pdf.PageCount |
document.Print(...) |
pdf.Print() |
document.Close() |
pdf.Dispose() |
| PDFView4NET'te N/A | ChromePdfRenderer (HTML'den PDF'ye) |
| PDFView4NET'te N/A | PdfDocument.Merge() |
| PDFView4NET'te N/A | pdf.ApplyWatermark() |
document.SecurityManager |
pdf.SecuritySettings |
Kod Göç Örnekleri
Örnek 1: URL'den PDF'ye Dönüşüm
Önce (PDFView4NET):
// NuGet: Install-Package O2S.Components.PDFView4NET.Win
using O2S.Components.PDFView4NET;
using System;
class Program
{
static void Main()
{
//PDFView4NETcannot fetch a URL and emit a PDF; it can only consume one.
PDFDocument document = new PDFDocument();
document.Load("input.pdf");
Console.WriteLine($"Loaded {document.PageCount} page(s) for view/print.");
document.Close();
}
}
// NuGet: Install-Package O2S.Components.PDFView4NET.Win
using O2S.Components.PDFView4NET;
using System;
class Program
{
static void Main()
{
//PDFView4NETcannot fetch a URL and emit a PDF; it can only consume one.
PDFDocument document = new PDFDocument();
document.Load("input.pdf");
Console.WriteLine($"Loaded {document.PageCount} page(s) for view/print.");
document.Close();
}
}
Imports O2S.Components.PDFView4NET
Imports System
Class Program
Shared Sub Main()
' PDFView4NET cannot fetch a URL and emit a PDF; it can only consume one.
Dim document As New PDFDocument()
document.Load("input.pdf")
Console.WriteLine($"Loaded {document.PageCount} page(s) for view/print.")
document.Close()
End Sub
End Class
Sonrası (IronPDF):
// NuGet: Install-Package IronPdf
using IronPdf;
using System;
class Program
{
static void Main()
{
var renderer = new ChromePdfRenderer();
var pdf = renderer.RenderUrlAsPdf("https://example.com");
pdf.SaveAs("output.pdf");
}
}
// NuGet: Install-Package IronPdf
using IronPdf;
using System;
class Program
{
static void Main()
{
var renderer = new ChromePdfRenderer();
var pdf = renderer.RenderUrlAsPdf("https://example.com");
pdf.SaveAs("output.pdf");
}
}
Imports IronPdf
Imports System
Class Program
Shared Sub Main()
Dim renderer = New ChromePdfRenderer()
Dim pdf = renderer.RenderUrlAsPdf("https://example.com")
pdf.SaveAs("output.pdf")
End Sub
End Class
PDFView4NET'in HTML/URL render yüzeyi yoktur — HtmlToPdfConverter içinde O2S.Components.PDFView4NET yoktur, bu yüzden bir URL önce başka bir araçla PDF'ye dönüştürülmeli ve ardından görüntüleme/basım için yüklenmelidir. IronPDF, tamamını tek bir ChromePdfRenderer.RenderUrlAsPdf() çağrısıyla halleder ve SaveAs() ile kaydettiğiniz bir PdfDocument döner. Kapsamlı örnekler için HTML'den PDF'e dönüşüm belgelerine bakın.
Örnek 2: HTML Dizgisi'nden PDF'ye Dönüşüm
Önce (PDFView4NET):
// NuGet: Install-Package O2S.Components.PDFView4NET.Win
using O2S.Components.PDFView4NET;
using System;
class Program
{
static void Main()
{
// The HTML string cannot be rendered by PDFView4NET. Assume an upstream
// tool produced "document.pdf";PDFView4NETcan then display or print it.
PDFDocument document = new PDFDocument();
document.Load("document.pdf");
Console.WriteLine($"Document ready for viewing — {document.PageCount} page(s).");
document.Close();
}
}
// NuGet: Install-Package O2S.Components.PDFView4NET.Win
using O2S.Components.PDFView4NET;
using System;
class Program
{
static void Main()
{
// The HTML string cannot be rendered by PDFView4NET. Assume an upstream
// tool produced "document.pdf";PDFView4NETcan then display or print it.
PDFDocument document = new PDFDocument();
document.Load("document.pdf");
Console.WriteLine($"Document ready for viewing — {document.PageCount} page(s).");
document.Close();
}
}
Imports O2S.Components.PDFView4NET
Imports System
Class Program
Shared Sub Main()
' The HTML string cannot be rendered by PDFView4NET. Assume an upstream
' tool produced "document.pdf"; PDFView4NET can then display or print it.
Dim document As New PDFDocument()
document.Load("document.pdf")
Console.WriteLine($"Document ready for viewing — {document.PageCount} page(s).")
document.Close()
End Sub
End Class
Sonrası (IronPDF):
// NuGet: Install-Package IronPdf
using IronPdf;
using System;
class Program
{
static void Main()
{
string htmlContent = "<html><body><h1>Hello World</h1><p>This is a PDF document.</p></body></html>";
var renderer = new ChromePdfRenderer();
var pdf = renderer.RenderHtmlAsPdf(htmlContent);
pdf.SaveAs("document.pdf");
}
}
// NuGet: Install-Package IronPdf
using IronPdf;
using System;
class Program
{
static void Main()
{
string htmlContent = "<html><body><h1>Hello World</h1><p>This is a PDF document.</p></body></html>";
var renderer = new ChromePdfRenderer();
var pdf = renderer.RenderHtmlAsPdf(htmlContent);
pdf.SaveAs("document.pdf");
}
}
Imports IronPdf
Imports System
Class Program
Shared Sub Main()
Dim htmlContent As String = "<html><body><h1>Hello World</h1><p>This is a PDF document.</p></body></html>"
Dim renderer = New ChromePdfRenderer()
Dim pdf = renderer.RenderHtmlAsPdf(htmlContent)
pdf.SaveAs("document.pdf")
End Sub
End Class
HtmlContent özelliği veya O2S.Components.PDFView4NET içinde HTML render API yok, bu yüzden HTML string başka bir yerde PDF olarak üretilmeli ve daha sonra görüntüleyiciye yüklenmeli. IronPDF, HTML stringi doğrudan RenderHtmlAsPdf() üzerinden kabul eder ve bir PdfDocument döner. Daha fazla bilgiyi kılavuzlarımızda öğrenin.
Örnek 3: PDF'den Metin Çıkarma
Önce (PDFView4NET):
// NuGet: Install-Package O2S.Components.PDFView4NET.Win
using O2S.Components.PDFView4NET;
using System;
using System.IO;
class Program
{
static void Main()
{
using (FileStream fs = File.OpenRead("document.pdf"))
{
PDFDocument document = new PDFDocument();
document.Load(fs);
string text = "";
for (int i = 0; i < document.PageCount; i++)
{
text += document.Pages[i].ExtractText();
}
Console.WriteLine(text);
document.Close();
}
}
}
// NuGet: Install-Package O2S.Components.PDFView4NET.Win
using O2S.Components.PDFView4NET;
using System;
using System.IO;
class Program
{
static void Main()
{
using (FileStream fs = File.OpenRead("document.pdf"))
{
PDFDocument document = new PDFDocument();
document.Load(fs);
string text = "";
for (int i = 0; i < document.PageCount; i++)
{
text += document.Pages[i].ExtractText();
}
Console.WriteLine(text);
document.Close();
}
}
}
Imports O2S.Components.PDFView4NET
Imports System
Imports System.IO
Class Program
Shared Sub Main()
Using fs As FileStream = File.OpenRead("document.pdf")
Dim document As New PDFDocument()
document.Load(fs)
Dim text As String = ""
For i As Integer = 0 To document.PageCount - 1
text &= document.Pages(i).ExtractText()
Next
Console.WriteLine(text)
document.Close()
End Using
End Sub
End Class
Sonrası (IronPDF):
// NuGet: Install-Package IronPdf
using IronPdf;
using System;
class Program
{
static void Main()
{
var pdf = PdfDocument.FromFile("document.pdf");
string text = pdf.ExtractAllText();
Console.WriteLine(text);
}
}
// NuGet: Install-Package IronPdf
using IronPdf;
using System;
class Program
{
static void Main()
{
var pdf = PdfDocument.FromFile("document.pdf");
string text = pdf.ExtractAllText();
Console.WriteLine(text);
}
}
Imports IronPdf
Imports System
Class Program
Shared Sub Main()
Dim pdf = PdfDocument.FromFile("document.pdf")
Dim text As String = pdf.ExtractAllText()
Console.WriteLine(text)
End Sub
End Class
Bu örnek, önemli bir API farkını vurgular. PDFView4NET, bir FileStream oluşturulmasını, PDFDocument örneklenmesini ve Load(fs) çağrılmasını, ardından sayfa başına Pages[i].ExtractText() ekleyip document.PageCount yinelemeyi gerektirir.
IronPDF bunu önemli ölçüde basitleştirir: PdfDocument.FromFile() doğrudan bir yoldan PDF'yi yükler ve ExtractAllText() tüm sayfalardan tek bir metod çağrısı ile metin çıkarır. Elle akış yönetimi yok, döngüler yok, dize birleştirme yok—sadece iki satır kod.
Kritik Taşıma Notları
HTML İşleme Yüzeyi
PDFView4NET, HTML-to-PDF API'sine sahip değildir. IronPDF, HTML/URL girdisi için ChromePdfRenderer tanıtır:
// IronPDF
var renderer = new ChromePdfRenderer();
var pdf = renderer.RenderHtmlAsPdf(htmlContent);
// or: renderer.RenderUrlAsPdf(url);
pdf.SaveAs("output.pdf");
// IronPDF
var renderer = new ChromePdfRenderer();
var pdf = renderer.RenderHtmlAsPdf(htmlContent);
// or: renderer.RenderUrlAsPdf(url);
pdf.SaveAs("output.pdf");
Imports IronPdf
Dim renderer As New ChromePdfRenderer()
Dim pdf = renderer.RenderHtmlAsPdf(htmlContent)
' or: renderer.RenderUrlAsPdf(url)
pdf.SaveAs("output.pdf")
Doküman Yükleme Değişikliği
// PDFView4NET: instantiate then Load(path) or Load(stream)
PDFDocument document = new PDFDocument();
document.Load("document.pdf");
// IronPDF: Direct file path
var pdf = PdfDocument.FromFile("document.pdf");
// PDFView4NET: instantiate then Load(path) or Load(stream)
PDFDocument document = new PDFDocument();
document.Load("document.pdf");
// IronPDF: Direct file path
var pdf = PdfDocument.FromFile("document.pdf");
' PDFView4NET: instantiate then Load(path) or Load(stream)
Dim document As New PDFDocument()
document.Load("document.pdf")
' IronPDF: Direct file path
Dim pdf = PdfDocument.FromFile("document.pdf")
Sayfa Erişimi Değişikliği
// PDFView4NET: document.PageCount and document.Pages[i]
for (int i = 0; i < document.PageCount; i++)
{
document.Pages[i].ExtractText();
}
// IronPDF: pdf.PageCount and Pages[i] or ExtractAllText()
string text = pdf.ExtractAllText();
// Or per-page: pdf.ExtractTextFromPage(0);
// PDFView4NET: document.PageCount and document.Pages[i]
for (int i = 0; i < document.PageCount; i++)
{
document.Pages[i].ExtractText();
}
// IronPDF: pdf.PageCount and Pages[i] or ExtractAllText()
string text = pdf.ExtractAllText();
// Or per-page: pdf.ExtractTextFromPage(0);
Imports PDFView4NET
Imports IronPDF
' PDFView4NET: document.PageCount and document.Pages(i)
For i As Integer = 0 To document.PageCount - 1
document.Pages(i).ExtractText()
Next
' IronPDF: pdf.PageCount and Pages(i) or ExtractAllText()
Dim text As String = pdf.ExtractAllText()
' Or per-page: pdf.ExtractTextFromPage(0)
Kaydetme Yöntemi Değişikliği
//PDFView4NEThas no save-from-HTML path; saving applies after edits on a loaded document.
// IronPDF: SaveAs()
pdf.SaveAs("output.pdf");
//PDFView4NEThas no save-from-HTML path; saving applies after edits on a loaded document.
// IronPDF: SaveAs()
pdf.SaveAs("output.pdf");
'PDFView4NEThas no save-from-HTML path; saving applies after edits on a loaded document.
' IronPDF: SaveAs()
pdf.SaveAs("output.pdf")
Geçiş Sonrası Yeni Özellikler
IronPDF'ye geçiş yaptıktan sonra, PDFView4NET'in sağlayamayacağı yeteneklere sahip olursunuz:
PDF Birleştirme
var pdf1 = PdfDocument.FromFile("chapter1.pdf");
var pdf2 = PdfDocument.FromFile("chapter2.pdf");
var merged = PdfDocument.Merge(pdf1, pdf2);
merged.SaveAs("complete_book.pdf");
var pdf1 = PdfDocument.FromFile("chapter1.pdf");
var pdf2 = PdfDocument.FromFile("chapter2.pdf");
var merged = PdfDocument.Merge(pdf1, pdf2);
merged.SaveAs("complete_book.pdf");
Dim pdf1 = PdfDocument.FromFile("chapter1.pdf")
Dim pdf2 = PdfDocument.FromFile("chapter2.pdf")
Dim merged = PdfDocument.Merge(pdf1, pdf2)
merged.SaveAs("complete_book.pdf")
HTML ile Filigranlar
var pdf = PdfDocument.FromFile("document.pdf");
pdf.ApplyWatermark(@"
<div style='
font-size: 72pt;
color: rgba(255, 0, 0, 0.2);
transform: rotate(-45deg);
'>
CONFIDENTIAL
</div>");
pdf.SaveAs("watermarked.pdf");
var pdf = PdfDocument.FromFile("document.pdf");
pdf.ApplyWatermark(@"
<div style='
font-size: 72pt;
color: rgba(255, 0, 0, 0.2);
transform: rotate(-45deg);
'>
CONFIDENTIAL
</div>");
pdf.SaveAs("watermarked.pdf");
Dim pdf = PdfDocument.FromFile("document.pdf")
pdf.ApplyWatermark("
<div style='
font-size: 72pt;
color: rgba(255, 0, 0, 0.2);
transform: rotate(-45deg);
'>
CONFIDENTIAL
</div>")
pdf.SaveAs("watermarked.pdf")
Şifre Koruma
var pdf = PdfDocument.FromFile("document.pdf");
pdf.SecuritySettings.OwnerPassword = "owner123";
pdf.SecuritySettings.UserPassword = "user456";
pdf.SecuritySettings.AllowUserCopyPasteContent = false;
pdf.SaveAs("protected.pdf");
var pdf = PdfDocument.FromFile("document.pdf");
pdf.SecuritySettings.OwnerPassword = "owner123";
pdf.SecuritySettings.UserPassword = "user456";
pdf.SecuritySettings.AllowUserCopyPasteContent = false;
pdf.SaveAs("protected.pdf");
Dim pdf = PdfDocument.FromFile("document.pdf")
pdf.SecuritySettings.OwnerPassword = "owner123"
pdf.SecuritySettings.UserPassword = "user456"
pdf.SecuritySettings.AllowUserCopyPasteContent = False
pdf.SaveAs("protected.pdf")
Form Doldurma
var pdf = PdfDocument.FromFile("form.pdf");
pdf.Form.FindFormField("FirstName").Value = "John";
pdf.Form.FindFormField("LastName").Value = "Doe";
pdf.SaveAs("filled_form.pdf");
var pdf = PdfDocument.FromFile("form.pdf");
pdf.Form.FindFormField("FirstName").Value = "John";
pdf.Form.FindFormField("LastName").Value = "Doe";
pdf.SaveAs("filled_form.pdf");
Dim pdf = PdfDocument.FromFile("form.pdf")
pdf.Form.FindFormField("FirstName").Value = "John"
pdf.Form.FindFormField("LastName").Value = "Doe"
pdf.SaveAs("filled_form.pdf")
Sunucu Tarafı İşleme
PDFView4NET, sunucu ortamlarında çalışamaz.IronPDF burada mükemmeldir:
// ASP.NET Core
[HttpGet]
public IActionResult GeneratePdf()
{
var renderer = new ChromePdfRenderer();
var pdf = renderer.RenderHtmlAsPdf(GetReportHtml());
return File(pdf.BinaryData, "application/pdf", "report.pdf");
}
// ASP.NET Core
[HttpGet]
public IActionResult GeneratePdf()
{
var renderer = new ChromePdfRenderer();
var pdf = renderer.RenderHtmlAsPdf(GetReportHtml());
return File(pdf.BinaryData, "application/pdf", "report.pdf");
}
<HttpGet>
Public Function GeneratePdf() As IActionResult
Dim renderer As New ChromePdfRenderer()
Dim pdf = renderer.RenderHtmlAsPdf(GetReportHtml())
Return File(pdf.BinaryData, "application/pdf", "report.pdf")
End Function
Özellik Karşılaştırması Özeti
| Özellik | PDFView4NET | IronPDF |
|---|---|---|
| PDF'leri Görüntüle | Evet (UI) | Hayır (görüntüleyici kullanın) |
| PDF'leri Yükle | Evet | Evet |
| PDF'leri Kaydet | Sınırlı | Evet |
| HTML'den PDF'ye | Hayır | Evet |
| URL'yi PDF'ye çevir | Hayır | Evet |
| PDF'leri birleştir | Hayır | Evet |
| PDF Ayırma | Sınırlı | Evet |
| Filigranlar | Hayır | Evet |
| Başlıklar/Altbilgiler | Hayır | Evet |
| Şifre Koruması | Hayır | Evet |
| Dijital İmzalar | Hayır | Evet |
| Metin Çıkarma | Sınırlı | Evet |
| Formları Doldurma | Sınırlı | Evet |
| WinForms | Evet | Evet |
| WPF | Evet | Evet |
| Konsol | Sınırlı | Evet |
| ASP.NET | Hayır | Evet |
| Azure | Hayır | Evet |
| Docker | Hayır | Evet |
Geçiş Kontrol Listesi
Öncesi-Geçiş
- Görüntüleme gereksinimlerini belirle (IronPDF'nin yeteneklerinin UI tabanlı PDF görüntülemenin yerini alıp alamayacağını belirle)
- Belge yazdırma iş akışlarını belgele
- PDF manipülasyon ihtiyaçlarını listele
- Gerekirse görüntüleyici değişim planı (IronPDF oluşturma/manipülasyon odaklıdır)
- ironpdf.com adresinden IronPDF lisans anahtarını edinin
Paket Değişiklikleri
O2S.Components.PDFView4NET.Win(veya.WPF) NuGet paketini kaldırınIronPdfNuGet paketini yükleyin:dotnet add package IronPdf
Kod Değişiklikleri
- Namespace ithalatlarını güncelleyin (
using O2S.Components.PDFView4NET;→using IronPdf;) - HTML veya URL girdisi için
ChromePdfRenderertanıtın (PDFView4NET eşdeğeri yok) -new PDFDocument();document.Load(path)withPdfDocument.FromFile(path)-new PDFDocument();document.Load(stream)withPdfDocument.FromStream(stream) - Manuel
for (int i = 0; i < document.PageCount; i++)(orpdf.ExtractTextFromPage(i)) document.Close()'updf.Dispose()ile (veyausingbloğu ile) değiştirin- Uygulama başlangıcında lisans başlatma ekle
Geçiş Sonrası
- PDF yükleme ve kaydetmeyi test et
- Metin çıkarma işlevselliğini doğrula
- HTML'den PDF'e dönüştürmeyi test edin
- Sunucu dağıtımının çalıştığını doğrula (yeni yetenek)
- Gerekirse çapraz platform test et (yeni yetenek)
- Yalnızca sunucu olan PDF kodunu kaldır (UI'ye özgü)

