2010-12-29 30 views
11

Tôi nhận thấy rằng Metal L & F không hỗ trợ các ký tự mũi tên nhất định từ Unicode, trong khi Nimbus và GTK L & Fs hỗ trợ chúng.GUI: Làm cách nào để tìm hiểu xem các ký tự Unicode nhất định có được hỗ trợ không?

ký tự không được hỗ trợ chỉ là hiển thị như: ...

Tôi có thể

  1. hoặc nhìn lên (bằng tay), trong đó L & F hỗ trợ mà Unicode ký tự,
  2. hoặc find it out tại thời gian chạy?

EDIT: Hoặc, nên nó chỉ phụ thuộc vào L & phông chữ mặc định F, câu hỏi của tôi có lẽ nên là:
"làm thế nào để tôi tìm hiểu, mà phông chữ Java hỗ trợ mà các ký tự Unicode?"

+0

Tôi không phải là chuyên gia, nhưng có thể do phông chữ mặc định của Metal/Ocean sử dụng. – Powerlord

+0

Tôi rất chắc chắn đó là phông chữ xác định ký tự nào được hỗ trợ. –

Trả lời

11

Bạn có thể sử dụng phương pháp canDisplay để kiểm tra xem đối tượng java.awt.Font có thể hiển thị một ký tự cụ thể không. Bạn thường có thể lấy phông chữ từ các thành phần GUI bằng cách sử dụng phương thức getFont().

+0

Tuyệt vời! Đó là nó! http://download.oracle.com/javase/6/docs/api/java/awt/Font.html#canDisplay%28char%29 –

2

Nếu bạn biết khối unicode nào chứa các mũi tên bạn cần, bạn có thể tra cứu nó here. Thật không may có vẻ như không phải là một trang cho JDK mới hơn.

+0

Thật không may, liên kết đã bị hỏng. – Gili

0

Sử dụng đoạn mã này bạn sử dụng hầu hết mọi mã Unicode ta.setFont (new java.awt.Font ("Segoe UI Emoji", 1, 20));

Các vấn đề liên quan