IRONSOFTWAREHOME
VIDEOLAR

C#'da Veri URI'leriyle Görselleri Nasıl Gömülür | IronPDF

Curtis Chau
Curtis Chau
Updated: 19 Temmuz 2026

Telerik Reporting, etkileşimli raporlar ile görsel tasarımcılar ve derinlemesine inceleme yetenekleri için güçlü bir kurumsal raporlama platformudur ve .NET geliştiricilere iyi hizmet etmiştir. Ancak, birincil ihtiyaçları PDF üretimi olan ekipler için,Telerik Reportinggenellikle lisanslama maliyetlerinde, dağıtım karmaşıklığında ve çalışma zamanı yükünde önemli bir genel temsil eder.

Bu kılavuz, profesyonel .NET geliştiricilerinin bu geçişi değerlendirirken adım adım yönergeler, kod karşılaştırmaları ve pratik örneklerle birlikte Telerik Reporting'den IronPDF'ye eksiksiz bir geçiş yolu sağlar.

Neden Telerik Reporting'ten Geçilmelidir

Telerik Reporting'ten geçiş kararı genellikle araçlarınızı gerçek gereksinimlerinize uyacak şekilde eşleştirmeye odaklanır. Geliştirme ekiplerinin geçiş düşünmesinin ana nedenleri şunlardır:

Geliştirici Başına Lisanslama: Bağımsız Telerik Raporlama, geliştirici başına ~685 $'dan başlar ve daha geniş DevCraft Complete paketi ~1.763 $'dan başlar (2026 Q1, ComponentSource). Her ikisi de süresiz + 1 yıl bakım veya yıllık abonelik olarak satılır. Yalnızca PDF üretimi ihtiyacı olan ekipler için, bu önemli kullanılmayan yetenekleri temsil eder.

Rapor Tasarımcısı Bağımlılığı: Telerik Raporlama, Standalone, Web veya Visual Studio ile entegre tasarımcıya ve özel Telerik NuGet deposundan (https://nuget.telerik.com/v3/index.json, lisans anahtarı gereklidir) derlenen çalışma zamanı derlemelerine ihtiyaç duyar. Bu, geliştirme ortamlarına ve CI/CD boru hatlarına karmaşıklık ekler.

Karmaşık Altyapı: HTML5 görüntüleyici senaryoları için ayrıca bir Raporlama REST Servisi (Telerik.Reporting.Services.AspNetCore) barındırırsınız ve depolama, çözümleyici ve görüntüleyici betik yapılandırması ile düz PDF oluşturma görevleri için bakım yükü ekleyen bir altyapı oluşturursunuz.

Özel Format: .trdp ve .trdx XML rapor tanımları (Telerik'in kendine özgü formatı - RDL/RDLC desteklenmemektedir) sizi Telerik ekosistemine kilitler. Şablonları geçirmek veya değiştirmek Telerik araçlarını gerektirir.

Ağır Çalışma Zamanı: Basit HTML'den PDF'ye dönüşüm için büyük dağıtım izleri ve ayrıca DOCX/XLSX/PPTX/XPS için isteğe bağlı işleme DLL'leri.

Yenilenebilir Bakım: Süresiz bir lisansa bile güncellemeler, düzeltmeler ve destek almaya devam etmek için bakım aboneliğinin yenilenmesi gerekir.

Telerik Reporting Aşırı Olduğunda

Temelde veri üzeri PDF üretmek içinTelerik Reportingkullanıyorsanız, muhtemelen kullanılmayan özellikler için ödeme yapıyorsunuz:

İhtiyacınız VarTelerik Sağlar (Kullanılmayan)
HTML'den PDFGörsel tasarımcı, derinlemesine inceleme
Basit raporlarEtkileşimli görüntüleyici, dışa aktarmalar
Sunucu tarafı PDF'lerMasaüstü kontrolleri, grafik motoru

IronPDF, kurumsal raporlama yükü olmadan odaklanmış PDF üretimi sağlar.

IronPDF vs Telerik Reporting: Özellik Karşılaştırması

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

ÖzellikTelerik ReportingIronPDF
OdakPDF dışa aktarma seçeneğiyle rapor oluşturmaHTML'den kapsamlı PDF üretimi
EntegrasyonASP.NET Core uygulamalarıyla sorunsuzHerhangi bir .NET uygulamasına entegre edilebilir
Kurulum KarmaşıklığıBir rapor tasarımcısının kurulumunu gerektirirBasit NuGet kurulumu
FiyatlandırmaDevCraft ticari paketinin bir parçasıAyrı lisanslama, bağımsız PDF oluşturma için daha maliyet etkilidir
PDF OluşturmaRapor dışa aktarımlarıyla sınırlıdırGelişmiş PDF manipülasyonu ile tam özellikler
Hedef KitleRapor odaklı çözümler arayan geliştiricilerEsnek PDF oluşturma çözümleri arayan geliştiriciler
Şablon Formatı.trdp / .trdx (XML; RDL/RDLC değil)HTML/CSS/Razor
Öğrenme EğrisiTelerik'e özgü (ifade dili, bölümler)Standart web teknolojileri
HTML'den PDF'yeSunucu tarafında HtmlTextBox (sınırlı HTML/CSS)Tam Chromium render
URL'den PDF'yeYerleşik değil (HTML'i kendiniz getirin)Evet
CSS DesteğiSınırlı (tasarımcıda CSS benzeri seçiciler)Tam CSS3
Çalışma zamanında JavaScriptHayır (sunucu motoru JS çalıştırmaz)Tam ES2024
Dijital İmzalarEvet (X.509 / .PFX ile PDF aygıt bilgisi)Evet
PDF/APDF/A-1b, PDF/A-2b, PDF/A-3bPDF/A-3
Çalışma Zamanı BoyutuGeniş (motor + format başına işleme DLL'leri)Daha küçük

Hızlı Başlangıç: Telerik Reporting'den IronPDF'ye Geçiş

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

Adım 1: NuGet Paketlerini Değiştirin

TümTelerik Reportingpaketlerini kaldırın:

# RemoveTelerik Reportingpackages (hosted on the private Telerik NuGet feed)
dotnet remove package Telerik.Reporting
dotnet remove package Telerik.Reporting.Services.AspNetCore
dotnet remove package Telerik.ReportViewer.Mvc
SHELL

IronPDF'i yükleyin:

# Install IronPDF(hosted on nuget.org)
dotnet add package IronPdf
SHELL

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

Telerik ad alanlarınıIronPDF ad alanı ile değiştirin:

// Before (Telerik Reporting)
using Telerik.Reporting;
using Telerik.Reporting.Processing;
using Telerik.Reporting.Drawing;

// After (IronPDF)
using IronPdf;

Adım 3: Lisansa İzin Verin

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

IronPdf.License.LicenseKey = "YOUR-LICENSE-KEY";

Kod Göç Örnekleri

HTML'yi PDF'ye Dönüştürme

En yaygın kullanım senaryosu, bu .NET PDF kütüphaneleri arasındaki mimari farkı gösterir.

Telerik Reporting Yaklaşımı:

// NuGet: Install-Package Telerik.Reporting
using Telerik.Reporting;
using Telerik.Reporting.Processing;
using System.Collections.Specialized;

class TelerikExample
{
    static void Main()
    {
        var reportSource = new Telerik.Reporting.TypeReportSource();
        var instanceReportSource = new Telerik.Reporting.InstanceReportSource();
        instanceReportSource.ReportDocument = new Telerik.Reporting.Report()
        {
            Items = { new Telerik.Reporting.HtmlTextBox() { Value = "<h1>Hello World</h1><p>Sample HTML content</p>" } }
        };
        
        var reportProcessor = new ReportProcessor();
        var result = reportProcessor.RenderReport("PDF", instanceReportSource, null);
        
        using (var fs = new System.IO.FileStream("output.pdf", System.IO.FileMode.Create))
        {
            fs.Write(result.DocumentBytes, 0, result.DocumentBytes.Length);
        }
    }
}

IronPDF Yaklaşımı:

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

class IronPdfExample
{
    static void Main()
    {
        var renderer = new ChromePdfRenderer();
        var pdf = renderer.RenderHtmlAsPdf("<h1>Hello World</h1><p>Sample HTML content</p>");
        pdf.SaveAs("output.pdf");
    }
}

Telerik versiyonunda bir TypeReportSource, bir InstanceReportSource, bir Report nesnesi ve bir HtmlTextBox, bir ReportProcessor ve manuel dosya akışı yönetimi oluşturmanız gerekir. IronPDF'nin ChromePdfRenderer tüm süreci üç satır kodla halleder.

İleri düzey HTML-to-PDF senaryoları için HTML'den PDF'ye dönüşüm rehberine bakın.

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

URL'den PDF'ye dönüştürme, Telerik Reporting'de önemli bir yetenek açığını ortaya koyar.

Telerik Reporting Yaklaşımı:

// NuGet: Install-Package Telerik.Reporting
using Telerik.Reporting;
using Telerik.Reporting.Processing;
using System.Net;

class TelerikExample
{
    static void Main()
    {
        string htmlContent;
        using (var client = new WebClient())
        {
            htmlContent = client.DownloadString("https://example.com");
        }
        
        var report = new Telerik.Reporting.Report();
        var htmlTextBox = new Telerik.Reporting.HtmlTextBox()
        {
            Value = htmlContent
        };
        report.Items.Add(htmlTextBox);
        
        var instanceReportSource = new Telerik.Reporting.InstanceReportSource();
        instanceReportSource.ReportDocument = report;
        
        var reportProcessor = new ReportProcessor();
        var result = reportProcessor.RenderReport("PDF", instanceReportSource, null);
        
        using (var fs = new System.IO.FileStream("webpage.pdf", System.IO.FileMode.Create))
        {
            fs.Write(result.DocumentBytes, 0, result.DocumentBytes.Length);
        }
    }
}

IronPDF Yaklaşımı:

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

class IronPdfExample
{
    static void Main()
    {
        var renderer = new ChromePdfRenderer();
        var pdf = renderer.RenderUrlAsPdf("https://example.com");
        pdf.SaveAs("webpage.pdf");
    }
}

Telerik Raporlama'nın yerleşik bir URL'den PDF'ye yöntemi yoktur—HTML'yi kendiniz indirirsiniz (burada WebClient kullanılarak), ve sunucu tarafı motoru JavaScript çalıştırmaz, bu nedenle dış betikler ve dinamik içerikler render edilmez. IronPDF'nin RenderUrlAsPdf yöntemi, tam olarak bir tarayıcıda göründüğü gibi tam render edilmiş sayfayı yakalar.

Kimlik doğrulama ve özel başlık seçenekleri için URL'den PDF'ye dokümantasyonu inceleyin.

Sayfa Numaralarıyla Üstbilgi ve Altbilgi Uygulama

Dinamik sayfa numaralarına sahip üstbilgi ve altbilgiler, profesyonel belgeler için gereklidir. Uygulama yaklaşımları önemli ölçüde farklılık gösterir.

Telerik Reporting Yaklaşımı:

// NuGet: Install-Package Telerik.Reporting
using Telerik.Reporting;
using Telerik.Reporting.Processing;
using Telerik.Reporting.Drawing;

class TelerikExample
{
    static void Main()
    {
        var report = new Telerik.Reporting.Report();
        
        // Add page header
        var pageHeader = new Telerik.Reporting.PageHeaderSection();
        pageHeader.Height = new Unit(0.5, UnitType.Inch);
        pageHeader.Items.Add(new Telerik.Reporting.TextBox()
        {
            Value = "Document Header",
            Location = new PointU(0, 0),
            Size = new SizeU(new Unit(6, UnitType.Inch), new Unit(0.3, UnitType.Inch))
        });
        report.PageHeaderSection = pageHeader;
        
        // Add page footer
        var pageFooter = new Telerik.Reporting.PageFooterSection();
        pageFooter.Height = new Unit(0.5, UnitType.Inch);
        pageFooter.Items.Add(new Telerik.Reporting.TextBox()
        {
            Value = "Page {PageNumber} of {PageCount}",
            Location = new PointU(0, 0),
            Size = new SizeU(new Unit(6, UnitType.Inch), new Unit(0.3, UnitType.Inch))
        });
        report.PageFooterSection = pageFooter;
        
        // Add content
        var htmlTextBox = new Telerik.Reporting.HtmlTextBox()
        {
            Value = "<h1>Report Content</h1><p>This is the main content.</p>"
        };
        report.Items.Add(htmlTextBox);
        
        var instanceReportSource = new Telerik.Reporting.InstanceReportSource();
        instanceReportSource.ReportDocument = report;
        
        var reportProcessor = new ReportProcessor();
        var result = reportProcessor.RenderReport("PDF", instanceReportSource, null);
        
        using (var fs = new System.IO.FileStream("report_with_headers.pdf", System.IO.FileMode.Create))
        {
            fs.Write(result.DocumentBytes, 0, result.DocumentBytes.Length);
        }
    }
}

IronPDF Yaklaşımı:

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

class IronPdfExample
{
    static void Main()
    {
        var renderer = new ChromePdfRenderer();
        
        // Configure header and footer
        renderer.RenderingOptions.HtmlHeader = new HtmlHeaderFooter()
        {
            HtmlFragment = "<div style='text-align:center'>Document Header</div>"
        };
        
        renderer.RenderingOptions.HtmlFooter = new HtmlHeaderFooter()
        {
            HtmlFragment = "<div style='text-align:center'>Page {page} of {total-pages}</div>"
        };
        
        var pdf = renderer.RenderHtmlAsPdf("<h1>Report Content</h1><p>This is the main content.</p>");
        pdf.SaveAs("report_with_headers.pdf");
    }
}

Telerik Raporlama, PageHeaderSection ve PageFooterSection nesneleri oluşturmayı, Unit ölçümlerini yapılandırmayı, Location ve Size özelliklerini ayarlamayı ve belirli koordinatlarla TextBox öğelerini yönetmeyi gerektirir. IronPDF'nin HTML tabanlı yaklaşımı, tanıdık CSS stilini ve {page} ve {total-pages} gibi basit yer tutucular kullanır.

Üstbilgi ve altbilgi belgelerine göz atarak üstbilgi ve altbilgi seçenekleri hakkında daha fazla bilgi edinin.

Telerik Reporting API to IronPDF Haritalandırma Referansı

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

Telerik ReportingIronPDF
Report sınıfıChromePdfRenderer
ReportProcessorrenderer.RenderHtmlAsPdf()
ReportSourceHTML dizgisi veya dosyası
.trdp / .trdx dosyalarıHTML/CSS şablonları
ReportParameterDizgi interpolasyonu / Razor
ReportDataSourceC# veri bağlama
RenderReport("PDF")RenderHtmlAsPdf()
Export()pdf.SaveAs()
TextBox rapor öğesiHTML <span>, <p>, <div>
Table rapor öğesiHTML <table>
PictureBoxHTML <img>
PageSettingsRenderingOptions

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

Sorun 1: Rapor Tanımları (.trdp/.trdx dosyaları)

Telerik Reporting, doğrudan dönüştürülemeyen özel XML rapor tanımlarını kullanır.

Çözüm: Raporu tasarımcısında açarak, düzeni, veri bağlamalarını ve formatlamayı belgeleyip ardından HTML/CSS şablonlar olarak yeniden oluşturarak HTML şablonlarına dönüştürün. Karmaşık senaryolarda veri bağı için Razor kullanın.

Sorun 2: Veri Kaynağı Bağlama

Telerik Raporlama SqlDataSource ve ifade bağlayıcı ile nesne veri kaynaklarını kullanır.

Çözüm: Verileri C# ile alın ve HTML'ye bağlayın:

var data = await dbContext.Orders.ToListAsync();
var html = $"<table>{string.Join("", data.Select(d => $"<tr><td>{d.Name}</td></tr>"))}</table>";

Sorun 3: Rapor Parametreleri

Telerik Raporlama yerleşik parametre kullanıcı arayüzü ile ReportParameter kullanır.

Çözüm: Parametreleri doğrudan HTML oluşturma işlemine iletin:

public string GenerateReport(string customerId, DateTime fromDate)
{
    return $"<h1>Report for {customerId}</h1><p>From: {fromDate:d}</p>";
}

Sorun 4: Etkileşimli Özellikler

Telerik Reporting, görüntüleyicisinde drill-down, sıralama ve filtreleme sağlar.

**Çözüm:**IronPDF statik PDF'ler oluşturur. Etkileşim için verileri web arayüzünüzde tutun ve kullanıcı 'Dışa Aktar'a tıkladığında PDF oluşturun. Bu, etkileşimli veri keşfi ile belge oluşturma işlevlerini ayırır.

Telerik Reporting Geçiş Kontrol Listesi

Geçiş Öncesi Görevler

Telerik Reporting kullanımını belirlemek için kod tabanınızı denetleyin:

grep -r "using Telerik.Reporting" --include="*.cs" .
grep -r "Report\|ReportProcessor" --include="*.cs" .
SHELL

Veri kaynaklarını ve parametreleri belgeleyin, mevcut rapor düzenlerinin görsel referansı için ekran görüntüsü alın ve yeniden kullanılabilir HTML şablonlarına dönüştürülebilecek ortak rapor bileşenlerini belirleyin.

Kod Güncelleme Görevleri

  1. Telerik NuGet paketlerini kaldırın 2.IronPDF NuGet paketini yükleyin
  2. .trdx dosyalarını HTML şablonlarına dönüştür
  3. ReportProcessor ile ChromePdfRenderer değiştir
  4. Veri bağlamayı dize interpolasyonu veya Razor ile güncelleyin
  5. Başlıkları/altbilgileri HtmlHeaderFooter kullanarak HTML'ye dönüştür
  6. Başlangıçta lisans başlatmayı ekleyin

Geçiş Sonrası Testler

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

  • PDF çıktısını orijinal raporlara karşı görsel olarak karşılaştırın
  • Üretilen PDF'lerde veri doğruluğunu doğrulayın
  • Çok sayfalı belgeler için sayfalamayı test edin
  • Tüm sayfalarda başlıkların/altlıkların doğru göründüğünü kontrol edin
  • Yüksek hacim senaryoları için performans testi yapın

IronPDF'e Geçmenin Temel Faydaları

Telerik Reporting'den IronPDF'ye geçmek, PDF üretimine odaklanmış ekipler için çeşitli avantajlar sağlar:

Modern Chromium İşleme Motoru: IronPDF, aynı işleme motorunu Google Chrome gibi kullanır, bu da PDF'lerin modern tarayıcılarda görünen içerik gibi doğru şekilde işlenmesini sağlar. Tam CSS3 ve JavaScript desteği, web tasarımlarınızın doğrudan PDF'ye çevrilmesi anlamına gelir.

Kapsamlı Lisanslama: IronPDF, kapsamlı bir süit satın almayı gerektirmeyen geliştirici başına lisans sunar. Sadece PDF üretimine ihtiyacı olan ekipler için bu, önemli maliyet tasarrufu anlamına gelir.

Standart Web Teknolojileri: HTML, CSS ve JavaScript, her web geliştiricisinin sahip olduğu becerilerdir. Öğrenilecek veya özel tasarım araçları gereken herhangi bir özel şablon formatı yoktur.

Daha Küçük Dağıtım Ayak İzi: Rapor hizmeti altyapısı ve tasarım bileşenleri olmadan, dağıtımlar daha basit ve daha hızlıdır.

Aktif Geliştirme: IronPDF'nin düzenli güncellemeleri, modern .NET sürümlerini takip eder, böylece modern .NET üzerindeki projeler, üç ayda bir rapor sürümünü beklemeksizin desteklenmeye devam eder.

Lütfen dikkate alın: Telerik, ilgili sahibinin tescilli ticari markasıdır. Bu site, Progress Software ile ilişkili, onaylanmış veya desteklenmiş değildir. 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ılandırılmış, görsel olarak çekici kılavuzlar oluşturmayı seviyor.

...
Daha Fazla Oku

İlgili Makaleler

Key in blue circle

Ücretsiz 30 günlük Deneme Anahtarınızı anında edinin.

Your trial license will be sent to your email address

Herhangi bir sınırlama yoktur. %100 erişim. Kredi kartı gerekmez.

bullet_checkedKredi kartı veya hesap oluşturma gerektirmezHerhangi bir sınırlama yoktur. %100 erişim. Kredi kartı gerekmez.
  • Logo Aetna
  • Logo NASA
  • Logo GE
  • Logo Porsche
  • Logo USDA
  • Logo Qatar
Join Millions of Engineers who’ve tried IronPDF
Ücretsiz Canlı Demo rezervasyonu yapın
Booking Badge

Dünya Çapında Milyonlarca Mühendisin Güvendiği

Iron Software müşteri logoları
Bağımsız Danışmanlık Alın
Aşağıdaki formu doldurun veya sales@ironsoftware.com adresine e-posta gönderin
Bilgileriniz daima gizli kalacaktır.
Dünya Çapında Milyonlarca Mühendisin Güvendiği
Iron Software müşteri logoları
Ücretsiz 30 Günlük Deneme Anahtarınızı anında alın.
Kredi kartı veya hesap oluşturma gerektirmez