Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2004.04.11;
Скачать: [xml.tar.bz2];

Вниз

Быстрая отрисовка канвы   Найти похожие ветки 

 
vin   (2004-03-22 15:43) [0]

Уважаемые Коллеги!
Пишу просмотрщик файлов "нестандартного" графического формата.
Вывожу картинку на канву TImage. Хочу организовать быструю процедуру отрисовки картинки - стандартную функцию Pan, типичную, например, для AutoCad. Т.е. если изображение не помещается полностью на TImage, с помощью мыши двигаю его и могу полностью его просмотреть. Т.е. в каждый момент вижу только определенную часть изображения.
1. Если перерисовываю все - получается долго.
2. Загонял все изображение во временный TBitmap, а потом делал Canvas.Draw со сдвигом. Но при большом изображении, жрет память и вылитает.

Можно ли как-то сделать так, чтобы "обновлять" только часть изображения, заведомо отбросив то, сто находится в данный момент за границей Image. Есть ли какой-то аналог ClipRect на запись?

Подскажите, дайте свой совет.

Заранее благодарен,
Иван.


 
Serge ©   (2004-03-22 15:47) [1]

BitBlt ?


 
Ega23 ©   (2004-03-22 15:57) [2]

CopyRect с виртуального битмапа должен помочь


 
REA ©   (2004-03-22 16:44) [3]

>Т.е. если изображение не помещается полностью на TImage, с помощью мыши двигаю его и могу полностью его просмотреть

Image.Autosize + ScrollBox



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

Форум: "Основная";
Текущий архив: 2004.04.11;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.45 MB
Время: 0.14 c
1-1079957412
Vadim S_
2004-03-22 15:10
2004.04.11
.NET FAQ Delphi 7.0/8.0


1-1079960554
senya
2004-03-22 16:02
2004.04.11
Как изменить свойства у элементов управления Excel


1-1080121803
BanderLog
2004-03-24 12:50
2004.04.11
И опять Excel


3-1079012632
Evyshka
2004-03-11 16:43
2004.04.11
Перевод xml в БД


6-1079507178
Layner
2004-03-17 10:06
2004.04.11
Сохраняю файл аттач с помощью TIdPOP3, TIdAttachment





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский