Altbilgi içeriğine atla
GEçIş KıLAVUZLARı

C#'ta PDFmyURL'den IronPDF'ye Nasıl Geçilir

PDFmyURL, URL'ler ve HTML içeriğini PDF belgelerine dönüştürmek için tasarlanmış bulut tabanlı bir API hizmetidir. Hizmet, tüm dönüşümleri harici sunucularda işleyerek, minimal yerel altyapı gerektiren basit bir entegrasyon yolu sağlar. Ancak, bu bulut bağımlı mimari, hassas verilerle başa çıkarken, çevrimdışı yetenek gereksinimi olan veya sürekli abonelik maliyetlerinden kaçınması gereken üretim uygulamaları için önemli endişeler yaratır.

Bu kılavuz, PDFmyURL'den IronPDF'e eksiksiz bir geçiş yolu sağlayarak, bu geçişi değerlendiren profesyonel .NET geliştiricileri için adım adım talimatlar, kod karşılaştırmaları ve pratik örnekler sunar.

Neden PDFmyURL'den Geçmelisiniz?

PDFmyURL'ün bulut işleme modeli, geliştirme ekiplerinin göz önünde bulundurması gereken birkaç zorluk sunar:

Gizlilik ve Veri Güvenliği: Çevirdiğiniz her belge PDFmyURL'nin sunucularına gider ve oradan geçer—hassas sözleşmeler, finans raporları ve kişisel veriler hepsi dışarıda işlenir.

Sürekli Abonelik Maliyetleri: Planlar ayda $20'den (Başlangıç, 500 PDF), ayda $40'den (Profesyonel, 2.000 PDF) ve ayda $70'den (Gelişmiş, 5.000 PDF), hiçbir seviyede sahiplik yok. Bu abonelik modeli, kullanım alışkanlıklarından bağımsız olarak sürekli harcama anlamına gelir.

İnternet Bağımlılığı: Her dönüşüm ağ bağlantısı gerektirir. Uygulamalar çevrimdışı veya ağ kesintileri sırasında PDF işleyemez.

Kota Sınırlamaları ve Darboğazlar: Yoğun kullanım sırasında API çağrıları kısıtlanabilir, bu da uygulama performansını etkileyebilir.

Hizmet Erişilebilirliği: Uygulamanızın çevrimiçi ve işlevsel olan üçüncü taraf bir hizmete bağımlılığı vardır.

Tedarikçiye Bağlılık: API değişiklikleri entegrasyonunuzu öncüllü olarak kesebilir ve reaktif kod güncellemeleri gerektirir.

IronPDF vs PDFmyURL: Özellik Karşılaştırması

Mimari farklılıkları anlamak, teknik karar vericilerin geçiş yatırımını değerlendirmesine yardımcı olur:

Aspekt PDFmyURL IronPDF
İşleme Yeri Harici sunucular Yerel (sunucunuz)
Tür API Sarmalayıcı .NET Kütüphanesi
Kimlik Doğrulama Her istek için API anahtarı Tek seferlik lisans anahtarı
Ağ Gerekli Her dönüşüm Sadece ilk kurulum
Fiyatlandırma Modeli Aylık abonelik ($20–$70+) Süresiz lisans mevcut
Oran Sınırlamaları Evet (plan bağımlı) None
Veri Gizliliği Veri harici olarak gönderilir Veri yerel kalır
HTML/CSS/JS Desteği Sunucu tarafı betimleme (W3C uyumlu) Tam Chrome motoru
Async Pattern HTTP isteği (ağa bağlı) Sync ve async seçenekleri
PDF Manipülasyonu Sınırlı Tam paket (birleştirme, bölme, düzenleme)
Kullanım Durumu Düşük hacimli uygulamalar Yüksek hacimli ve kurumsal

Hızlı Başlangıç: PDFmyURL'den IronPDF'e Geçiş

Geçiş bu öncü adımlarla hemen başlayabilir.

Adım 1: IronPDF'i Yükleyin

