Sayfa Oluşturma

Sayfa Oluşturma

Aspose.PDF FOSS for .NET, PDF içeriği oluşturmak için paragraf tabanlı bir yerleşim motoru sağlar. Tablolar, yüzen kutular, üstbilgi/altbilgi ve damgalar, içerik akışı operatörlerini manuel olarak oluşturmanıza gerek kalmadan yapılandırılmış sayfalar oluşturmanıza olanak tanır.


Paragraflar ekleme

Page.Paragraphs içerik öğeleri eklemek için giriş noktasıdır.

using var doc = new Document();
var page = doc.Pages.Add();

page.Paragraphs.Add(new TextFragment("Hello, PDF!"));
doc.Save("hello.pdf");

Tablolar

Table satırları, cells, sütun genişliklerini, kenarlıkları ve metin durumunu destekler.

var table = new Table();
table.ColumnWidths = "100 200 100";

var row = table.Rows.Add();
row.Cells.Add("Name");
row.Cells.Add("Description");
row.Cells.Add("Price");

page.Paragraphs.Add(table);

Hücre biçimlendirme

Cells.Add bir Cell döndürür; burada kenarlıkları, dolguyu ve iç içe geçmiş içeriği yapılandırabilirsiniz.

var cell = row.Cells.Add("Styled cell");
cell.Border = new BorderInfo(BorderSide.All, 0.5f);
cell.Margin = new MarginInfo(5, 5, 5, 5);

Yüzen kutular

FloatingBox sayfadaki içeriği mutlak koordinatlarda konumlandırır.

var box = new FloatingBox(200, 100);
box.Left = 72;
box.Top = 700;
box.Paragraphs.Add(new TextFragment("Positioned text"));
page.Paragraphs.Add(box);

Üstbilgiler ve altbilgiler

HeaderFooter sayfaların üstüne veya altına yinelenen içerik ekler.

var header = HeaderFooter.FromText("Document Title");
header.ApplyAsHeader(page);

var footer = HeaderFooter.FromText("Page {0}");
footer.ApplyAsFooter(page);

Sayfa damgaları

PdfPageStamp bir PDF sayfasının içeriğini diğerine bindirir.

var stamp = new PdfPageStamp("watermark.pdf");
stamp.Put(page);

İpuçları ve En İyi Uygulamalar

  • Table.ColumnWidths‘i, düzeni kontrol etmek için nokta değerlerinin boşlukla ayrılmış dizesi olarak kullanın.
  • FloatingBox, mutlak konumlandırma için kullanışlıdır — yapılandırılmış içerik için Table ile birleştirin.
  • HeaderFooter.FromText, sayfa numarası yer tutucu olarak {0}‘yi destekler.
  • Save‘yi çağırmadan önce tüm paragrafları ekleyin — düzen motoru içeriği sırayla işler.
  • BorderInfo‘yi, tablolara, hücrelere ve yüzen kutulara kenarlık eklemek için kullanın.

Yaygın Sorunlar

IssueCauseFix
Tablo sayfayı aşıyorBir sayfa için çok fazla satırKütüphane otomatik sayfalama yapar; gerekirse kenar boşluklarını ayarlayın
Üstbilgi görünmüyorApplyAsHeader, Save‘den sonra çağrıldıKaydetmeden önce üstbilgileri uygulayın
FloatingBox yanlış konumdaKoordinatlar paragraf birimlerinde sol üst köşeden ölçülürBirimlerin beklentilerinize uygun olduğunu doğrulayın

SSS

Çok sayfalı tablolar oluşturabilir miyim?

Evet. Bir tablo mevcut sayfa yüksekliğini aştığında, otomatik olarak bir sonraki sayfada devam eder.

Tablo hücrelerine nasıl resim eklerim?

Image paragrafı oluşturun ve hücrenin Paragraphs koleksiyonuna ekleyin.

Bir diziden bir tabloya veri içe aktarabilir miyim?

Evet. İki boyutlu bir diziden bir tablo doldurmak için Table.ImportArray kullanın.


API Referans Özeti

Sınıf / YöntemAçıklama
ParagraphsBir sayfadaki sıralı içerik öğeleri
Paragraphs.AddBir paragraf öğesi ekle (metin, tablo, grafik vb.)
TableSatırlar, hücreler ve sütun genişlikleriyle ızgara düzeni
Table.ImportArrayTabloyu bir diziyle doldur
RowsTablodaki satır koleksiyonu
CellsTablo satırındaki hücre koleksiyonu
BorderInfoTablolar, hücreler ve kutular için kenarlık stilizasyonu
FloatingBoxMutlak konumlandırılmış içerik kapsayıcısı
HeaderFooterTekrarlayan başlık veya altbilgi içeriği
HeaderFooter.FromTextMetin şablonundan başlık/altbilgi oluştur
PdfPageStampBir PDF sayfasını damga olarak üst üste yerleştir

Ayrıca Bakınız

 Türkçe