2011-12-24 5 views
6

Tôi muốn hiển thị một số biểu thức toán học trong hộp văn bản winforms. Vì vậy, tôi nghĩ rằng "Cambria Math" font chữ sẽ là một lựa chọn tốt nhưng văn bản trông lạ do lề trên và dưới cùng của phông chữ. Đầu tiên tôi nghĩ rằng tôi đã phạm sai lầm nhưng theo this question, đó là hành vi chính xác của phông chữ.Cambria Math lề trên và dưới lớn

Screenshot of the textbox

Tại sao Cambria Math có các giá trị biên độ lớn và làm thế nào tôi có thể hiển thị chuỗi của tôi một cách chính xác trong hộp văn bản như Word 2010?

(Lưu ý rằng tôi chỉ biết một chút về kiểu chữ;)

Edit: Tôi đã phải thực hiện các textbox mà cao nếu không caret sẽ là vô hình. Kích thước phông chữ của hộp văn bản được đặt thành 8.25pt

+0

Phông chữ trông được đồng bộ hóa đúng cách với dấu mũ; có vẻ với tôi như hộp văn bản của bạn quá cao. –

+0

Điểm tốt, tôi quên đề cập đến việc tôi phải tạo hộp văn bản cao, nếu không dấu mũ sẽ không hiển thị. – MBulli

Trả lời

6

Cambria Math sử dụng các phần mở rộng OpenType toán học của Microsoft.

Word 2007 và sau đó hiểu những điều này và hiển thị văn bản có khoảng cách hợp lý.

Tuy nhiên, notepad và Word 2000 hiển thị văn bản với khoảng cách rất lớn, giống như winforms. Tôi đoán phông chữ có nhiều không gian này theo mặc định vì một số ký tự (như U + 2320, nửa phân tách trên cùng) lớn hơn nhiều so với chữ và số.

Nếu bạn sử dụng Cambria Math với một công cụ phông chữ (chẳng hạn như được sử dụng bởi winforms) mà không hiểu các phần mở rộng toán học, bạn sẽ nhận được khoảng cách lớn.

Nếu bạn đang hiển thị các biểu thức đơn giản, bạn cũng có thể sử dụng Cambria.

+0

Cảm ơn câu trả lời. Có vẻ như không có cách nào để sửa chữa vấn đề trong winforms, tôi giả định rằng WPF hỗ trợ các phần mở rộng. – MBulli