PDFmyURL için bir NuGet paketi yoktur — hizmet bir REST API'dir ve opsiyonel PDFmyURL.NET.dll bileşeni doğrudan bir DLL indirmesi olarak sunulur (nuget.org'da değil). Çoğu entegrasyon, API'yi WebClient / HttpClient ile çağırır, bu nedenle geçiş esas olarak paket referanslarından ziyade kodla ilgilidir. Eğer PDFmyURL.NET.dll montajını kullandıysanız, geçiş yaptıktan sonra projeden referansı kaldırın.

# Install IronPDF
dotnet add package IronPdf
# Install IronPDF
dotnet add package IronPdf
SHELL

Adım 2: Ad Alanlarını Güncelleyin

PDFmyURL içe aktarımlarınıIronPDF ile değiştirin:

// Before:PDFmyURL— either plain HttpClient/WebClient against pdfmyurl.com/api,
// or the optional .NET component:
using PDFmyURLdotNET;          // only if you used PDFmyURL.NET.dll
using System.Net;               // WebClient / HttpClient

// After: IronPDF
using IronPdf;
using IronPdf.Rendering;
// Before:PDFmyURL— either plain HttpClient/WebClient against pdfmyurl.com/api,
// or the optional .NET component:
using PDFmyURLdotNET;          // only if you used PDFmyURL.NET.dll
using System.Net;               // WebClient / HttpClient

// After: IronPDF
using IronPdf;
using IronPdf.Rendering;
Imports PDFmyURLdotNET ' only if you used PDFmyURL.NET.dll
Imports System.Net ' WebClient / HttpClient

' After: IronPDF
Imports IronPdf
Imports IronPdf.Rendering
$vbLabelText   $csharpLabel

Adım 3: Lisansa İzin Verin

Uygulama başlangıcında lisans başlatmayı ekleyin:

IronPdf.License.LicenseKey = "YOUR-LICENSE-KEY";
IronPdf.License.LicenseKey = "YOUR-LICENSE-KEY";
IronPdf.License.LicenseKey = "YOUR-LICENSE-KEY"
$vbLabelText   $csharpLabel

Kod Göç Örnekleri

URL'leri PDF'ye Dönüştürme

URL-to-PDF işlemi,PDFmyURLve IronPDF arasındaki temel API farklılıklarını gösterir.

PDFmyURL Yaklaşımı:

//PDFmyURLREST API — no NuGet SDK. Docs: https://pdfmyurl.com/html-to-pdf-api
using System;
using System.Net;

class Example
{
    static void Main()
    {
        string license = "your-license-key";
        string url = "https://example.com";

        try
        {
            using (var client = new WebClient())
            {
                client.QueryString.Add("license", license);
                client.QueryString.Add("url", url);
                // PDF binary is returned in the response body
                client.DownloadFile("https://pdfmyurl.com/api", "output.pdf");
            }
        }
        catch (WebException ex)
        {
            Console.WriteLine("Error: " + ex.Message);
        }
    }
}
//PDFmyURLREST API — no NuGet SDK. Docs: https://pdfmyurl.com/html-to-pdf-api
using System;
using System.Net;

class Example
{
    static void Main()
    {
        string license = "your-license-key";
        string url = "https://example.com";

        try
        {
            using (var client = new WebClient())
            {
                client.QueryString.Add("license", license);
                client.QueryString.Add("url", url);
                // PDF binary is returned in the response body
                client.DownloadFile("https://pdfmyurl.com/api", "output.pdf");
            }
        }
        catch (WebException ex)
        {
            Console.WriteLine("Error: " + ex.Message);
        }
    }
}
Imports System
Imports System.Net

Module Example

    Sub Main()
        Dim license As String = "your-license-key"
        Dim url As String = "https://example.com"

        Try
            Using client As New WebClient()
                client.QueryString.Add("license", license)
                client.QueryString.Add("url", url)
                ' PDF binary is returned in the response body
                client.DownloadFile("https://pdfmyurl.com/api", "output.pdf")
            End Using
        Catch ex As WebException
            Console.WriteLine("Error: " & ex.Message)
        End Try
    End Sub

