Форум: "WinAPI";
Текущий архив: 2002.12.30;
Скачать: [xml.tar.bz2];
ВнизНеправильные размеры при рисовании через winAPI Найти похожие ветки
← →
shu_3d (2002-11-13 12:21) [0]Приветствую!
Имеетяс такая вот простая проблемка, но где собака порылась, не пойму.
Имеется простенькая форма чисто для тестирования, на ней кнопка, на кнопке код:
procedure TForm1.Button1Click(Sender: TObject);
var dc:thandle;
begin
dc:=getdc(form1.handle);
setmapmode(dc,mm_lometric);
rectangle(dc,0,-0,800,-800);
end;
Рисовать-то он рисует, но вот размеры квадрата отнюдь не 8см, а чуть больше 6. Да и вообще, сколько я ни пытаюсь рисовать в mm_lometric, на экране никогда не получаю ожидаемых размеров, как правило, рисуется меньшего размера. Чего же я не понимаю?
Спасибо за помощь
← →
MBo (2002-11-13 12:38) [1]Винды не видят, какого размера монитор, так что не стоит ждать от них точности.
← →
Marcus (2002-11-13 13:00) [2]все эти MM_LOMETRIC и прочие - скорей для принтера, чем для монитора, на экране никогда не будет как на бумаге, так что прикладывать линейку к монитору смысла нет :)
← →
MBo (2002-11-13 13:02) [3]p.s.
на 17"" мониторе получается более-менее точно, для своего конкретного при желании придется делать mm_Anisotropic, подобрав коэффициенты
← →
shu_3d (2002-11-13 18:49) [4]А как же графические программы, которые например, при просмотре в масштабе 100%, дают правильные размеры изображения?
Да и сомневаюсь я, что в драйвере монитора нет информации о физическом разрешении.
← →
apay (2002-11-13 19:42) [5]надо в настройках виндов установить точное кол-во DPI для монитора, станартные 96 в большинстве случаев не подходят, вот и получается опс.
← →
shu_3d (2002-11-15 12:31) [6]А почему, например, не получить DC экрана, а потом через DeviceCaps получить разрешения экрана?
Если это работает (еще не пробовал), тогда непонятно, почему винда не может корректно настроить extent для правильного масштабирования?
← →
MBo (2002-11-15 12:36) [7]getdevicecaps(getdc(0),horzsize) пробовал?
Выдает всегда 320 мм.
Страницы: 1 вся ветка
Форум: "WinAPI";
Текущий архив: 2002.12.30;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.009 c