Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.02.06;
Скачать: CL | DM;

Вниз

Сохранить регион в файл и загрузить.   Найти похожие ветки 

 
Mihey ©   (2004-01-23 22:08) [0]

Завожу переменную hrgn: Integer. Пишу:

hrgn := CreateRectRgn(0, 0, Picture.Bitmap.Width, Picture.Bitmap.Height);

Далее заполняю регион на основе картинки. При вызове SetWindowsRegion всё работает. За это нет волнения. Теперь мне хотелось бы сохранить регион в файл, чтобы потом загрузить (в ту же перменную). Как это можно сделать?


 
Юрий Федоров ©   (2004-01-23 22:54) [1]

Сохраняй Rect :-)


 
Mihey ©   (2004-01-23 23:03) [2]

Не совсем понимаю о каком Rect идёт речь. Сохранение переменной hrgn в текстовый файл не проходит - сохраняется четырёхзначное число, которое при дальнейшей загрузке никак не делает регион.


 
Юрий Зотов ©   (2004-01-23 23:07) [3]

Думаю, здесь придется сохранять саму картинку. А при ее подъеме как раз и проделывать все манипуляции с регионами.


 
Юрий Федоров ©   (2004-01-23 23:09) [4]

для простоты
hrgn := CreateRectRgn(0, 0, Picture.Bitmap.Width, Picture.Bitmap.Height);

создает Handle региона. Если еще раз его создать, Handle будет уже другой. Имхо, это полный аналог указателя на объект, его значение определяется менеждером памяти исходя из текущей ситуации в куче.
Сохранять hrgn - то же самое, что и сохранять указатель (pointer)
более того, это тоже самое, что и передавать указатель по сети на другой компьютер ("а вы знаете, у меня на компьютере по этому адресу находится нечто такое: ... ")

так что сохраняй координаты прямоугольника(0, 0, Picture.Bitmap.Width, Picture.Bitmap.Height), а при считывании вызывай заново функцию CreateRectRgn со считанными только что координатами


 
Mihey ©   (2004-01-23 23:25) [5]

Да, теперь понятно. Очень жаль, что так получается - вырезать регион по картинке слишком медленно. Спасибо за помощь.


 
MBo ©   (2004-01-24 09:00) [6]

GetRgnData
ExtCreateRgn



Страницы: 1 вся ветка

Текущий архив: 2004.02.06;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.019 c
1-16376
Сергей В.
2004-01-22 20:47
2004.02.06
Передача длинных строк PChar в dll.


3-16071
Goida
2004-01-12 10:28
2004.02.06
Сортировка DBGrid


1-16468
Pbulbo
2004-01-27 22:02
2004.02.06
Большой массив, как?


1-16343
denis24
2004-01-24 13:16
2004.02.06
ф-ция pos


3-16180
mtb
2004-01-13 12:40
2004.02.06
Проблема Запись файла > 1 Mб в поле Blob (база MS SQL)