Tôi gặp sự cố khi vẽ văn bản đa ngôn ngữ bằng PIL. Giả sử tôi muốn vẽ văn bản - "ひ ら が な - Hiragana, 히라가나". Nhưng chức năng ImageDraw.text() của PIL chỉ mất một phông chữ một lúc, vì vậy tôi không thể vẽ văn bản này một cách chính xác, vì nó yêu cầu tất cả các phông chữ tiếng Anh, tiếng Nhật và tiếng Hàn. Cho đến nay, tôi không có may mắn tìm một giải pháp đơn giản như chuyển nhiều phông chữ sang PIL, để nó có thể chọn phông chữ phù hợp cho mỗi ký tự Unicode (Giống như SDK hiện đại hoặc trình duyệt web).Vẽ văn bản đa ngôn ngữ bằng PIL
Điều tôi đang nghĩ là, tôi nên lặp lại từng ký tự và xác định phông chữ nào sẽ được sử dụng cho từng ký tự một mình. Nhưng tôi không thể không nghĩ rằng phải có một cách dễ dàng hơn để làm điều này.
Tôi có đi đúng hướng không? Không phải là một cách dễ dàng hơn?
PS) Bạn có thể sử dụng ngôn ngữ khác hoặc thư viện hình ảnh khác nếu có giải pháp tốt hơn nhiều.
Vâng, tôi chỉ tìm ra rằng có những phông chữ đó có thể bao gồm nhiều glyphs unicode. Nhưng điều tôi thực sự muốn làm là áp dụng các phông chữ khác nhau cho các ngôn ngữ khác nhau. (Phông chữ được chọn tốt nhất cho từng ngôn ngữ) Hiện tại, tôi đang sử dụng [ttfquery] (http://ttfquery.sourceforge.net/) để kiểm tra xem mỗi glyph của unicode có được chứa trong một phông chữ nhất định hay không. Cảm ơn câu trả lời của bạn. – redism
Bạn có thể tăng tốc mọi thứ - nếu bạn có nhiều văn bản để vẽ - bằng cách trích xuất các họ ngôn ngữ từ chuỗi của bạn và truy vấn một ký tự cho mỗi họ ngôn ngữ. – dda
Cảm ơn bạn đã chỉ ra những gì tôi không biết. :) – redism