Найти - Пользователи
Полная версия: Люди помогите Новичку
Начало » GUI » Люди помогите Новичку
1 2
Oz
Как сделать снимок экрана С помощью Python ( какие функсии это делают )
slivlen
С помощью PyGTK можно. А вообще, не дурно было бы указать под какую ОС это требуется :)
pythonwin
slivlen
С помощью PyGTK можно.
а можно пример или ссылку?
думаю нужен не pygtk, а Tkinter

PS в принципе можно через os.popen или os.systems вызывать программу снимков экрана
pythonwin
Модератор: Название темы должно отражать ее суть!
slivlen
pythonwin
а можно пример или ссылку?
Можно
#!/usr/bin/env python
import gtk
def get_screenshot():
    screenshot = gtk.gdk.Pixbuf(gtk.gdk.COLORSPACE_RGB, 0, 8,
                                gtk.gdk.screen_width(),
                                gtk.gdk.screen_height())
    screenshot.get_from_drawable(gtk.gdk.get_default_root_window(),
                                 gtk.gdk.colormap_get_system(),
                                 0, 0, 0, 0, gtk.gdk.screen_width(),
                                 gtk.gdk.screen_height())
    screenshot.save('screenshot.png', 'png') # Надо только если требуется сохранить скрин в файл
    return screenshot
scrshot = get_screenshot()
win = gtk.Window(gtk.WINDOW_TOPLEVEL)
win.connect('destroy', gtk.main_quit)
imgViewer = gtk.Image()
imgViewer.set_from_pixbuf(scrshot)
win.add(imgViewer)
win.show_all()
gtk.main()
В идеале сюда надо добавить маштабирование изображения под размер виджета в котором оно отображается, но тогда пример слишком большой получится :)
slivlen
Oz
Прежде чем задавать вопросы на этом форуме прочитай правила.
Oz
С пасибо конечно за помощь .
А с Tkinter такое можно сделать .
Помогите пожалуйста .
———————————-
У меня WinXP ,PythonWin 2.3.5, Tkinter , как с делать снимок экрана и сохранить его в графический файл
player
Есть еще одно решение (можно сказать альтернативное)
Библиотека называеться PIL (Python Image Library)
Вот пример кода как можно получить screenshot экрана:

>>> from PIL import ImageGrab
>>> im = ImageGrab.grab()
>>> im.show()
>>> im.save('screen.jpg')

Тут im.show() покажет то что “снял” используя стандартный просмотрщик. А im.save('screen.jpg') сохранит в нужном формате (в зависимости от расширения файла). Вообще там еще можно кучу опций добавлять к каждой функции, я со всем еще не разобрался.
player
lorien
lorien@lorien /web/photocross/web_site/pub $ python -c "import os; os.system('import -window root /tmp/test.png')"
lorien@lorien /web/photocross/web_site/pub $ file /tmp/test.png
/tmp/test.png: PNG image data, 1280 x 1024, 8-bit/color RGB, non-interlaced
к сожелению далеко не кросплатформенное решение :(
C:\Documents and Settings\...>python.exe -c "import os; os.system('import -window root test.png')"
'import' is not recognized as an internal or external command, operable program or batch file.
pythonwin
from PIL import ImageGrab
Traceback (most recent call last):
File “<stdin>”, line 1, in ?
File “/usr/lib/python2.4/site-packages/PIL/ImageGrab.py”, line 34, in ?
import _grabscreen
ОС = debian 4.0
python 2.4
почему нет файла?
find тоже не помог :(
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB