Необходимо найти вас, если пользователь использует увеличенный размер шрифта 125% или 150% в win 7

StackOverflow https://stackoverflow.com/questions/7330058

Вопрос

Кто-нибудь знает, могу ли я где-нибудь проверить этот параметр?

Это было полезно?

Решение

Вы можете прочитать сгенерировать кодовый код , чтобы узнать об этом.

Умножьте Graphics.DpiX на 100 и разделите на 96, и вы получите процентное масштабирование шрифта.Это правда, потому что 100% масштабирование шрифта соответствует 96 dpi.

Обратите внимание: если ваше приложение не отмечено как С учетом DPI , тогда, когда пользователь устанавливает масштабирование шрифта на 150%, свойство Graphics.DpiX сообщит о 96. Я не знаю, помечены ли стандартные приложения WinForms как поддерживающие разрешение DPI.

Другие советы

Если вы не используете C #, вам нужно сделать два шага, чтобы это работало в Windows 7.

Во-первых, настройте свое приложение на DPI. В этом блоге объясняется, как это сделать.Это включает в себя либо изменение манифеста вашего приложения, либо вызов SetProcessDPIAware () (которая может существовать, а может и не существовать).

Затем получите значения DPI X / Y с помощью GetDeviceCaps(hdc, LOGPIXELSX) и GetDeviceCaps(hdc, LOGPIXELSY) соответственно, как описано в эта статья MSDN .

У меня есть приложение, которое ранее не поддерживало DPI, но по-прежнему не работало при использовании с масштабированием текста (как это доступно в панели управления Windows 7 «Дисплей»), и это заставило его работать, но не повлияло на Windows 8или новее.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top