C# ile PDF'lerde Metin ve Bitmap Çizimi Nasıl Yapılır

C# ile PDF'lere Metin ve Bitmap Çizme

This article was translated from English: Does it need improvement?
Translated
View the article in English

IronPDF, DrawText ve DrawBitmap yöntemlerini kullanarak mevcut PDF'lere metin ve resim eklemenize olanak tanır. Böylece, orijinal içeriği değiştirmeden filigranlar, logolar, açıklamalar ve geliştirilmiş görsel görünüm ile özelleştirme yapabilirsiniz.

PDF üzerinde metin ve görüntü çizimi, mevcut bir belgeye içerik eklemeyi içerir. IronPDF, bu özelliği sorunsuz bir şekilde etkinleştirir. Metin ve resim ekleyerek, PDF'leri filigranlar, logolar ve notlar ile özelleştirebilir, belgenin görsel görünümünü ve markanızı artırabilirsiniz. Ayrıca, metin ve görüntüler bilgi sunumunu, veri görselleştirmeyi ve etkileşimli form oluşturmayı kolaylaştırır.

Hızlı Başlangıç: IronPDF ile PDF'lere Metin ve Görüntüler Ekleme

PDF belgelerinizi metin ve resimlerle hızlı ve etkili bir şekilde geliştirmeye başlayın. DrawText ve DrawBitmap yöntemlerini kullanarak, filigran, logo veya açıklama ekleyerek PDF'leri kolayca özelleştirebilirsiniz. Bu örnek, metni belirli koordinatlarda nasıl çizeceğinizi ve PDF'inize sorunsuz bir şekilde bir resim ekleyeceğinizi göstermektedir.

  1. IronPDF aşağıdaki NuGet Paket Yöneticisi ile yükleyin

    PM > Install-Package IronPdf
  2. Bu kod parçacığını kopyalayın ve çalıştırın.

    new ChromePdfRenderer()
        .RenderHtmlAsPdf("<h1>Doc</h1>")
        .DrawText("Hello World", FontTypes.TimesNewRoman.Name, 12, 0, 100, 100, Color.Black, 0)
        .DrawBitmap(AnyBitmap.FromFile("logo.png"), 0, 50, 250, 500, 300)
        .SaveAs("annotated.pdf");
  3. Canlı ortamınızda test için dağıtım yapın

    Ücretsiz deneme ile bugün projenizde IronPDF kullanmaya başlayın

    arrow pointer


PDF Üzerine Metin Nasıl Çizerim?

DrawText nesnesinde bulunan PdfDocument yöntemi, orijinal içeriğini değiştirmeden mevcut bir PDF'ye metin eklemenizi sağlar. Bu yöntem, PDF'lere dinamik içerik eklemek için özellikle yararlıdır, daha karmaşık yerleşimler için metin ve görüntü damgalama özelliğine benzer.

Koordinat Sistemini Anlamak

Metin çizmeden önce, PDF koordinat sistemini anlayın. Orijin (0,0), sayfanın sol alt köşesinde bulunur; X değerleri sağa doğru, Y değerleri ise yukarı doğru artar. Bu, kökenin sol üstte olduğu birçok grafik sisteminden farklıdır.

:path=/static-assets/pdf/content-code-examples/how-to/draw-text-and-bitmap-draw-text.cs
using IronPdf;
using IronSoftware.Drawing;

ChromePdfRenderer renderer = new ChromePdfRenderer();
PdfDocument pdf = renderer.RenderHtmlAsPdf("<h1>testing</h1>");

// Draw text on PDF
pdf.DrawText("Some text", FontTypes.TimesNewRoman.Name, FontSize: 12, PageIndex: 0, X: 100, Y: 100, Color.Black, Rotation: 0);

pdf.SaveAs("drawText.pdf");
Imports IronPdf
Imports IronSoftware.Drawing

Dim renderer As New ChromePdfRenderer()
Dim pdf As PdfDocument = renderer.RenderHtmlAsPdf("<h1>testing</h1>")

' Draw text on PDF
pdf.DrawText("Some text", FontTypes.TimesNewRoman.Name, FontSize:=12, PageIndex:=0, X:=100, Y:=100, Color.Black, Rotation:=0)

pdf.SaveAs("drawText.pdf")
$vbLabelText   $csharpLabel

Hangi Yazı Tiplerini Kullanabilirim?

DrawText yöntemi şu anda Courier, Arial (veya Helvetica), TimesNewRoman, Symbol ve ZapfDingbats dahil olmak üzere tüm Standart Yazı Tiplerini desteklemektedir. Bu yazı tipi türlerinin italik, kalın ve eğik varyantları için Yazı Tiplerini Yönet makalesindeki 'IronPDF'de Standart Yazı Tipleri' bölümünü ziyaret edin.

ZapfDingbats yazı tipi ▲ gibi sembolleri gösterebilir. Desteklenen sembollerinin kapsamlı bir listesi için Zapf Dingbats üzerine Wikipedia'yı ziyaret edin.

PDF üzerinde yazı tipi örneği

Kalın, italik ve eğik varyasyonlarla Arial, Courier, Helvetica ve Times New Roman ailelerini gösteren yazı tipi örnekleri

Metni Satır Sonlarıyla Nasıl Ekleyebilirim?

Metin çizme eylemi, satır sonu karakterlerini destekler ve metni daha iyi biçimlendirme ve görsel netlik için yerleşik satır sonları ile oluşturmanıza olanak tanır. Bu, çok satırlı açıklama eklerken veya yapılandırılmış metin düzenleri oluştururken kullanışlıdır.

Bunu sağlamak için metin dizesine newline characters (\n) ekleyin. Yukarıdaki örneği kullanarak:

// Multi-line text example with proper spacing
string textWithNewlines = "Some text\nSecond line\nThird line with more content";
pdfDoc.DrawText(textWithNewlines, font, position);

// You can also use Environment.NewLine for platform-specific line breaks
string platformText = $"Line 1{Environment.NewLine}Line 2{Environment.NewLine}Line 3";
pdfDoc.DrawText(platformText, font, position);
// Multi-line text example with proper spacing
string textWithNewlines = "Some text\nSecond line\nThird line with more content";
pdfDoc.DrawText(textWithNewlines, font, position);

// You can also use Environment.NewLine for platform-specific line breaks
string platformText = $"Line 1{Environment.NewLine}Line 2{Environment.NewLine}Line 3";
pdfDoc.DrawText(platformText, font, position);
' Multi-line text example with proper spacing
Dim textWithNewlines As String = "Some text" & vbLf & "Second line" & vbLf & "Third line with more content"
pdfDoc.DrawText(textWithNewlines, font, position)

' You can also use Environment.NewLine for platform-specific line breaks
Dim platformText As String = $"Line 1{Environment.NewLine}Line 2{Environment.NewLine}Line 3"
pdfDoc.DrawText(platformText, font, position)
$vbLabelText   $csharpLabel

Özel Yazı Tiplerini Nasıl Kullanırım?

Özel yazı tipleri DrawText yöntemi ile desteklenir ve tipografi seçeneklerinizi standart yazı tiplerinin ötesine taşır. Bu özellik, marka tutarlılığını korurken veya özel fontlarla çalışırken gereklidir. Gelişmiş yazı tipi yönetimi için PDF'lerde yazı tiplerini yönetme rehberimize bakın.

Aşağıda, metin için eklenen Pixelify Sans Fontu ile bir örnek bulunmaktadır:

:path=/static-assets/pdf/content-code-examples/how-to/draw-text-and-bitmap-draw-custom-font.cs
using IronPdf;
using IronSoftware.Drawing;
using System.IO;

ChromePdfRenderer renderer = new ChromePdfRenderer();
PdfDocument pdf = renderer.RenderHtmlAsPdf("<h1>testing</h1>");

// Add custom font to the PDF
byte[] fontByte = File.ReadAllBytes(@".\PixelifySans-VariableFont_wght.ttf");
var addedFont = pdf.Fonts.Add(fontByte);

// Draw text on PDF
pdf.DrawText("Iron Software", addedFont.Name, FontSize: 12, PageIndex: 0, X: 100, Y: 600, Color.Black, Rotation: 0);

pdf.SaveAs("drawCustomFont.pdf");
Imports IronPdf
Imports IronSoftware.Drawing
Imports System.IO

Private renderer As New ChromePdfRenderer()
Private pdf As PdfDocument = renderer.RenderHtmlAsPdf("<h1>testing</h1>")

' Add custom font to the PDF
Private fontByte() As Byte = File.ReadAllBytes(".\PixelifySans-VariableFont_wght.ttf")
Private addedFont = pdf.Fonts.Add(fontByte)

' Draw text on PDF
pdf.DrawText("Iron Software", addedFont.Name, FontSize:= 12, PageIndex:= 0, X:= 100, Y:= 600, Color.Black, Rotation:= 0)

pdf.SaveAs("drawCustomFont.pdf")
$vbLabelText   $csharpLabel

Gelişmiş Metin Konumlandırma

Metni tam olarak konumlandırırken bu ipuçlarını dikkate alın:

  • Sayfa Boyutları: Sayfa boyutlarını almak için pdf.Pages[pageIndex].Width ve pdf.Pages[pageIndex].Height kullanın
  • Döndürme: Döndürme parametresi, açılı metin için derece (0-360) kabul eder
  • Renk Seçenekleri: Temel renklerin ötesinde, RGB değerlerini kullanın: Color.FromArgb(255, 100, 100)

PDF Üzerine Nasıl Görüntü Çizerim?

IronPDF'nin DrawBitmap yöntemi, mevcut PDF belgelerine bitmap eklemenizi sağlar. Bu yöntem, mevcut PDF dosyalarına resim damgalamanıza olanak sağlayan Image Stamper özelliğine benzer şekilde çalışır. Karmaşık görüntü işleme ihtiyaçlarınız için PDF'lere görsel ekleme kılavuzumuzu inceleyin.

Lütfen dikkate alınDrawBitmap yöntemi büyük resimlerde en iyi sonucu verir. Küçük çözünürlüklü görüntüler kullandığınızda, aşağıdaki istisnayla karşılaşabilirsiniz: IronPdf.Exceptions.IronPdfNativeException: 'Görüntü çizerken hata: veri uzunluğu (567000) beklenenden daha az (756000)'. Bu sorunu aşmak için, tüm boyutlardaki görüntüleri işleyen Image Stamper'ı kullanın.

Örnek resim

Renkli 3D kilitli geometrik tasarımı ile markalı arka planda Iron Software logosu

Uygulama Nasıl Görünür?

:path=/static-assets/pdf/content-code-examples/how-to/draw-text-and-bitmap-draw-bitmap.cs
using IronPdf;
using IronSoftware.Drawing;

ChromePdfRenderer renderer = new ChromePdfRenderer();
PdfDocument pdf = renderer.RenderHtmlAsPdf("<h1>testing</h1>");

// Open the image from file
AnyBitmap bitmap = AnyBitmap.FromFile("ironSoftware.png");

// Draw the bitmp on PDF
pdf.DrawBitmap(bitmap, 0, 50, 250, 500, 300);

pdf.SaveAs("drawImage.pdf");
Imports IronPdf
Imports IronSoftware.Drawing

Dim renderer As New ChromePdfRenderer()
Dim pdf As PdfDocument = renderer.RenderHtmlAsPdf("<h1>testing</h1>")

' Open the image from file
Dim bitmap As AnyBitmap = AnyBitmap.FromFile("ironSoftware.png")

' Draw the bitmap on PDF
pdf.DrawBitmap(bitmap, 0, 50, 250, 500, 300)

pdf.SaveAs("drawImage.pdf")
$vbLabelText   $csharpLabel

Çıktı PDF

Hangi Ek Parametreler Mevcuttur?

  • PixelFormat: PixelFormat özelliği, bitmap için renk veri biçimini belirtir ve öncelikle saydamlık desteğini kontrol eder. Varsayılan değer Format32bppArgb'dir. Parametreyi bir seçenek olarak geçirerek Format32bppRgb ve Format32bppArgb piksel enum formatları arasında seçim yapın. Bu, PDF'lerdeki arka plan ve ön plan öğeleriyle çalışırken faydalıdır.

  • IgnorePageRotation: Bu bool özelliği, yöntemin bitmap çizilirken sayfa döndürmeyi göz ardı edip etmeyeceğini belirler. Varsayılan olarak, değer false'dur. Dönüşten bağımsız olarak tüm sayfalara tutarlı bir şekilde filigran uygularken özellikle faydalıdır.

