İçeriğe geç

PDF/UA-2 (ISO 14289-2) belirtim eşlemesi

Bu sayfa, NextPDF Core özelliklerini PDF/UA-2 (Portable Document Format/Universal Accessibility 2; ISO 14289-2) hükümleriyle eşler. Kitaplığın hangi hükümleri karşılamanıza yardımcı olduğunu ve hangi hükümlerin açıkça kapsam dışında kaldığını belirtir. Bu, bir uygunluk iddiası değildir. Uyumlu bir dosya; içeriğinize, kaynak işaretlemenize ve harici bir PDF/UA denetleyicisiyle yapılan doğrulamaya bağlıdır.

Terminal window
composer require nextpdf/core

PDF/UA-2 (ISO 14289-2), erişilebilir PDF dosyaları için gereksinimleri tanımlar. Bu gereksinimler, ISO 32000-2 §14.7 mantıksal yapı olanaklarına ve ISO 32000-2 §14.9 erişilebilirlik destek girişlerine dayanır. Uyumlu bir dosya, kendisini ISO 14289-2 §5 tanımlama şemasıyla tanımlar ve kökünde tek bir Document öğesi bulunan bir yapı ağacı taşır (ISO 14289-2 §8.2.5.2). Yardımcı teknolojinin her etiketi bilinen bir role çözümleyebilmesi için standart yapı türlerini kullanır.

NextPDF, bu model için oluşturma temelini sağlar: yapı ağacı oluşturma, standart rol eşleme, anlamsal HTML’den işaretlenmiş içerik etiketleme ve BCP-47 dil öznitelikleri. NextPDF, kaynak içerikte bulunmayan anlamsal bilgileri çıkarsamaz. NextPDF uygunluk denetleyicisi çalıştırmaz. Bu temel, yardımcı teknolojinin yapı ağacını kullandığı ISO 14289-2 §3.1 modelini hedefler. Belirli bir belgenin her hükmü karşılayıp karşılamadığını sizin girdiniz ve harici bir doğrulayıcı belirler.

Hüküm alanıNextPDF giriş noktası
Etiketli PDF’yi etkinleştirme, mark-info, katalog diliDocument::enableTaggedPdf(string $lang, ?ConformancePolicy)
Belge düzeyinde doğal dilDocument::setLanguage(string $lang)
Yapı ağacı ve tek Document köküStructureTree::createRoot(), StructureTree::addElement()
Standart yapı türü sözlüğüRoleMap::standard()
Öğe başına dil, alternatif metin ve değiştirme metniStructureElement kurucu öznitelikleri
BCP-47 katı doğrulamaBcp47Validator, ConformancePolicy::strictUa2()
Sezgisel düzeltme (isteğe bağlı)AccessibilityAutoFixerRegistry
<?php
declare(strict_types=1);
use NextPDF\Core\Document;
$doc = Document::createStandalone();
$doc->enableTaggedPdf(lang: 'en');
$doc->setTitle('PDF/UA-2 structure demonstration');
$doc->addPage();
$doc->writeHtml('<h1>Title</h1><p>Body.</p><ul><li>Item</li></ul>');
$doc->save(__DIR__ . '/output/ua2.pdf');
// Then validate with an external checker. NextPDF does not assert
// conformance on your behalf:
// verapdf --flavour ua2 output/ua2.pdf

Katı BCP-47 doğrulaması, danışma günlüğü ve hata işlemeyi içeren bağımlılık enjeksiyonlu yazıcı için Erişilebilirlik modülü üretim örneğine bakın. Aynı bağlantı yapısı bir PDF/UA-2 oluşturma iş akışı için de geçerlidir. Oluşturma sonrası harici doğrulama adımını ekleyin. Bu adım, bir uygunluk iddiası için zorunludur ve sizin sorumluluğunuzdadır.

  • Etiketli PDF’yi etkinleştiren ancak hiçbir yapı alt öğesi eklemeyen bir belge, tasarım gereği PDF/UA-2 tanımlama bloğunu bildirmez (ISO 14289-2 §5). Doğrulayıcılar boş bir yapı ağacını reddeder.
  • Hem enablePdfA() hem de enableTaggedPdf() çağrıldığında, yapısal yan etkiler eklemeli kalır; tek değerli uygunluk ayırıcısı ise son-kazanır biçimine indirgenir. Bir CONFORMANCE_MODE_CLOBBERED uyarısı bunu gözlemlenebilir hale getirir.
  • ISO 14289-2 §7.2.2, uyumlu bir belgenin ayrıca daha kapsamlı erişilebilirlik düzenlemelerine uygunluk iddiasında bulunmasına izin verir. NextPDF yalnızca PDF/UA-2 tanımlama şemasını yayar; başka bir düzenleyici iddia meta verisi yaymaz.
