SetStructElemLang

PDF gắn thẻ và khả năng truy cập

Mô tả

Đặt mục /Lang trên structure element đang được dựng trên tag stack. Thẻ ngôn ngữ này ghi đè ngôn ngữ cấp tài liệu cho phần tử và toàn bộ hậu duệ của nó, giúp tài liệu đa ngôn ngữ khai báo đúng ngôn ngữ tự nhiên cho từng đoạn nội dung

Cú pháp

Delphi

Function TPDFlib.SetStructElemLang(Const Lang: WideString): Integer;

ActiveX

Function PDFlib::SetStructElemLang(Lang As String) As Long

DLL

int DLSetStructElemLang(int InstanceID, const wchar_t * Lang);

Tham số

LangChuỗi thẻ ngôn ngữ BCP 47, ví dụ en-US, fr, de-CH hoặc zh-Hant-TW. Truyền chuỗi rỗng để xóa giá trị đã đặt trước đó và kế thừa ngôn ngữ cấp tài liệu

Giá trị trả về

Trả về 1 khi thành công, 0 nếu không có phần tử cấu trúc nào đang mở hoặc chưa chọn tài liệu.

Ghi chú

Gọi hàm này ngay sau BeginTag hoặc BeginTagEx khi phần tử đích đang ở đỉnh tag stack. Tương đương với việc truyền tham số Lang khác rỗng cho BeginTagEx, nhưng tiện hơn khi ngôn ngữ được xác định riêng khỏi kiểu phần tử

Mục /Lang cấp phần tử được định nghĩa trong ISO 32000-1 §14.9.2. Nó áp dụng cho phần tử cấu trúc và, theo kế thừa, cho mọi phần tử con không tự khai báo /Lang. Trình đọc màn hình dùng mục này để chọn giọng đọc văn bản thành tiếng hoặc engine ngôn ngữ phù hợp khi đọc tài liệu thành tiếng.

PDF/UA-1 (ISO 14289-1 §7.3) yêu cầu mọi nội dung ngôn ngữ tự nhiên phải được xác định. /Lang cấp tài liệu đặt bằng SetDocumentLanguage hoặc SetPDFUAMode bao phủ ngôn ngữ chính; SetStructElemLang bao phủ các phần có ngôn ngữ khác ngôn ngữ chính.

Ví dụ

// A French phrase embedded in an English document
PDFlib.SetPDFUAMode('en-US');
// ... English content
PDFlib.BeginTag('P', '', '');
PDFlib.SetStructElemLang('fr');
PDFlib.TextOut(x, y, 'Bonjour le monde');
PDFlib.EndTag;

Xem thêm

BeginTagEx, SetDocumentLanguage, SetPDFUAMode, SetStructElemActualText, GetPDFUADiagnostics