regall
Сен. 2, 2009 15:41:49
Может кто-нибудь знает в какую сторону копать, чтобы программно сделать с монитором следующее:
зеркально отобразить содержимое,
повернуть на x градусов… и собственно другое в таком же духе.
При чем именно программно, то есть без использования драйверов.
dvs
Окт. 29, 2009 18:35:47
http://code.activestate.com/recipes/496853/ ,
затем получаем данные из буфера,
пошла математика (PIL?),
вывод результата на экран
примерно как-то так
regall
Окт. 29, 2009 18:43:12
Не-не-не, вопрос не в том, чтобы делать скриншоты, а в том чтобы повернуть экран, и дальше человек продолжал работать в таком режиме, ну, тупо экран повернут на 90 градусов, очень сного перерыл MSDN'а, есть там WINAPI функция для этого дела, но она работает только на мобильных виндовых платформах, есть еще одна платная софтина, (забыл уже…), вообщем пока эту хрень закинул… убив неделю времени…
dvs
Окт. 29, 2009 18:51:19
regall
сорри, не понял сразу, успел наспамить :)
dvs
Окт. 29, 2009 19:03:24
regall
у меня такая софтина шла вместе с монитором..
или цель больше поиграться/покодить?
dvs
Окт. 29, 2009 19:32:33
http://pypi.python.org/pypi/jaraco.windows может потом пригодится
```jaraco.windows aims to provide a pure-python interface to Windows APIs using ctypes. This package is not designed to be exhaustive, but rather to supply interfaces as they are needed by the contributors.```
——————
http://www.pyglet.org/pyglet provides an object-oriented programming interface for developing games and other visually-rich applications for Windows, Mac OS X and Linux.
regall
Окт. 29, 2009 19:48:41
dvs
DEVMODE dm;
dm.dmSize=sizeof(DEVMODE);
dm.dmDriverExtra=0;
EnumDisplaySettings(NULL,ENUM_CURRENT_SETTINGS,&dm);
dm.dmDisplayOrientation=DMDO_90;
DWORD temp=dm.dmPelsHeight;
dm.dmPelsHeight=dm.dmPelsWidth;
dm.dmPelsWidth=temp;
LONG ret;
ret=ChangeDisplaySettings(&dm,0);
Такое у меня не работает, это рабоитает только на мобильных платформах и некоторых ноутбуках нажатием Ctrl + стрелка.