Otomatik XFA native grafikler ve görüntüler
Birim: HPDFXFAHeadless
HPDFXFAWriteHeadlessPDF, dikdörtgen, satır, arc ve inline görüntü draw callback'lerini doğrudan XDP'den tüketir; mevcut metin ve widget tüketicileriyle birlikte
Her draw, gerçek layout sayfasına yerleştirilen native bir Form XObject üretir; görüntü draw'ları, gerektiğinde gerçek Image XObject'leri ve alpha soft mask'ler içerir
Vektör path'leri
Dikdörtgenler, native PDF dikdörtgen path'leri kullanır; satırlar slash veya ters-eğik çizgi eğimini korur; eliptik arc'lar, en fazla 90 derecelik kübik segmentleri kullanır
İlk etkin edge, RGB stroke rengini ve kalınlığını sağlar; subpoint genişlikler dâhil; stroke appearance sınırları, yarım kalınlığı dâhil eder; böylece form kendi kenarlığını kırpmaz
Arc'lar, startAngle'ı ve işaretli sweepAngle'ı tüketir; varsayılan tam tur ve maksimum mutlak sweep 360 dereceyle
Draw döndürme, ölçekleme ve çeviri ipuçları, draw merkezini çevreleyen sonlu bir affine yerleşimde bir kez uygulanır; ters-saat-yönü pozitif döndürmeyle; üst-sol XFA koordinatları, native PDF kökenine bir kez dönüştürülür
PNG ve JPEG
| Format | Gerçek native tüketim |
|---|---|
| PNG grayscale | 1, 2, 4, 8 ve 16-bit örnekler; packed örnekler 8 bite genişletilir ve 16-bit hassasiyet korunur |
| PNG RGB | 8 ve 16-bit renk örnekleri |
| PNG indexed renk | 1, 2, 4 ve 8-bit indeksler, palet üzerinden RGB örneklerine genişletilir |
| PNG saydamlık | Grayscale ve RGB saydam örnekler, palet alpha ve 8 veya 16-bit grayscale-alpha ve RGBA; gerçek /SMask stream'leri alpha hassasiyetini korur |
| PNG filtering ve interlace | Tüm beş PNG satır filter'ı ve Adam7 geçişleri; paylaşılan native zlib ve predictor uygulamalarıyla doğrulanır |
| JPEG | 8-bit baseline ve progressive grayscale, RGB ve CMYK çerçeveler; orijinal /DCTDecode stream korumadan önce paylaşılan native JPEG decoder'ıyla doğrulanır |
PNG chunk checksum'ları, sıralama, boyutlar, palet indeksleri, saydam örnek aralıkları ve tam açılmış uzunluk, aday kesinleştirmeden önce denetlenir; kesilmiş veya aşırı sıkıştırılmış veri, hazırlığı başarısız kılar
JPEG çerçeve boyutları, gerçek native çözümlemeyle uyuşmalıdır ve Adobe CMYK inversion'ı, görüntü dictionary'sinde açıkça bildirilir
JPEG, mevcut native TurboJPEG runtime'ını gerektirir; HOTPDF_TURBOJPEG_LIBRARY, mutlak bir kütüphane yolu tanımlayabilir; bağımlı kütüphaneler, işletim sistemi tarafından keşfedilir
Görüntü en-boy'u fit, none, width, height ve actual destekler; PNG pHYs ve JPEG JFIF yoğunluğu, fiziksel piksel boyutunu belirler; kullanılabilir yoğunluk yokken 96 dpi kullanılır
Ölçeklenmiş görüntüler, XFA draw dikdörtgenine ortalanır ve kırpılır; alpha bileştirme, native bir PDF reader işlemi olarak kalır
Sınırlar ve transaction
Kodlanmış görüntü baytları, çözülmüş working tamponları ve ham görüntü veya alpha stream'leri, tahsisten önce sınırlanır; native nesne sınırları ve toplam görüntü ve yazı tipi stream sınırları aktif kalır
Cancellation, chunk'ları çözerken, veriyi açarken, satırları çözerken ve native nesneleri yerleştirirken denetlenir; mevcut native JPEG decoder'ı, çağıran token'ı alır
Hazırlık hataları, hedef konumunu, uzunluğu ve baytları korur; nihai hedef WriteBuffer, çağıran stream'in kendi I/O semantiğini izler
Güncel sınırlar
Dolgulu şekiller, corner stillendirme, kenara-özgü kenarlıklar, dash pattern'leri, barkodlar, harici görüntü transport'u, imageEdit widget'ları, alternatif görüntü formatları, gömülü renk profilleri ve Exif yönelimi hâlâ ek tüketici entegrasyonu gerektirir
Animasyonlu PNG, varsayılan statik görüntüsü olarak tüketilir; yabancı XML exData ayrı bir özellik olarak kalır ve bu draw adapter, keyfi gömülü nesneleri yürütmez
Kabul
Tests/Linux/Build-XFAHeadlessGraphicFixtures.py, deterministik satır-filter, Adam7, örnek-hassasiyeti, saydamlık, fiziksel-en-boy, JPEG ve hatalı protokol fixture'ları üretir
Tests/Linux/XFAHeadlessGraphicsTests.pas, gerçek native PDF'ler yazar ve yeniden açar ve hatalarda çağıran korumasını doğrular; Verify-XFAHeadlessGraphics.py, çözülmüş görüntü örneklerini, /SMask hassasiyetini, vektör operator'lerini, yerleşimi ve render edilmiş pikselleri pypdf ve MuPDF ile bağımsız denetler
Otomatik XFA native PDF oluşturması, mevcut alan ve metin tüketicilerini ve public options ve sonuç API'lerini anlatır