End Module
$vbLabelText   $csharpLabel

IronPDF Yaklaşımı:

// NuGet: Install-Package IronPdf
using IronPdf;
using System;

class Example
{
    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 Example
{
    static void Main()
    {
        var renderer = new ChromePdfRenderer();
        var pdf = renderer.RenderUrlAsPdf("https://example.com");
        pdf.SaveAs("output.pdf");
    }
}
Imports IronPdf
Imports System

Class Example
    Shared Sub Main()
        Dim renderer As New ChromePdfRenderer()
        Dim pdf = renderer.RenderUrlAsPdf("https://example.com")
        pdf.SaveAs("output.pdf")
    End Sub
End Class
$vbLabelText   $csharpLabel

PDFmyURL, her dönüşümde https://pdfmyurl.com/api'ye bir HTTP bağlantısı açılmasını, license jetonunun ve hedef url'nin sorgu (veya form) parametreleri olarak eklenmesini ve yanıt gövdesinin diske yazılmasını gerektirir. Hatalar, HTTP durum koduna göre WebException olarak yüzeye çıkar.

IronPDF bunu üç satıra indirir: bir ChromePdfRenderer oluşturun, RenderUrlAsPdf() çağırın ve yerleşik SaveAs() yöntemini kullanın. Her istek için kimlik bilgileri gerekli değil — lisans, uygulama başlangıcında bir kez ayarlanır.

Gelişmiş URL-to-PDF senaryoları için URL to PDF dökümantasyonuna bakın.

HTML Metin Dizelerini PDF'e Dönüştürme

HTML metin dönüşümü, desen farklılıklarını açıkça gösterir.

PDFmyURL Yaklaşımı:

//PDFmyURLREST API — no NuGet SDK. Send the raw HTML in the `html` parameter.
// Docs: https://pdfmyurl.com/html-to-pdf-api
using System;
using System.Collections.Specialized;
using System.IO;
using System.Net;

class Example
{
    static void Main()
    {
        string license = "your-license-key";
        string html = "<html><body><h1>Hello World</h1></body></html>";

        try
        {
            using (var client = new WebClient())
            {
                var values = new NameValueCollection
                {
                    { "license", license },
                    { "html", html }
                };
                // POST form-encoded; response body is the PDF binary
                byte[] pdfBytes = client.UploadValues("https://pdfmyurl.com/api", "POST", values);
                File.WriteAllBytes("output.pdf", pdfBytes);
            }
        }
        catch (WebException ex)
        {
            Console.WriteLine("Error: " + ex.Message);
        }
    }
}
//PDFmyURLREST API — no NuGet SDK. Send the raw HTML in the `html` parameter.
// Docs: https://pdfmyurl.com/html-to-pdf-api
using System;
using System.Collections.Specialized;
using System.IO;
using System.Net;

class Example
{
    static void Main()
    {
        string license = "your-license-key";
        string html = "<html><body><h1>Hello World</h1></body></html>";

        try
        {
            using (var client = new WebClient())
            {
                var values = new NameValueCollection
                {
                    { "license", license },
                    { "html", html }
                };
                // POST form-encoded; response body is the PDF binary
                byte[] pdfBytes = client.UploadValues("https://pdfmyurl.com/api", "POST", values);
                File.WriteAllBytes("output.pdf", pdfBytes);
            }
        }
        catch (WebException ex)
        {
            Console.WriteLine("Error: " + ex.Message);
        }
    }
}
Imports System
Imports System.Collections.Specialized
Imports System.IO
Imports System.Net

Class Example
    Shared Sub Main()
        Dim license As String = "your-license-key"
        Dim html As String = "<html><body><h1>Hello World</h1></body></html>"

