SetPDFUAMode
Właściwości dokumentu, Dostępność
Opis
Włącza tryb zgodności PDF/UA-1 (ISO 14289-1:2014) dla wybranego dokumentu. To pojedyncze wywołanie wykonuje całą konfigurację na poziomie dokumentu wymaganą przez normę: wersja dokumentu zostaje podniesiona co najmniej do PDF 1.7, zapisywane są MarkInfo.Marked i MarkInfo.Suspects, w ViewerPreferences włączane jest DisplayDocTitle, gdy podano język ustawiane jest Catalog/Lang, a także zapisywany jest wpis przestrzeni nazw XMP pdfuaid:part=1. Gdy dokument jest szyfrowany po włączeniu SetPDFUAMode, CanCopyAccess (bit 10 klucza szyfrowania /P) jest automatycznie wymuszane niezależnie od maski TPDFExtraPermissions podanej przez wywołującego, zgodnie z ISO 14289-1 §7.16. Jeśli dokument był już zaszyfrowany przed wywołaniem SetPDFUAMode, istniejący słownik szyfrowania pozostaje bez zmian — wywołaj ponownie Encrypt po SetPDFUAMode, aby odświeżyć wartość /P. GetPDFUADiagnostics zgłasza tę sytuację kodem ENCRYPT-NO-ACCESS
Wywołaj tę metodę przed dodaniem jakiejkolwiek zawartości. Użyj BeginTag/EndTag oraz BeginArtifact/EndArtifact, aby oznaczyć zawartość dokumentu
Składnia
Delphi
Function TPDFlib.SetPDFUAMode(Const Language: WideString): Integer;
ActiveX
Function PDFlib::SetPDFUAMode(Language As String) As Long
DLL
int DLSetPDFUAMode(int InstanceID, const wchar_t * Language);
Parametry
| Language | Znacznik języka BCP 47 określający domyślny język dokumentu, na przykład "en-US" lub "de". Przekaż pusty ciąg, aby pominąć wpis Catalog /Lang |
|---|
Wartości zwracane
| 0 | Niepowodzenie (żaden dokument nie jest otwarty) |
|---|---|
| 1 | Tryb PDF/UA został pomyślnie aktywowany |
Uwagi
Podczas zapisu wszystkie otwarte strony automatycznie otrzymują wpis /Tabs /S (kolejność kart oparta na strukturze), gdy tryb PDF/UA jest aktywny, co spełnia wymagania ISO 14289-1 §7.18.3. Korekty wykonywane podczas zapisu uzupełniają również brakujące etykiety narzędzi widżetów (/TU) i wpisy adnotacji /Contents, dołączają /AFRelationship do plików osadzonych, usuwają wszystkie adnotacje TrapNet (zabronione przez ISO 14289-1 §7.18.2) oraz dołączają /O = List /ListNumbering = None do każdego elementu struktury L bez jawnego atrybutu ListNumbering (ISO 14289-1 §7.6)
Zobacz także: SetDocumentLanguage, SetMarkInfo, SetPDFAMode