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

Вниз

2 вопроса по Канве...   Найти похожие ветки 

 
Sanek_metaller ©   (2004-05-13 00:19) [0]

Здравствуйте,собственно:
1)Можно ли из TImage картинку переделать так,чтобы ее через канву отображать?
2)Как отчистить канву?
Заранее всем спасибо.


 
Mihey ©   (2004-05-13 00:37) [1]

1) Да
2) FillRect либо через BitBlt с флагом SrcWhiteness, но только для белого.


 
Sanek_metaller ©   (2004-05-13 00:54) [2]

>Mihey ©   (13.05.04 00:37) [1]
А можно код,если конечно не сложно...


 
Sanek_metaller ©   (2004-05-13 15:06) [3]

>Mihey ©   (13.05.04 00:37) [1]
Со вторым понятно,а с первым как?


 
Mihey ©   (2004-05-13 15:18) [4]

По воводу первого. Я так понял, что нужно картинку из TImage отобразить на канве, например, формы:

Form1.Canvas.Draw(0, 0, Image1.Picture.Bitmap);


 
Sanek_metaller ©   (2004-05-13 17:02) [5]

>Mihey ©   (13.05.04 15:18) [4]
Огромное спасибо,но требовалось не так,а с винта на десктоп,но ответ найден,хотя в хелпе делфийном написано,что через драв битмэпы не юзаются и экземпл там был с метафайлом...
И еще вопрос,а можно ли вместо битмэпа юзать JPG?


 
Mihey ©   (2004-05-13 19:10) [6]

2 Sanek_metaller:

>И еще вопрос,а можно ли вместо битмэпа юзать JPG?

А это неверный вопрос. Дело в том, что когда ты загружаешь JPEG, то он загружается в bitmap. Так происходит с любым поддерживаемым форматом. В памяти хранится только бтовая матрица, в памяти не хранятся те блоки и прочие данные, которые позволяют быть JPEG"у таким сжатым. Когда ты через LoadFromFile объекта типа TPicture загружаешь JPEG, то ты получаешь этот JPEG в TPicture.Bitmap.

Следовательно, ты можешь юзать любой формат, который можешь загрузить.


 
Sanek_metaller ©   (2004-05-14 22:17) [7]

Короче нифига JPG не прет...


 
Mihey ©   (2004-05-14 22:28) [8]

Если хочешь разобраться, то приведи код - поможем.


 
Sanek_metaller ©   (2004-05-15 00:07) [9]

Код простой,созд. переменную типа Tbitmap,и в неё гружу BMP,и потом на канву,через Draw,а надо,чтобы вместо BMP,JPG было.


 
Mihey ©   (2004-05-15 00:22) [10]

Такой код работает:

uses jpeg;

var Pic: TPicture;
begin
 Pic := TPicture.Create;
 Pic.LoadFromFile("C:\temp1.jpg");
 Form1.Canvas.Draw(0, 0, Pic.Graphic);
 Pic.Free;
end;


 
Sanek_metaller ©   (2004-05-15 00:28) [11]

>Mihey ©   (15.05.04 00:22) [10]
Ща посмотрю...


 
Sanek_metaller ©   (2004-05-15 00:32) [12]

>Mihey ©   (15.05.04 00:22) [10]
Угу,огромное вам спасибо.


 
Style ©   (2004-05-15 00:37) [13]

Можно и TJpegImage

var
Jpg: TJpegImage;
begin
 Jpg := TJpegImage.Create;
 try
  Jpg.LoadFromFile("C:\yana.jpg");
  Form1.Canvas.Draw(0, 0, Jpg);
 finally
  Jpg.Free;
 end;
end;

и не забывай try .. finally...end;



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

Форум: "Media";
Текущий архив: 2004.08.01;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.47 MB
Время: 0.036 c
14-1089641103
VID
2004-07-12 18:05
2004.08.01
Вопросы по администрированию доступа к файлам и папкам


3-1089214866
Bohdan
2004-07-07 19:41
2004.08.01
выполнение запроса типа Дата в базе MSAccess


14-1089974061
Депрессирующий Человек
2004-07-16 14:34
2004.08.01
Программизм -> импотенция, геморрой :(


14-1089704267
Max Ivanych
2004-07-13 11:37
2004.08.01
Всю ночь снился Access...


6-1086238856
NorthMan
2004-06-03 09:00
2004.08.01
idTCPClient





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