Tôi đã tạo một ứng dụng hoạt động hoàn hảo cho đến khi người dùng chọn 125% hoặc 150%. Nó sẽ phá vỡ ứng dụng của tôi. Sau đó tôi tìm thấy một cách để tìm kích thước phông chữ bằng cách phát hiện DPI.Phát hiện kích thước phông chữ của cửa sổ (100%, 125%, 150%)
Điều này hoạt động tốt cho đến khi những người có phiên bản Windows 7 của Trung Quốc bắt đầu sử dụng ứng dụng của tôi. Toàn bộ các ứng dụng tôi có thể nói (Tôi không thể kiểm tra nó vì tôi chỉ có phiên bản tiếng Anh và cài đặt các gói ngôn ngữ không gây ra vấn đề) Các ký tự Trung Quốc đang gây ra một DPI kỳ lạ làm hỏng ứng dụng của tôi.
mã hiện tại của tôi làm việc như thế này:
if (dpi.DpiX == 120) //For 125% fonts
{
//Resize form and set default font to correct problems
}
else if (dpi.DpiX == 96) //For 100 and 150% fonts
{
//Resize form and set default font to correct problems
}
Mở phiên bản tiếng Anh của windows 7 mà làm việc tuyệt vời, nhưng các phiên bản bằng cách nào đó Trung Quốc bỏ qua ngay bằng cách này, và hình thức hủy hoại bản thân, với các điều khiển thậm chí không hiển thị, phông chữ cực lớn và đẩy qua vấn đề, hộp hình được di chuyển xung quanh.
Vì vậy, cách tốt nhất để phát hiện quy mô phông chữ của cửa sổ (100%, 125% và 150%) mà không phát hiện API là gì? Tôi cần một cái gì đó rắn sẽ làm việc trên tất cả các cửa sổ 7 hệ điều hành và ngôn ngữ.
Tôi đã nhập rất nhanh và thực hiện một vài lỗi chính tả. Tôi muốn nói "DPI" không phải là "API". Xin lỗi –
Những gì bạn mô tả âm thanh giống như một vấn đề với trình điều khiển video và/hoặc cài đặt phông chữ ... – Yahia
Chỉ cần suggession: nếu bạn có số lượng lớn các khách hàng Trung Quốc, bạn nên đầu tư một chút thời gian để tạo ít nhất 'VirtualMachine' cho 'VirtualBox' hoặc' VmWare', vì vậy bạn có thể kiểm tra ứng dụng của mình trên đó với sự liên kết gần nhất với hệ điều hành thực, vì điều đó là có thể. – Tigran