Yaygın Kullanım Durumları ve En İyi Uygulamalar

PDF'ler üzerine metin ve görüntü çizerken, bu pratik uygulamaları göz önünde bulundurun:

  1. Dinamik Filigranlama: Şirket logoları veya "GİZLİ" damgaları ekleyerek hassas belgeleri işaretleyin
  2. Sayfa Numaralandırma: Tüm sayfalarda tutarlı konumlarda sayfa numaraları yerleştirin.
  3. İmza Yerleştirme: Formlarda belirlenen yerlere imza görselleri ekleyin
  4. Başlık/Altbilgi Geliştirmesi: Mevcut başlıkları dinamik içerikle tamamlayın

PDF işlemlerini hata ayıklama ve izleme için, çizim işlemlerini izlemek ve doğru yürütülmesini sağlamak amacıyla özel kaydetme uygulayın.

Performans Hususları

Birden çok sayfa veya büyük belgelerle çalışırken:

  • Bellek kullanımını en aza indirmek için mümkün olduğunda toplu işlemler yapın
  • Bitmap nesnelerini kullandıktan sonra serbest bırakarak kaynakları boşaltın
  • Sık kullanılan görselleri ön yüklemeyi düşünün, performansı artırmak için

Başka neler yapabileceğinizi görmek için hazır mısınız? Öğretici sayfamıza buradan göz atın: PDF Düzenle

Sıkça Sorulan Sorular

Mevcut PDF'lere metin ve resimler eklemek için hangi yöntemleri kullanabilirim?

IronPDF, mevcut PDF'lere içerik eklemek için iki ana yöntem sunar: metin eklemek için DrawText yöntemi ve resimler eklemek için DrawBitmap yöntemi. Bu yöntemler, PDF'leri orijinal belge içeriğini değiştirmeden filigranlar, logolar ve açıklamalarla özelleştirmenize olanak tanır.

Metin çizerken PDF koordinat sistemi nasıl çalışır?

IronPDF'de PDF koordinat sisteminin kökeni sayfanın alt-sol köşesinde (0,0) yer alır. X değerleri sağa, Y değerleri ise yukarı doğru hareket ederek artar. Bu, kökeni üst-sol köşede olan birçok grafik sisteme göre farklılık gösterir.

PDF'lerde metin çizerken hangi yazı tipleri desteklenir?

IronPDF'nin DrawText yöntemi, Courier, Arial (Helvetica), Times New Roman, Symbol ve ZapfDingbats dahil olmak üzere tüm Standart Yazı Tiplerini destekler. Bu yazı tipleri ayrıca italik, kalın ve eğik varyantlarda da mevcuttur. ZapfDingbats yazı tipi, özel sembolleri görüntülemek için kullanılabilir.

Tek bir işlemde bir PDF'ye hem metin hem de resim ekleyebilir miyim?

Evet, IronPDF, yöntemleri birleştirme olanağı tanır. Bir PDF oluşturmak için ChromePdfRenderer'ı kullanabilir, ardından PDF belgenize birden fazla öğe eklemeyi verimli hale getirmek için DrawText ve DrawBitmap yöntemlerini yalnızca tek bir kod satırında ardışık olarak uygulayabilirsiniz.

PDF'lere metin ve resimleri çizerken yaygın kullanım alanları nelerdir?

IronPDF'nin çizim yetenekleri genellikle belgeleri koruma amacıyla filigran eklemek, markalaşma için şirket logoları eklemek, belge incelemesi için açıklamalar oluşturmak, görsel görünümü iyileştirmek, veri görselleştirmeyi kolaylaştırmak ve etkileşimli formlar oluşturmak için kullanılı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
Başlamaya Hazır mısınız?
Nuget İndirmeler 19,014,616 | Sürüm: 2026.5 just released
Still Scrolling Icon

Hâlâ Kaydırıyor Musunuz?

Hızlıca kanıt ister misiniz? PM > Install-Package IronPdf
bir örnek çalıştır HTML'nizi bir PDF'ye dönüştüğünü izleyin.