        Try
            Using client As New WebClient()
                Dim values As New NameValueCollection From {
                    {"license", license},
                    {"html", html}
                }
                ' POST form-encoded; response body is the PDF binary
                Dim pdfBytes As Byte() = client.UploadValues("https://pdfmyurl.com/api", "POST", values)
                File.WriteAllBytes("output.pdf", pdfBytes)
            End Using
        Catch ex As WebException
            Console.WriteLine("Error: " & ex.Message)
        End Try
    End Sub
End Class
$vbLabelText   $csharpLabel

IronPDF Yaklaşımı:

// NuGet: Install-Package IronPdf
using IronPdf;
using System;

class Example
{
    static void Main()
    {
        var renderer = new ChromePdfRenderer();
        string html = "<html><body><h1>Hello World</h1></body></html>";
        var pdf = renderer.RenderHtmlAsPdf(html);
        pdf.SaveAs("output.pdf");
    }
}
// NuGet: Install-Package IronPdf
using IronPdf;
using System;

class Example
{
    static void Main()
    {
        var renderer = new ChromePdfRenderer();
        string html = "<html><body><h1>Hello World</h1></body></html>";
        var pdf = renderer.RenderHtmlAsPdf(html);
        pdf.SaveAs("output.pdf");
    }
}
Imports IronPdf
Imports System

Class Example
    Shared Sub Main()
        Dim renderer = New ChromePdfRenderer()
        Dim html As String = "<html><body><h1>Hello World</h1></body></html>"
        Dim pdf = renderer.RenderHtmlAsPdf(html)
        pdf.SaveAs("output.pdf")
    End Sub
End Class
$vbLabelText   $csharpLabel

PDFmyURL, ham HTML'i html form parametresiyle API son noktasına POST eder ve yanıt gövdesi olarak görüntülenmiş PDF'i döndürür. IronPDF'nin RenderHtmlAsPdf() her şeyi yerel olarak Chromium render motorunu kullanarak işler.

Daha fazla seçenek için HTML to PDF dönüşüm kılavuzuna göz atın.

Sayfa Ayarları ile HTML Dosya Dönüştürme

Kâğıt boyutunu, yönünü ve kenar boşluklarını yapılandırmak her kütüphanede farklı yaklaşımlar gerektirir.

PDFmyURL Yaklaşımı:

//PDFmyURLREST API — no NuGet SDK. Page settings are sent as query/form parameters.
// Parameter reference: https://pdfmyurl.com/html-to-pdf-api
using System;
using System.Collections.Specialized;
using System.IO;
using System.Net;

class Example
{
    static void Main()
    {
        string license = "your-license-key";
        string html = File.ReadAllText("input.html");

        try
        {
            using (var client = new WebClient())
            {
                var values = new NameValueCollection
                {
                    { "license",     license },
                    { "html",        html },
                    { "page_size",   "A4" },
                    { "orientation", "landscape" },
                    { "top",         "10" },
                    { "unit",        "mm" }
                };
                byte[] pdfBytes = client.UploadValues("https://pdfmyurl.com/api", "POST", values);
                File.WriteAllBytes("output.pdf", pdfBytes);
            }
        }
        catch (WebException ex)
        {
            Console.WriteLine("Error: " + ex.Message);
        }
    }
}
//PDFmyURLREST API — no NuGet SDK. Page settings are sent as query/form parameters.
// Parameter reference: https://pdfmyurl.com/html-to-pdf-api
using System;
using System.Collections.Specialized;
using System.IO;
using System.Net;

class Example
{
    static void Main()
    {
        string license = "your-license-key";
        string html = File.ReadAllText("input.html");

        try
        {
            using (var client = new WebClient())
            {
                var values = new NameValueCollection
                {
                    { "license",     license },
                    { "html",        html },
                    { "page_size",   "A4" },
                    { "orientation", "landscape" },
                    { "top",         "10" },
                    { "unit",        "mm" }
                };
                byte[] pdfBytes = client.UploadValues("https://pdfmyurl.com/api", "POST", values);
                File.WriteAllBytes("output.pdf", pdfBytes);
            }
        }
        catch (WebException ex)
        {
            Console.WriteLine("Error: " + ex.Message);
        }
    }
}
Imports System
Imports System.Collections.Specialized
Imports System.IO
Imports System.Net

Class Example
    Shared Sub Main()
        Dim license As String = "your-license-key"
        Dim html As String = File.ReadAllText("input.html")

        Try
            Using client As New WebClient()
                Dim values As New NameValueCollection From {
                    {"license", license},
                    {"html", html},
                    {"page_size", "A4"},
                    {"orientation", "landscape"},
                    {"top", "10"},
                    {"unit", "mm"}
                }
                Dim pdfBytes As Byte() = client.UploadValues("https://pdfmyurl.com/api", "POST", values)
                File.WriteAllBytes("output.pdf", pdfBytes)
            End Using
        Catch ex As WebException
            Console.WriteLine("Error: " & ex.Message)
        End Try
    End Sub
End Class
$vbLabelText   $csharpLabel

IronPDF Yaklaşımı:

// NuGet: Install-Package IronPdf
using IronPdf;
using IronPdf.Rendering;
using System;

class Example
{
    static void Main()
    {
        var renderer = new ChromePdfRenderer();
        renderer.RenderingOptions.PaperSize = PdfPaperSize.A4;
        renderer.RenderingOptions.PaperOrientation = PdfPaperOrientation.Landscape;
        renderer.RenderingOptions.MarginTop = 10;
        var pdf = renderer.RenderHtmlFileAsPdf("input.html");
        pdf.SaveAs("output.pdf");
    }
}
// NuGet: Install-Package IronPdf
using IronPdf;
using IronPdf.Rendering;
using System;

class Example
{
    static void Main()
    {
        var renderer = new ChromePdfRenderer();
        renderer.RenderingOptions.PaperSize = PdfPaperSize.A4;
        renderer.RenderingOptions.PaperOrientation = PdfPaperOrientation.Landscape;
        renderer.RenderingOptions.MarginTop = 10;
        var pdf = renderer.RenderHtmlFileAsPdf("input.html");
        pdf.SaveAs("output.pdf");
    }
}
Imports IronPdf
Imports IronPdf.Rendering
Imports System

Class Example
    Shared Sub Main()
        Dim renderer As New ChromePdfRenderer()
        renderer.RenderingOptions.PaperSize = PdfPaperSize.A4
        renderer.RenderingOptions.PaperOrientation = PdfPaperOrientation.Landscape
        renderer.RenderingOptions.MarginTop = 10
        Dim pdf = renderer.RenderHtmlFileAsPdf("input.html")
        pdf.SaveAs("output.pdf")
    End Sub
End Class
$vbLabelText   $csharpLabel

PDFmyURL, sayfaları `page_size=A4, \orientation=landscapeve marj alanlarını (\top, \bottom, \left, \right) içeren form parametreleri ekleyerek ve birunit(örneğin,mm,in) ile yapılandırır. IronPDF, millimetre olarak marjlar için tamsayı değerlerleRenderingOptions` aracılığıyla güçlü tipte özellikler sağlar.

PDFmyURL API to IronPDF Eşleme Referansı

Bu eşleştirme, doğrudan API eşdeğerlerini göstererek geçişi hızlandırır:

Çekirdek Sınıflar / Giriş Noktaları

PDFmyURL IronPDF
WebClient / HttpClient gönderimi https://pdfmyurl.com/api 'a ChromePdfRenderer
PDFmyURLdotNET.PDFmyURL (PDFmyURL.NET.dll'dan opsiyonel .NET bileşeni) ChromePdfRenderer
Form / sorgu parametreleri ChromePdfRenderOptions
HTTP yanıt gövdesi baytları PdfDocument

Metotlar

PDFmyURL IronPDF
WebClient.DownloadFile(".../api?license=...&url=...", file) renderer.RenderUrlAsPdf(url).SaveAs(file)
html= parametresi ile POST renderer.RenderHtmlAsPdf(html)
File.ReadAllText("input.html") daha sonra html= POST renderer.RenderHtmlFileAsPdf(path)
pdf.ConvertURL(url, file) (PDFmyURL.NET.dll) renderer.RenderUrlAsPdf(url).SaveAs(file)
pdf.ConvertHTML(html, file) (PDFmyURL.NET.dll) renderer.RenderHtmlAsPdf(html).SaveAs(file)
HTTP yanıt gövdesi (`byte[]`) pdf.BinaryData
HTTP yanıt akışı new MemoryStream(pdf.BinaryData)

Yapılandırma Seçenekleri

PDFmyURL ayarları HTTP isteği üzerinde form/sorgu parametreleri olarak iletilir. Aşağıdaki tablo, gerçekPDFmyURLparametre adlarını IronPDF'nin RenderingOptions ile eşleştirir.

PDFmyURL parametresi IronPDF (RenderingOptions)
page_size=A4 .PaperSize = PdfPaperSize.A4
page_size=Letter .PaperSize = PdfPaperSize.Letter
orientation=landscape .PaperOrientation = PdfPaperOrientation.Landscape
orientation=portrait .PaperOrientation = PdfPaperOrientation.Portrait
top=10&unit=mm .MarginTop = 10
bottom=10&unit=mm .MarginBottom = 10
left=10&unit=mm .MarginLeft = 10
right=10&unit=mm .MarginRight = 10
header=<html> .HtmlHeader = new HtmlHeaderFooter { HtmlFragment = html }
footer=<html> .HtmlFooter = new HtmlHeaderFooter { HtmlFragment = html }
javascript_time=500 .RenderDelay = 500
no_javascript=true .EnableJavaScript = false
css_media_type=print .CssMediaType = PdfCssMediaType.Print

Kimlik Doğrulama Karşılaştırması

PDFmyURL IronPDF
license=<key> her API isteğinde sorgu/form parametresi IronPdf.License.LicenseKey = "LICENSE-KEY"
Her istek için lisans tokeni Başlangıçta yalnızca bir kez
Her çağrı için gerekli Küresel olarak bir kez ayarlayın

Yaygın Göç Sorunları ve Çözümleri

Sorun 1: Lisans Tokeni vs Lisans Anahtarı

PDFmyURL: Her API isteğinde license jetonunu gerektirir.

Çözüm:IronPDF lisansını uygulama başlatıldığında bir kez ayarlayın:

// PDFmyURL: license token per request
client.QueryString.Add("license", "your-license-key");

// IronPDF: One-time license at startup
IronPdf.License.LicenseKey = "YOUR-LICENSE-KEY";
// Set once, typically in Program.cs or Startup.cs
// PDFmyURL: license token per request
client.QueryString.Add("license", "your-license-key");

// IronPDF: One-time license at startup
IronPdf.License.LicenseKey = "YOUR-LICENSE-KEY";
// Set once, typically in Program.cs or Startup.cs
' PDFmyURL: license token per request
client.QueryString.Add("license", "your-license-key")

' IronPDF: One-time license at startup
IronPdf.License.LicenseKey = "YOUR-LICENSE-KEY"
' Set once, typically in Program.vb or Startup.vb
$vbLabelText   $csharpLabel

Probleme 2: Başlık/Altbilgilerde Yer Tutucu Sözdizimi

PDFmyURL: [page] ve `[topage]gibi jetonlarıheader/footer` form parametrelerinde kullanır (kanonik jeton listesi için canlı API referansına bakınız).

Çözüm: HtmlHeaderFooter.HtmlFragment içinde IronPDF'nin yer tutucu formatına güncelleyin:

// PDFmyURL: "Page [page] of [topage]"
// IronPDF: "Page {page} of {total-pages}"
// PDFmyURL: "Page [page] of [topage]"
// IronPDF: "Page {page} of {total-pages}"
' PDFmyURL: "Page [page] of [topage]"
' IronPDF: "Page {page} of {total-pages}"
$vbLabelText   $csharpLabel

Probleme 3: Async Desenler

PDFmyURL: Uzak bir HTTP çağrısıdır; genellikle HttpClient.PostAsync ile pdfmyurl.com/api karşı çağrılır.

Çözüm: IronPDF, varsayılan olarak süreç içi ve eşzamanlıdır; gerekirse eşzamansız sarma için kullanın:

// PDFmyURL: HTTP request to the public endpoint
var response = await http.PostAsync("https://pdfmyurl.com/api", form);

// IronPDF: Sync by default, wrap for async
var pdf = await Task.Run(() => renderer.RenderUrlAsPdf(url));
// PDFmyURL: HTTP request to the public endpoint
var response = await http.PostAsync("https://pdfmyurl.com/api", form);

// IronPDF: Sync by default, wrap for async
var pdf = await Task.Run(() => renderer.RenderUrlAsPdf(url));
Imports System.Net.Http
Imports System.Threading.Tasks

' PDFmyURL: HTTP request to the public endpoint
Dim response = Await http.PostAsync("https://pdfmyurl.com/api", form)

' IronPDF: Sync by default, wrap for async
Dim pdf = Await Task.Run(Function() renderer.RenderUrlAsPdf(url))
$vbLabelText   $csharpLabel

Probleme 4: Hata Yönetimi

PDFmyURL: HTTP düzeyinde hatalar (geçersiz lisans, hız sınırı, ağ hatası, hizmet mevcut değil) WebException / başarısız durum kodları olarak yüzeye çıkar.

Çözüm: IronPDF'nin türlenmiş istisnaları için catch bloklarını güncelleyin:

// PDFmyURL: WebException from the HTTP call
catch (WebException e) { ... }

// IronPDF: Typed exceptions
catch (IronPdf.Exceptions.IronPdfRenderingException e) { ... }
// PDFmyURL: WebException from the HTTP call
catch (WebException e) { ... }

// IronPDF: Typed exceptions
catch (IronPdf.Exceptions.IronPdfRenderingException e) { ... }
$vbLabelText   $csharpLabel

Probleme 5: Yapılandırma Deseni

PDFmyURL: Yapılandırma, HTTP isteği üzerinde form/sorgu parametreleri olarak geçirilir.

Çözüm: Güçlü türlendirilmiş RenderingOptions özelliklerini kullanın:

// PDFmyURL: form/query parameters
values.Add("page_size", "A4");
values.Add("orientation", "landscape");

// IronPDF: Properties with enums
renderer.RenderingOptions.PaperSize = PdfPaperSize.A4;
renderer.RenderingOptions.PaperOrientation = PdfPaperOrientation.Landscape;
// PDFmyURL: form/query parameters
values.Add("page_size", "A4");
values.Add("orientation", "landscape");

// IronPDF: Properties with enums
renderer.RenderingOptions.PaperSize = PdfPaperSize.A4;
renderer.RenderingOptions.PaperOrientation = PdfPaperOrientation.Landscape;
' PDFmyURL: form/query parameters
values.Add("page_size", "A4")
values.Add("orientation", "landscape")

' IronPDF: Properties with enums
renderer.RenderingOptions.PaperSize = PdfPaperSize.A4
renderer.RenderingOptions.PaperOrientation = PdfPaperOrientation.Landscape
$vbLabelText   $csharpLabel

PDFmyURL Geçiş Kontrol Listesi

Geçiş Öncesi Görevler

PDFmyURL kullanımının hepsini belirlemek için kod tabanınızı denetleyin:

# FindPDFmyURLendpoint and component usage
grep -r "pdfmyurl.com/api\|PDFmyURLdotNET\|new PDFmyURL(" --include="*.cs" .

# Find license-token references
grep -r "license=\|licensekey" --include="*.cs" --include="*.json" --include="*.config" .

# Find placeholder patterns to migrate
grep -r "\[page\]\|\[topage\]" --include="*.cs" .
# FindPDFmyURLendpoint and component usage
grep -r "pdfmyurl.com/api\|PDFmyURLdotNET\|new PDFmyURL(" --include="*.cs" .

# Find license-token references
grep -r "license=\|licensekey" --include="*.cs" --include="*.json" --include="*.config" .

# Find placeholder patterns to migrate
grep -r "\[page\]\|\[topage\]" --include="*.cs" .
SHELL

Kullanılan mevcut yapılandırma parametrelerini belgelerken (sayfa_boyutu, yönlendirme, kenar boşlukları, başlık/altbilgi, vb.) Lisans anahtarı saklama planını ortam değişkenleri kullanarak yapın.

Kod Güncelleme Görevleri

  1. Opsiyonel PDFmyURL.NET.dll referansını kullandıysanız kaldırın (kaldırmak için bir NuGet paketi yoktur) 2.IronPDF NuGet paketini kurun
  2. Tüm ad alanı ithalatlarını güncelleyin
  3. Her istekteki license jetonunu IronPdf.License.LicenseKey ile değiştirin
  4. Form/sorgu parametrelerini RenderingOptions özelliklerine dönüştürün
  5. Başlık / alt bilgilerdeki yer tutucu sözdizimini güncelleyin (örneğin, [page]{page}, [topage]{total-pages})
  6. Hata işleme kodunu güncelleyin (`WebException` typed IronPDF istisnaları)
  7. Başlangıçta IronPDF lisans başlatması ekleyin

Geçiş Sonrası Testler

Geçiş sonrasında bu yönleri doğrulayın:

  • PDF çıktısının kalitesinin beklentilere uyduğunu test edin
  • Eşzamansız desenlerin doğru çalıştığını doğrulayın
  • Önceki çıktı ile render doğruluğunu karşılaştırın
  • Tüm şablon varyasyonlarının doğru göründüğünden emin olun
  • Sayfa ayarlarının (boyut, yön, kenar boşlukları) doğru olduğunu doğrulayın
  • Linux sunucularına dağıtım yapılıyorsa Linux bağımlılıklarını yükleyin

IronPDF'e Geçmenin Temel Faydaları

PDFmyURL'den IronPDF'ye geçiş, birkaç kritik avantaj sunar:

Tam Gizlilik: Belgeleriniz sunucunuzu asla terk etmez. Tüm işlemler yerel olarak gerçekleşir, hassas içerikler için veri güvenlik endişelerini ortadan kaldırır.

Tek Seferlik Ücret: Süresiz lisans seçeneği, sürekli abonelik ücretlerini ortadan kaldırır. Kullanım hacmine bakılmaksızın artık aylık ödemeler yok.

Çevrimdışı Yeteneği: İlk kurulumdan sonra internet olmadan çalışır. Ağ kesintileri PDF oluşturmayı etkilemez.

Hız Sınırı Yok: Sınırsız belgeleri işlem kapasitesi olmadan işleyin.

Düşük Gecikme Süresi: Ağ yükü olmadığından daha hızlı dönüşümler sağlar, özellikle yüksek hacimli uygulamalar için.

Tam Denetim: İşleme ortamını üçüncü bir taraf değil siz kontrol edersiniz.

Modern Chromium Motoru: Chrome tarayıcısını güçlendiren aynı render motoru ile tam CSS3 ve JavaScript desteği.

Aktif Geliştirme: IronPDF'nin düzenli güncellemeleri, mevcut modern .NET sürümleriyle uyumluluğu garanti eder.

Lütfen dikkate alınPDFmyURL, kendi sahibi olan tescilli markadır. Bu site, PDFmyURL'ün sahibi ile ilişkilendirilmemiştir, onaylanmamıştır ve sponsor olunmamıştır. Tüm ürün adları, logolar ve markalar kendi sahiplerine aittir. Karşılaştırmalar, yalnızca bilgilendirme amaçlıdır ve yazı sırasında halka açık bilgilerle alakalı olarak yansıtılmaktadır.

Curtis Chau
Teknik Yazar

Curtis Chau, Bilgisayar Bilimleri alanında Lisans Derecesine (Carleton Üniversitesi) sahip ve Node.js, TypeScript, JavaScript ve React konularında uzmanlaşmış ön uç geliştirmeyle ilgileniyor. Sezgisel ve estetik açıdan hoş kullanıcı arayüzleri oluşturma tutkunu, Curtis modern çerçevelerle çalışmayı ve iyi yapı...

Daha Fazla Oku

Iron Destek Ekibi

Haftada 5 gün, 24 saat çevrimiçiyiz.
Sohbet
E-posta
Beni Ara