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

FormatGerçek native tüketim
PNG grayscale1, 2, 4, 8 ve 16-bit örnekler; packed örnekler 8 bite genişletilir ve 16-bit hassasiyet korunur
PNG RGB8 ve 16-bit renk örnekleri
PNG indexed renk1, 2, 4 ve 8-bit indeksler, palet üzerinden RGB örneklerine genişletilir
PNG saydamlıkGrayscale 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 interlaceTüm beş PNG satır filter'ı ve Adam7 geçişleri; paylaşılan native zlib ve predictor uygulamalarıyla doğrulanır
JPEG8-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