Главная страница
    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.44 MB
Время: 0.314 c
7-1080470187
VitGun
2004-03-28 14:36
2004.04.11
Перехват обращения к FDD, LPT,USB


14-1079088621
Странник Вселенной
2004-03-12 13:50
2004.04.11
О выздоровлении от РАКА


11-1066059582
Eugene_29
2003-10-13 19:39
2004.04.11
Как переделать VCL-проект в KOL?


1-1082530557
denis24
2004-04-21 10:55
2004.04.11
как сделать чтобы Label визуально был сверху Stringgri на форме


7-1075725608
Falendysh
2004-02-02 15:40
2004.04.11
Работа с посторонними окнами





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский