Bỏ qua để đến nội dung

Viết dọc CJK bằng Connect

Công thức này nhúng một CIDFont cho tiếng Trung, tiếng Nhật và tiếng Hàn (CJK), kèm số đo viết dọc qua các giao thức truyền tải Connect. Engine phát ra các mục số đo dọc PDF 2.0 (/W2 theo từng glyph và /DW2 mặc định) trên từ điển CIDFont, rồi kết xuất một chuỗi glyph xếp từ trên xuống dưới. Việc nhúng phông chữ CJK thuộc bậc Enterprise. Các công cụ phông chữ CJK được phát hiện bằng các lần thăm dò class_exists() và chỉ đăng ký khi nextpdf/premium được cài đặt cùng với máy chủ. Engine chỉ phát ra số đo dọc khi mã hóa CID hiện hoạt là mã hóa Identity dọc. Các đoạn chạy ngang không bị ảnh hưởng.

Terminal window
composer require nextpdf/server

Xác nhận rằng các công cụ phông chữ CJK Enterprise hiện có bằng lệnh gọi tools/list. Xem /connect/tool-catalog/.

CIDFont ở chế độ viết dọc dùng số đo dọc /W2 (theo từng glyph) và /DW2 (mặc định) (ISO 32000-2 §9.7). CMap chọn chế độ viết ngang hoặc dọc (ISO 32000-2 §9.7). Chế độ viết dọc chuyển bước tiến của glyph sang trục dọc (ISO 32000-2 §9.7). Khi bạn đăng ký phông chữ, pipeline phân tích các bảng số đo dọc của phông chữ. Pipeline chỉ phát ra các mục từ điển sau khi bạn chọn mã hóa CID dọc.

Xác minh tên công cụ trên registry đang chạy bằng tools/list. Danh mục chính thức nằm tại /connect/tool-catalog/. Công thức này không liệt kê lại số lượng công cụ.

Tạo tài liệu, đăng ký phông chữ CJK và chọn mã hóa dọc:

{
"jsonrpc": "2.0",
"id": 5,
"method": "tools/call",
"params": {
"name": "add_cjk_font",
"arguments": {
"document_id": "<id>",
"family": "NotoSansCJKjp",
"source": "/usr/share/fonts/opentype/noto/NotoSansCJKjp-Regular.otf",
"subset": true
}
}
}

Chọn mã hóa dọc, đặt phông chữ, viết một đoạn chạy dọc, rồi xuất và kiểm tra từ điển CIDFont:

{
"jsonrpc": "2.0",
"id": 7,
"method": "tools/call",
"params": {
"name": "set_cid_encoding",
"arguments": { "document_id": "<id>", "font_key": "NotoSansCJKjp", "encoding": "/Identity-V" }
}
}

Từ điển CIDFont trong đầu ra có /W2/DW2. Với cùng nguồn đó, cả hai mục sẽ bị bỏ qua khi kết xuất bằng mã hóa ngang. Cổng mã hóa là khác biệt duy nhất, nhờ đó hồ sơ khả năng tái lập structural ở đây vẫn chính xác.

  • Phông chữ thiếu bảng số đo dọc. Công cụ phông chữ sẽ cảnh báo. Hãy chọn một phông chữ CJK có các bảng đó; phông chữ chỉ có ký tự Latin thì không có.
  • Chọn mã hóa dọc cho một phông chữ không có số đo dọc là một lỗi. Hãy chuyển về mã hóa ngang hoặc chọn một phông chữ khác.
  • Yêu cầu văn bản dọc khi mã hóa ngang đang hoạt động là một lỗi. Hãy chọn mã hóa dọc trước lần phát ra văn bản dọc đầu tiên.
  • Đổi mã hóa sau lần phát ra văn bản đầu tiên bị từ chối bằng một lỗi cho biết mã hóa đã đóng băng. Hãy đặt mã hóa ngay sau khi bạn đăng ký phông chữ.
  • Thiếu công cụ. Khi không có nextpdf/premium, các công cụ phông chữ CJK Enterprise không được đăng ký, và lệnh gọi thất bại với lỗi công cụ không xác định.

Ngân sách trong front-matter là giới hạn ở cấp tài liệu. Tạo tập con giúp giới hạn kích thước mảng số đo theo từng glyph. Chỉ tắt tạo tập con khi một đoạn chạy dọc cần các glyph mà tập con sẽ loại bỏ.

Không có lưu ý bổ sung nào ngoài hướng dẫn chung về giao thức truyền tải Connect.

Tuyên bốĐiều khoảnreference_id
CIDFont dọc dùng /W2/DW2 làm số đoISO 32000-2 §9.7
CMap chọn chế độ viết ngang hoặc dọcISO 32000-2 §9.7
Chế độ viết dọc dịch tiến glyph theo trục dọcISO 32000-2 §9.7

Việc phát ra các mục số đo dọc triển khai các điều khoản đã trích dẫn. Đây không phải là một tuyên bố tuân thủ tổng quát. Trình kiểm định sẽ xác định toàn bộ tài liệu có tuân thủ hay không.

Việc nhúng phông chữ CJK thuộc bậc Enterprise. Các công cụ phông chữ CJK chỉ đăng ký khi nextpdf/premium được cài đặt cùng với máy chủ.

Khả dụng theo giao thức truyền tải (MCP / REST / gRPC)

Phần tiêu đề “Khả dụng theo giao thức truyền tải (MCP / REST / gRPC)”

Hãy gọi tính năng này theo cùng một cách qua MCP tools/call, điểm cuối công cụ REST và dịch vụ gRPC. Cả ba đều đi qua bộ thực thi công cụ dùng chung.

Việc đăng ký phông chữ, chọn mã hóa và phát ra văn bản ở mức thận trọng. Đầu ra cần được phê duyệt khi ghi một tệp; chế độ base64 thì không. Xem /connect/hitl-risk-tiers/.

Khi đường dẫn đầu ra ghi tệp được bảo vệ bằng cổng kiểm soát, cổng trả về một vỏ bọc thử thách và một token dùng một lần gắn với tên công cụ, một nonce và TTL 300 giây. Gọi lại với arguments._confirmation_token. Xem /connect/hitl-risk-tiers/.

  • /cookbook/connect/font-typography/ — kiến thức cơ bản về văn bản ngang và chọn phông chữ.
  • /cookbook/connect/conformance-mode/ — các đoạn chạy CJK dọc vẫn cần được gắn thẻ cho PDF/UA-2.
  • /connect/tool-catalog/ — cách xác định tập công cụ theo từng bậc.
  • /connect/hitl-risk-tiers/ — mô hình rủi ro và cổng kiểm soát.