İçeriğe geç

NextPDF Connect ile HTML tablosu oluşturma

Yapılandırılmış sıralı verileri bir HTML tablo dizesinden üretin. add_table, girişi yerleşimden önce katı bir DOMDocument izin listesiyle temizler; böylece kaynak işaretleme değişse bile çıktı tutarlı kalır. Core’daki create_pdf, add_table ve output_pdf araçlarını kullanın. Tablo, row/column ızgarası biçiminde yerleştirilir (CSS Tables 3 §3.1).

Terminal window
composer require nextpdf/server

Bir aktarımı bağlayın. Giriş, <table> kökünü, <tr> satırlarını ve <th>/<td> hücrelerini içermelidir.

add_table, sabit bir öğe izin listesi uygular (table, thead, tbody, tfoot, tr, th, td, caption, b, i, u, strong, em, br, p, span). Tüm öznitelikler her öğeden kaldırılır: style, class, width, colspan, rowspan, id ve diğerleri. İzin listesi dışındaki her etiket, kendi metin içeriğiyle değiştirilir. Hücre metni, belgenin etkin yazı tipi durumunu kullanır; bunu set_font ile add_table öncesinde ayarlarsınız. Metin, içerik akışındaki sırayla metin gösterme işleçleri tarafından yazılır (ISO 32000-2 §9.4). Sütun genişliklerine satır içi CSS değil, yerleşim motoru karar verir.

AraçRolRisk düzeyi
create_pdfOturumu açarGüvenli
set_fontHücre metni yazı tipini ayarlar (isteğe bağlı, add_table öncesinde)Dikkat
add_tableTabloyu temizler ve yerleştirirDikkat
output_pdfPDF’yi oluşturur ve döndürürOnay gerekli / İnceleme (base64)

Kayıtlı resmi katalog Araç kataloğu sayfasıdır. Kullanabileceğiniz araçlar, kurulu katmana bağlıdır.

  1. create_pdf (A4 dikey, başlık) → document_id.
  2. add_table, eksiksiz bir <table>...</table> dizesiyle (başlık satırı ve veri satırları).
  3. output_pdf → base64 veya bir file_path ile denetimli dosya yazma.

İmleç, en son işlenen satırın altına iner ve sonraki içerik için yer bırakır.

HyperText Markup Language (HTML) içeriğini göndermeden önce doğrulayın. Belirlenimci tipografi için hücre yazı tipini set_font ile ayarlayın. Varsayılana güvenirseniz, çıktı yazı tipi uygulamaya bağımlı olur. Ana makinenin hangi araçları çağırabileceğini denetlemek için kayıt defterini güvenlik ilkesiyle kısıtlayın.

  • Boş veya tablo olmayan HTML. <table> içermeyen giriş, işlenebilir-tablo-yok hatası döndürür.
  • Bozuk işaretleme. Dengesiz etiketler bir ayrıştırma hatası döndürür; bu nedenle önce yapıyı doğrulayın.
  • Sayfadan daha geniş tablo. Sütun sayısını azaltın, içeriği kısaltın veya yatay yönlendirmeye geçin.
  • Taşma. Uzun bir tablo yeni bir sayfaya akar. Yanıttaki position.page değerini denetleyin veya önceden add_page çağırın.

Küçük bir tablo bütçe sınırları içinde işlenir; çıktı birkaç KB boyutunda olur. Profil structural profilidir. Temizleme işlemi, ayrıştırılan DOM üzerinde tek geçişte çalışır.

Öznitelik kaldırma koşulsuzdur ve atlatılamaz. Bu, hücre işaretlemesi yoluyla yapılan stil ve betik enjeksiyonuna karşı koruma sağlar. Hiçbir satır içi CSS, olay işleyicisi veya javascript: URL’si korunmaz. İzin listesi güven sınırıdır; bu nedenle işlenen çıktıyı kaynakta verilen keyfi stillerin birebir kopyası olarak değerlendirmeyin.

İfadeBelirtimMaddereference_id
Tablolar, bir row/column hücre ızgarası olarak yerleştirilir.CSS Tables 3§3.1
Metin, akış sırasına göre metin işleçleri tarafından gösterilir.ISO 32000-2§9.4

Geçerli değil — buradaki her araç Core’dur.

CSS destek matrisinden alıntı (yalnızca doğrulanmış)

“CSS destek matrisinden alıntı (yalnızca doğrulanmış)” başlıklı bölüm

add_table, genel amaçlı bir CSS motoru çalıştırmaz. Tek “CSS” davranışı, sabit tablo ızgara modelidir: satırlar ve sütunlar tablo yapısından gelir, genişlikleri ise yerleşim motoru seçer. Öznitelikler kaldırıldığı için satır içi stil tasarım gereği desteklenmez. Motor düzeyindeki (Connect dışı) CSS kapsamı için projenin CSS destek matrisine bakın.

add_table, sağlanan işaretlemeyi bir kez bir DOM’a ayrıştırır ve tek geçişte yerleştirir. Harici stil sayfalarına göre yeniden akış yapmaz. Sayfaya sığmayan tablo, geriye dönük olarak yeniden akmak yerine bir sonraki sayfaya geçer.

Çok büyük tablolarda, ayrıştırılan DOM ve yerleştirilen hücreler çağrı boyunca bellekte tutulur. Tepe bellek bütçesi içinde kalmak için büyük veri kümelerini birden çok add_table çağrısına bölün.

AktarımKullanılabilirNotlar
MCP (stdio)EvetBüyük HTML, stdio çerçevesini büyütür.
RESTEvetHTML’yi istek gövdesinde gönderin.
gRPCEvetTekil çağrı; ileti boyutu sınırları geçerlidir.

create_pdf Güvenli’dir; set_font ve add_table Dikkat düzeyindedir; output_pdf Onay gerekli düzeyindedir; base64 kipinde İnceleme düzeyine indirilir. Dosya çıktısı Onay gerekli düzeyinde kalır. output-approval bölümüne bakın.

Base64 çıktısı:

{ "allowed": true }

Dosya çıktısı, output-approval bölümünde belgelenen sınama zarfını döndürür.