Hüküm alanı (ISO 14289-2 / ISO 32000-2)NextPDF desteğiNotlar
PDF/UA-2 tanımlama şeması (ISO 14289-2 §5)DesteklerYalnızca yapı ağacında alt öğeler olduğunda yayılır.
Yapı ağacı kökü altında tek Document öğesi (ISO 14289-2 §8.2.5.2; ISO 32000-2 §14.7.2)DesteklercreateRoot(), tek bir kök Document öğesini zorunlu kılar.
Standart yapı türleri ve rol eşlemesi (ISO 32000-2 §14.7; Well-Tagged PDF §8.2.5.1)DesteklerRoleMap::standard() artı PDF 2.0 ad alanı.
İşaretlenmiş içerik dizileri ve üst ağaç (ISO 32000-2 §14.7.2)DesteklerSayfa başına tanımlayıcılar ve sayfalar arası süreklilik.
Katalog ve öğe başına doğal dil (ISO 32000-2 §14.9; ISO 14289-2 §8.4.4)DesteklerBCP-47; katı mod hatalı biçimlendirilmiş etiketleri reddeder.
Alternatif metin ve değiştirme metni taşıyıcıları (ISO 32000-2 §14.9)Taşıyıcıyı destekler; içeriği yazar sağlarKitaplık alternatif metin oluşturmaz.
Mantıksal okuma sırası (ISO 32000-2 §14.7)Kaynak sırasını destekler; yeniden sıralamazDüzeltilmiş bir okuma sırası yazarın sorumluluğundadır.
Tablo başlığı ilişkilendirmesi ve kapsamıHTML işaretlemesinin ötesinde kapsam dışıÇıkarsanmaz; kaynak işaretlemeye bağlıdır.
Başlık düzeyi doğruluğu ve ana hatKapsam dışıYazar doğru bir başlık hiyerarşisi sağlamalıdır.
Uçtan uca PDF/UA-2 doğrulamasıKapsam dışıBirlikte gelen bir denetleyici yoktur; harici olarak doğrulayın.
Uygunluk beyanı veya sertifikasyonuKapsam dışıKitaplık tarafından sağlanmaz.

Yapı ağacı olanakları, öğe kümesi üzerinde tek bir doğrusal serileştirme geçişi ekler. Maliyette belirleyici olan etiket yayma değil, HTML iş hattıdır. performance_budget üst sınırı, tipik çok sayfalı anlamsal bir belge için geçerlidir.

Dil ve erişilebilirlik özniteliği değerleri, PDF nesne söz dizimine girmeden önce PdfStringEscaper aracılığıyla kaçışlanır. Katı modda BCP-47 doğrulaması, API sınırında dil etiketi girdi yüzeyini daraltır. Yazar tarafından sağlanan alternatif metni ve başlıkları güvenilmeyen çıktı olarak değerlendirin.

NextPDF, ISO 14289-2 ve ISO 32000-2 §14.7 içinde tanımlanan PDF/UA-2 yapı ağacı modeliyle tutarlı bir yapı yayar. Belirli bir belgenin PDF/UA-2’ye uyduğunu öne sürmez. veraPDF gibi bir PDF/UA denetleyicisiyle doğrulayın; kitaplık sizin adınıza uygunluk iddiasında bulunmaz. Birlikte gelen veraPDF UA-2 altın testi, veraPDF ikili dosyası bulunmadığında atlanır; bu nedenle burada hiçbir uygunluk geçişi iddia edilmez. Alıntılanan maddeler başka sözcüklerle ifade edilir, asla doğrudan alıntılanmaz; öbek karmaları docs/public/modules/core/_normative-evidence-a11y.md içinde kaydedilir.

Bir PDF/UA-2 uygunluk iddiası, yazar tarafından sağlanan anlamsal bilgileri (alternatif metin, doğru başlık hiyerarşisi, tablo başlığı ilişkilendirmesi, amaçlanan okuma sırası, dekoratif içerik sınıflandırması) ve harici bir denetleyiciyle doğrulamayı gerektirir. Kitaplık bunların hiçbirini üretmez ya da doğrulamaz. Çalışma zamanı, üretim onayı için sizi harici doğrulamaya yönlendiren bir Degraded / ComplianceRisk uyarısı yayar. Uygunluk, API’yi çağırmanın değil, nihai belgenin ve oluşturma sürecinin bir özelliğidir.