|
Основной форум Сюда все проблемы связанные с программированием. |
09.05.2011, 22:31
|
#1
|
Знающий
Регистрация: 14.05.2010
Сообщений: 297
Написано 13 полезных сообщений (для 13 пользователей)
|
Как скриншот
Мне надо скопировать часть экрана. Тоесть у меня рисовалка написана, чтобы сохранить- я хочу копирнуть часть экрана в память а потом это сохранить либой. Где-то слышал про GetScreen? (ImageGEtScreen). Есть такое? Это как-бы скриншот сделать! Хелп...
__________________
G502, GT S5230w user!
|
(Offline)
|
|
09.05.2011, 23:17
|
#2
|
ПроЭктировщик
Регистрация: 09.05.2010
Адрес: рф ро шахты
Сообщений: 177
Написано 66 полезных сообщений (для 271 пользователей)
|
Ответ: Как скриншот
я в данный момент тоже пытаюсь java-аналог ImageFromCanvas (что-то типа Image.getRGB() для дисплея) найти. пока безуспешно ..(
__________________
to be or not to be - it's not a question!
2b or not 2b = ff
|
(Offline)
|
|
10.05.2011, 01:46
|
#3
|
Мастер
Регистрация: 03.05.2010
Адрес: Подмосковье
Сообщений: 1,218
Написано 438 полезных сообщений (для 790 пользователей)
|
Ответ: Как скриншот
В библиотеках для графики точно есть. Переключает вывод на дисплей/на картинку в памяти.
__________________
О¯О ¡¡¡ʁɔvʎнdǝʚǝdǝu dиW
|
(Offline)
|
|
10.05.2011, 09:15
|
#4
|
Знающий
Регистрация: 14.05.2010
Сообщений: 297
Написано 13 полезных сообщений (для 13 пользователей)
|
Ответ: Как скриншот
Там можно я так понял копирнуть весь экран, а мне надо в формате (x1,y1,x2,y2); Тоесть указать с кокой по какую часть копировать. Ткните носом плиз...
__________________
G502, GT S5230w user!
|
(Offline)
|
|
10.05.2011, 11:36
|
#5
|
Бывалый
Регистрация: 18.08.2009
Сообщений: 745
Написано 146 полезных сообщений (для 215 пользователей)
|
Ответ: Как скриншот
А чем не катит то этот вариант?
function ImageFromCanvas(x: integer; y: integer; width: integer; height: integer ): image ;
|
(Offline)
|
|
Сообщение было полезно следующим пользователям:
|
|
10.05.2011, 20:31
|
#6
|
Мастер
Регистрация: 03.05.2010
Адрес: Подмосковье
Сообщений: 1,218
Написано 438 полезных сообщений (для 790 пользователей)
|
Ответ: Как скриншот
lib_beta
CreateImage(w: integer; h: integer) - Создать пустую (белую) картинку с размерами w * h Если w и h равны 0 - картинка удаляется (с очисткой памяти). Replace - Переключить фокус вывода с дисплея в картинку и наоборот. После переключения фокуса вывода в картинке можно рисовать стандартными методами MIDletPascal (рисовать примитивы: линии, точки, круги, дуги; надписи; выводить в неё др. картинки и проч.) image GetImage - Получить картинку, которая сейчас находится НЕ в фокусе вывода Т.е. если фокус вывода сейчас стоит на дисплее - вернется ваша сгенерированная картинка. Если фокус на картинке - вернется скриншот вашего дисплея.
__________________
О¯О ¡¡¡ʁɔvʎнdǝʚǝdǝu dиW
|
(Offline)
|
|
10.05.2011, 23:03
|
#7
|
Знающий
Регистрация: 14.05.2010
Сообщений: 297
Написано 13 полезных сообщений (для 13 пользователей)
|
Ответ: Как скриншот
Cherepets, мне надо картинку в переменную, чтобыпотом можно было либ_пнг сохранить. Так выйдет?
__________________
G502, GT S5230w user!
|
(Offline)
|
|
11.05.2011, 00:16
|
#8
|
Бывалый
Регистрация: 18.08.2009
Сообщений: 745
Написано 146 полезных сообщений (для 215 пользователей)
|
Ответ: Как скриншот
ну да
var img1:image;
img1:=ImageFromCanvas(0,0,getwidth,getheight);
|
(Offline)
|
|
Сообщение было полезно следующим пользователям:
|
|
13.05.2011, 01:03
|
#9
|
ПроЭктировщик
Регистрация: 09.05.2010
Адрес: рф ро шахты
Сообщений: 177
Написано 66 полезных сообщений (для 271 пользователей)
|
Ответ: Как скриншот
Сообщение от AngeLvKedaX
Там можно я так понял копирнуть весь экран, а мне надо в формате (x1,y1,x2,y2); Тоесть указать с кокой по какую часть копировать. Ткните носом плиз...
|
специально для тебя добавил в свою первую либу ..)
функция copyxxyy(x1, y1, x2, y2): image копирует часть экрана, опираясь на углы. x1 может быть больше x2, а может и убегать за край экрана - ничего не зависнет... не должно по идее ._.
Lib_imgs
__________________
to be or not to be - it's not a question!
2b or not 2b = ff
Последний раз редактировалось barsunduk, 13.05.2011 в 20:12.
|
(Offline)
|
|
Сообщение было полезно следующим пользователям:
|
|
13.05.2011, 18:22
|
#10
|
Знающий
Регистрация: 14.05.2010
Сообщений: 297
Написано 13 полезных сообщений (для 13 пользователей)
|
Ответ: Как скриншот
Спасиб)
__________________
G502, GT S5230w user!
|
(Offline)
|
|
13.05.2011, 19:23
|
#11
|
ПроЭктировщик
Регистрация: 09.05.2010
Адрес: рф ро шахты
Сообщений: 177
Написано 66 полезных сообщений (для 271 пользователей)
|
Ответ: Как скриншот
сорри!
перезалил либу, загрузи еще разок. я по запарке нерабочий вариант в 1й раз залил ..(
этот работает
Lib_imgs
__________________
to be or not to be - it's not a question!
2b or not 2b = ff
|
(Offline)
|
|
Сообщение было полезно следующим пользователям:
|
|
13.05.2011, 21:52
|
#12
|
Знающий
Регистрация: 14.05.2010
Сообщений: 297
Написано 13 полезных сообщений (для 13 пользователей)
|
Ответ: Как скриншот
Тут можно часть экрана в переменную влить?
__________________
G502, GT S5230w user!
|
(Offline)
|
|
15.05.2011, 02:00
|
#13
|
ПроЭктировщик
Регистрация: 09.05.2010
Адрес: рф ро шахты
Сообщений: 177
Написано 66 полезных сообщений (для 271 пользователей)
|
Ответ: Как скриншот
Сообщение от AngeLvKedaX
Тут можно часть экрана в переменную влить?
|
// копирует часть экрана, вместо ширины и высоты указывать координаты второго угла function copyxxyy(x1, y1, x2, y2: integer): image; // возвращает экран function copyscr: image; // копировать часть картинки function copyrect(img: image; x, y, w, h: integer): image;
copyxxyy - как ты заказывал, координаты области залаются по 2 точкам
copyscr - скриншот
copyrect - крпирование части любой картинки с сохранением прозрачности
__________________
to be or not to be - it's not a question!
2b or not 2b = ff
|
(Offline)
|
|
Сообщение было полезно следующим пользователям:
|
|
15.05.2011, 08:43
|
#14
|
Знающий
Регистрация: 14.05.2010
Сообщений: 297
Написано 13 полезных сообщений (для 13 пользователей)
|
Ответ: Как скриншот
Cпасибо огромное.
__________________
G502, GT S5230w user!
|
(Offline)
|
|
Ваши права в разделе
|
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 04:17.
|