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

Вниз

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 вся ветка

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

Наверх




Память: 0.5 MB
Время: 0.024 c
1-1090045555
ko
2004-07-17 10:25
2004.08.01
Процедуры


1-1090223109
Vilux
2004-07-19 11:45
2004.08.01
Delphi+xls


14-1089964830
Dmitriy O.
2004-07-16 12:00
2004.08.01
Референдум


14-1089965311
IgorG
2004-07-16 12:08
2004.08.01
узнать имя и пароль пользователя


14-1089429928
Думкин
2004-07-10 07:25
2004.08.01
С днем рождения! 10 июля.