Font Fallback and Vertical Text

HotPDF có thể chọn các mặt font dự phòng theo script Unicode, báo cáo các code point vẫn chưa được giải quyết, và viết văn bản CJK thông qua một chế độ viết CID dọc thực sự

Các chuỗi fallback cấp tài liệu

THotPDF.SetFontFallbackChain lưu trữ một danh sách mặt có thứ tự cho một danh mục THPDFFontScript

THPDFPage.TextOutWithFallback giải từng scalar Unicode dựa vào mặt đã chọn, chuỗi script của nó và chuỗi chung, sau đó phát các scalar kề nhau có cùng mặt thành một run văn bản

Chẩn đoán có thể hành động

AnalyzeUnresolvedGlyphs thực hiện một kiểm toán vùng bao phủ chỉ đọc, trong khi TextOutWithFallback ghi lại các scalar chưa giải quyết gặp phải trong lúc xuất

Mỗi THPDFUnresolvedGlyphInfo bao gồm code point scalar, mặt chính, script đã phân loại, và danh sách gợi ý fallback phân tách bằng dấu chấm phẩy

GetUnresolvedGlyphs trả về báo cáo tài liệu hiện tại và ClearUnresolvedGlyphs bắt đầu một khoảng báo cáo mới

Các overload chỉ định kiểu rõ ràng của THotPDF.ResolveFontForCodePoint và THotPDF.AnalyzeUnresolvedGlyphs nhận TFontStyles để preflight có thể soi đúng face dùng cho xuất; overload gốc của chúng tiếp tục soi các face regular

Text box, văn bản nhúng SVG, và text appearance đã nạp giữ nguyên họ font có style xuyên qua bố cục fallback, thay vì coi tên font nội bộ của PDF là họ hệ thống hoặc đổi mọi run sang face regular

Văn bản CJK dọc

THPDFPage.TextOutVertical chọn biến thể dọc của mặt hiện tại và phát ra một run văn bản Identity-V thay vì định vị từng ký tự thủ công

Ví dụ

PDF.SetFontFallbackChain(hfsCJK,
  ['Microsoft YaHei UI', 'Yu Gothic UI', 'Malgun Gothic']);
PDF.SetFontFallbackChain(hfsEmoji, ['Segoe UI Emoji']);

PDF.CurrentPage.SetFont('Arial', [], 12);
PDF.CurrentPage.TextOutWithFallback(72, 72, 0, Text);

PDF.CurrentPage.SetFont('Yu Gothic UI', [], 14);
PDF.CurrentPage.TextOutVertical(420, 72, VerticalText);

Missing := PDF.GetUnresolvedGlyphs;

API liên quan