function ResolvePdfUaEffectiveLanguage(const CatalogLanguage: WString;
const Elements: TPdfStructureElements; ElementIndex: Integer;
const MarkedContentLanguage: WString; HasMarkedContentLanguage: Boolean;
out Resolution: TPdfUaLanguageResolution): Boolean;
| CatalogLanguage | WString |
| Elements | TPdfStructureElements |
| ElementIndex | Integer |
| MarkedContentLanguage | WString |
| HasMarkedContentLanguage | Boolean |
| Resolution | TPdfUaLanguageResolution |
BooleanResolvePdfUaEffectiveLanguage, ISO 14289 dil kaskadını tek bir içerik konumuna uygular ve kazanan bildirimi Resolution içine doldurur
HasMarkedContentLanguage True olduğunda marked-content /Lang değeri kazanır ve Resolution.Source pulsMarkedContent olur
Aksi halde ElementIndex konumundaki öğe ve ataları, boş olmayan bir Language taşıyan bulunana dek ParentIndex üzerinden gezilir; ardından Resolution.Source pulsStructure olur ve StructureElementIndex bildirimi yapan öğeyi kaydeder
Hiçbir yapı öğesi dil bildirmiyorsa, boş olmayan bir CatalogLanguage Source pulsCatalog ile uygulanır
Her aday IsPdfUaLanguageTagValid ile doğrulanır ve sonuç Resolution.DeclarationValid içine yazılır
İşlev Resolution.IsCovered değerini döndürür; bu değer yalnızca bir bildirim bulunduğunda ve iyi biçimli bir etiket olduğunda True olur
Hiçbir aday yokken Resolution, boş bir Language ile Source pulsNone değerini korur ve sonuç False olur
Covered := ResolvePdfUaEffectiveLanguage(Pdf.Language, Elements, I, '', False, Resolution);