Board.KolibriOS.org

Официальный форум KolibriOS
Текущее время: Пн ноя 19, 2018 2:43 pm

Часовой пояс: UTC+03:00




Начать новую тему  Ответить на тему  [ 8 сообщений ] 
Автор Сообщение
 Заголовок сообщения: EasyShot - Простой скриншотер
СообщениеДобавлено: Пт апр 20, 2018 1:26 pm 
Не в сети
Designer
Аватара пользователя

Зарегистрирован: Чт янв 25, 2007 3:33 pm
Сообщения: 4879
EasyShot

Чтобы сделать скриншот в EasyShot:
1. укажите папку (не обязательно, по умолчанию /tmp0/1/)
2. делайте скрины одной кнопкой

Скрины нумеруются автоматически.
Спасибо Nicolas за функцию сохранения картинки, сам бы я ее на написал.
Спасибо IgorA за поддержку PNG.


Вложения:
EasyShot1.png
EasyShot1.png [ 129.23 КБ | 472 просмотра ]

_________________
Через тернии к звездам
Вернуться к началу
 Заголовок сообщения: Re: EasyShot - Простой скриншотер
СообщениеДобавлено: Пт апр 20, 2018 1:53 pm 
Не в сети

Зарегистрирован: Вс окт 30, 2011 6:43 pm
Сообщения: 1503
Прикольно :)
Только существующий ассемблерный скриншотер SCRSHOOT всё равно функциональнее, да и размером поменьше 4184 байтов против 4690 у EasyShot.


Вернуться к началу
 Заголовок сообщения: Re: EasyShot - Простой скриншотер
СообщениеДобавлено: Пт апр 20, 2018 2:45 pm 
Не в сети
Designer
Аватара пользователя

Зарегистрирован: Чт янв 25, 2007 3:33 pm
Сообщения: 4879
Я добавлю функций позже.

Для меня EasyShot удобнее, т.к. не нужно каждый раз указывать куда сохранять файл.
Картинка чекбокса весит. Много инитов box_lib.

Я чуток повыпиливал, все С-- программы должны стать чуточку легче.

_________________
Через тернии к звездам


Вернуться к началу
 Заголовок сообщения: Re: EasyShot - Простой скриншотер
СообщениеДобавлено: Пт апр 20, 2018 9:55 pm 
Не в сети

Зарегистрирован: Вс окт 30, 2011 6:43 pm
Сообщения: 1503
Leency, не, я всё понимаю, конечно. Ты и кто-то там ещё старались.
Но я привёл размер потому что для img-сборки он всё-таки важен.
Leency писал(а):
Я добавлю функций позже.
Соответственно, размер увеличится ещё.
Просто для сравнения, в теме Delphi7 examples есть пример GetScreenImage viewtopic.php?f=33&t=3469#p69039 и в сжатом виде весит он всего каких-то 637 байтов.
Если добавить конвертацию в png и сохранение в файл — размер вряд ли превысит 2 Kb, а у тебя уже 4,5 Kb.


Вернуться к началу
 Заголовок сообщения: Re: EasyShot - Простой скриншотер
СообщениеДобавлено: Пт апр 20, 2018 10:44 pm 
Не в сети

Зарегистрирован: Ср мар 26, 2008 12:44 pm
Сообщения: 215
Leency писал(а):
Я чуток повыпиливал

По-моему, mousecfg поломался. По крайней мере у меня в эмуляторе не работает.
Спойлер: Показать
case evReDraw:
...
WriteText(mouse_frame.x + 110, mouse_frame.y + 45, 0x90, 0x2C343C, CHECK_MOUSE_2);
DrawMouseImage();
DrawControls();


Вернуться к началу
 Заголовок сообщения: Re: EasyShot - Простой скриншотер
СообщениеДобавлено: Сб апр 21, 2018 12:04 am 
Не в сети
Designer
Аватара пользователя

Зарегистрирован: Чт янв 25, 2007 3:33 pm
Сообщения: 4879
tsdima
Спасибо, fixed.

0CodErr
Я уже объяснил почему так. Дополнительная логика слабо будет влиять на размер программы.

_________________
Через тернии к звездам


Вернуться к началу
 Заголовок сообщения: Re: EasyShot - Простой скриншотер
СообщениеДобавлено: Сб апр 21, 2018 12:31 am 
Не в сети

Зарегистрирован: Вс окт 30, 2011 6:43 pm
Сообщения: 1503
Leency писал(а):
Я уже объяснил почему так.
Это?
Leency писал(а):
Картинка чекбокса весит. Много инитов box_lib.
Ну картинка пусть байтов 700, хотя можно и заменить на стандартный системный CheckBox.
Вон тот viewtopic.php?f=24&t=1220&start=315#p66855 скриншотер весит 4,90 КБ.
Но там есть ещё полноэкранный просмотр снимка.
Также там всё самописное, libimg вообще не используется.
С libimg размер должен быть ещё меньше.

Ты, кстати, зачем-то постоянно рисуешь какой-то дополнительный фрейм для EditBox-а.
Это случайно нельзя заменить на элемент Frame с Flags = FR_SUNKEN(см. скриншот под спойлером viewtopic.php?f=33&t=2202&p=66494#p66494)?


Вернуться к началу
 Заголовок сообщения: Re: EasyShot - Простой скриншотер
СообщениеДобавлено: Сб апр 21, 2018 1:22 am 
Не в сети
Designer
Аватара пользователя

Зарегистрирован: Чт янв 25, 2007 3:33 pm
Сообщения: 4879
Я уже потратил с час на поиски причины того что программа весит 9 Кб несжатая и 4,5 сжатая. Хотя example.c весит всего 650 байт. Кажется одного такого места нет, ну sprintf немного много весит. И да - бордеры и вообще библиотека UI.
Простые фреймы тут не подойдут.


Вложения:
ui3d.gif
ui3d.gif [ 5.26 КБ | 411 просмотров ]

_________________
Через тернии к звездам
Вернуться к началу
Показать сообщения за:  Поле сортировки  
Начать новую тему  Ответить на тему  [ 8 сообщений ] 

Часовой пояс: UTC+03:00


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 0 гостей


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

Найти:
Перейти:  
Создано на основе phpBB® Forum Software © phpBB Limited
Русская поддержка phpBB