forum.wfido.ru  

Вернуться   forum.wfido.ru > Прочие эхи > RU.WINDOWS.XP

Ответ
 
Опции темы Опции просмотра
  #1  
Старый 21.10.2019, 03:32
Anton Shepelev
Guest
 
Сообщений: n/a
По умолчанию Как отключить интерполяционное масштабирования старых программ в Win 10

Anton Shepelev написал(а) к All в Oct 19 02:17:13 по местному времени:

From: Anton Shepelev <antonius@freeshell.de>
Subject: Как отключить интерполяционное масштабирования старых программ в Win 10?

С ужасом обнаружил, что на ноутбуке с высоким родным
разрешением под управлением Windows 10 старые программы
выглядят размыто из-за автоматического масштабирования с
интерполяцией. Как это отключить? Интересно, какой спец
додумался увеличивать растровые GUI в нецелочисленном
масштабе. Я от обиды подумал, что это такой хитрый ход,
чтобы принудить пользователей отказаться от программ,
написанных без поддержки т.н. DPI-awareness, или чего там
нужно того, чтобы десятка отображала пиксель как пиксель, а
не как размытое бесформенное пятно.

Зачем нужен этот механизм? Разве нелья настроить размеры
шрифтов на любых стандартынх элементах GUI? Или это
дискриминация растровой графики вследствие продвижения
векторной?

Лично мне в GUI крайне неприятны любые сглаживания и
ClearType (aka BlearType), поэтому я использую растровых
шрифты или их аккуратные переводы в TTF, точно ложащиеся на
пиксельную сетку при определённых размерах. Имя два-три
шрифта с размерами относящимися примерно как квадратный или
кубический корень из двух, можно всегда подобрать комфортный
размер. А чудесный растровый шрифт Terminus:

http://terminus-font.sourceforge.net/

поддерживает аж девять размеров. Беда только, что в новые
программы на WPF не работают с растровыми шрифтами.

--
Антон Шепелёв
--- ifmail v.2.15dev5.4
Ответить с цитированием
  #2  
Старый 21.10.2019, 10:02
Sergey Anohin
Guest
 
Сообщений: n/a
По умолчанию Как отключить интерполяционное масштабирования старых программ в Win 10

Sergey Anohin написал(а) к Anton Shepelev в Oct 19 08:37:38 по местному времени:

Нello, Anton!

AS> С ужасом обнаружил, что на ноутбуке с высоким родным
AS> разрешением под управлением Windows 10 старые программы
AS> выглядят размыто из-за автоматического масштабирования с
AS> интерполяцией. Как это отключить? Интересно, какой спец
AS> додумался увеличивать растровые GUI в нецелочисленном
AS> масштабе. Я от обиды подумал, что это такой хитрый ход,
AS> чтобы принудить пользователей отказаться от программ,
AS> написанных без поддержки т.н. DPI-awareness, или чего там
AS> нужно того, чтобы десятка отображала пиксель как пиксель, а
AS> не как размытое бесформенное пятно.
AS> Зачем нужен этот механизм? Разве нелья настроить размеры
AS> шрифтов на любых стандартынх элементах GUI? Или это
AS> дискриминация растровой графики вследствие продвижения
AS> векторной?
AS> Лично мне в GUI крайне неприятны любые сглаживания и
AS> ClearType (aka BlearType), поэтому я использую растровых
AS> шрифты или их аккуратные переводы в TTF, точно ложащиеся на
AS> пиксельную сетку при определённых размерах. Имя два-три
AS> шрифта с размерами относящимися примерно как квадратный или
AS> кубический корень из двух, можно всегда подобрать комфортный
AS> размер. А чудесный растровый шрифт Terminus:
AS> http://terminus-font.sourceforge.net/
AS> поддерживает аж девять размеров. Беда только, что в новые
AS> программы на WPF не работают с растровыми шрифтами.

Походу эта же беда с RDP, когда клиенты с 10кой с высоким разрешением заходят на сервер терминалов 2012r2 standard (он не обновляется),
1ска там ппц как мелко и хз что с этим делать, можно наковырять масштабирование в 10ке или разрешение рабочего стола, но тогда получаешь все размыто,
так и не победил...

С наилучшими пожеланиями, Sergey Anohin.

--- wfido
Ответить с цитированием
  #3  
Старый 21.10.2019, 19:14
Eugene Muzychenko
Guest
 
Сообщений: n/a
По умолчанию Как отключить интерполяционное масштабирования старых программ в Win 10

Eugene Muzychenko написал(а) к Anton Shepelev в Oct 19 17:04:23 по местному времени:

Привет!

21 Oct 19 02:17, you wrote to All:

AS> на ноутбуке с высоким родным разрешением под управлением Windows 10
AS> старые программы выглядят размыто из-за автоматического
AS> масштабирования с интерполяцией. Как это отключить?

Присобачить к программе манифест с DPI Awareness.

Всего доброго!
Евгений Музыченко
eu-gene@muzy-chen-ko.net (все дефисы убрать)

--- GoldED+/W32-MSVC 1.1.5-b20170303
Ответить с цитированием
  #4  
Старый 22.10.2019, 01:02
Anton Shepelev
Guest
 
Сообщений: n/a
По умолчанию Re: Как отключить интерполяционное масштабирования старых программ в Wi

Anton Shepelev написал(а) к Eugene Muzychenko в Oct 19 23:45:19 по местному времени:

From: Anton Shepelev <antonius@freeshell.de>
Subject: Re: Как отключить интерполяционное масштабирования старых программ в Win 10?

Eugene Muzychenko to Anton Shepelev:

AS>> С ужасом обнаружил, что на ноутбуке с высоким родным
AS>> разрешением под управлением Windows 10 старые программы
AS>> выглядят размыто из-за автоматического масштабирования
AS>> с интерполяцией. Как это отключить?
EM> Присобачить к программе манифест с DPI Awareness.

Так как я спрашиваю о компьютере друга, и сам не имею
возможности экспериментировать, то прошу уточникть ответ. Я
правильно понял, что рядом с исполнимым файлом программы
нужно поместить XML-файл одноимённый с исполнымым файлом, но
с расширением .manifest и следующим содержанием:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
<application xmlns="urn:schemas-microsoft-com:asm.v3">
<windowsSettings>
<dpiAware xmlns="http://schemas.microsoft.com/SMI/200.../PM</dpiAware>
</windowsSettings>
</application>
</assembly>

Подозреваю, что после этого программа будет отображаться
чётко, но очень мелко. Какие настройки Windows отвечают
размер шрифта на стандартных растровых элементах WinForms?

Можно ли на соверменных high-DPI ноутубуках установить
разрешение, уменьшенное относительно родного в 2/4/8 раз?

--
Антон Шепелёв
--- ifmail v.2.15dev5.4
Ответить с цитированием
  #5  
Старый 22.10.2019, 02:14
Eugene Muzychenko
Guest
 
Сообщений: n/a
По умолчанию Как отключить интерполяционное масштабирования старых программ в Wi

Eugene Muzychenko написал(а) к Anton Shepelev в Oct 19 23:58:32 по местному времени:

Привет!

21 Oct 19 23:45, you wrote to me:

AS> рядом с исполнимым файлом программы нужно поместить XML-файл
AS> одноимённый с исполнымым файлом, но с расширением .manifest и
AS> следующим содержанием:

Ага, только желательно добавить еще и PerMonitor:

<dpiAware>true</dpiAware>
<dpiAwareness xmlns="http://schemas.microsoft.com/SMI/201...">PerMonitorV2
</dpiAwareness>

AS> Подозреваю, что после этого программа будет отображаться
AS> чётко, но очень мелко.

Нет, окно просто перестанет размываться. Почему винда его размывает - ХЗ. Возможно, подталкивает таким образом к изменению кода для поддержки разрешений.

Всего доброго!
Евгений Музыченко
eu-gene@muzy-chen-ko.net (все дефисы убрать)

--- GoldED+/W32-MSVC 1.1.5-b20170303
Ответить с цитированием
Ответ


Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход


Текущее время: 23:47. Часовой пояс GMT +4.


Powered by vBulletin® Version 3.8.7
Copyright ©2000 - 2024, vBulletin Solutions, Inc. Перевод: zCarot