Главная страница
    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.03 c
1-1089886356
Виталя
2004-07-15 14:12
2004.08.01
Отчет в Word в отдельном потоке Thread


14-1089741499
Слабак
2004-07-13 21:58
2004.08.01
буфера


1-1090298570
cvg
2004-07-20 08:42
2004.08.01
Как все-таки выйти из цикла, если форма не в фокусе?


14-1089396182
panov
2004-07-09 22:03
2004.08.01
Ура! Вот он - долгожданный отпуск!


1-1090138449
Лёха
2004-07-18 12:14
2004.08.01
RAS API





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