Что самый быстрый путь состоит в том, чтобы нарисовать изображение в Gtk +?

Для меня добавление этой строки (или комментирование, потому что там написано в 13-й строке) в gradle.properties сработало:

org.gradle.jvmargs=-Xmx2048m -XX:MaxPermSize=512m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8

Также я отключил Мгновенный запуск (Android Studio 2.1.2) .

8
задан ergosys 6 February 2012 в 00:18
поделиться

3 ответа

Попробуйте создать Pixmap, который использует ту же цветовую карту, что и ваш рисунок. область.

dr_area.realize()
self.gc = dr_area.get_style().fg_gc[gtk.STATE_NORMAL]
img = gtk.gdk.pixbuf_new_from_file("image.png")
self.image = gtk.gdk.Pixmap(dr_area.window, img.get_width(), img.get_height())
self.image.draw_pixbuf(self.gc, img, 0, 0, 0, 0)

и выводит его на экран с помощью

dr_area.window.draw_drawable(self.gc, self.image, 0, 0, x, y, *self.image.get_size())
6
ответ дан 5 December 2019 в 20:18
поделиться

Вы действительно не генерируете достаточную исходную скорость / пропускную способность? Или вы просто видите мерцание?

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

Возможно, посмотрите эту страницу, на которой есть некоторая информация о двойной буферизации .

2
ответ дан 5 December 2019 в 20:18
поделиться

Возможно, стоит провести сравнительный анализ - если вы рисуете на небольшой площади, все равно это медленно?

Если да, возможно, стоит спросить в списках рассылки pygtk или gtk .. .

0
ответ дан 5 December 2019 в 20:18
поделиться
Другие вопросы по тегам:

Похожие вопросы: