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

Вниз

Картинку из файла уменьшить и поместить в tbitmap   Найти похожие ветки 

 
Rembo   (2010-05-26 10:34) [0]

Всем привет!
Делаю так:
var  pic:TPicture;bmp1,bmp2:tbitmap;
...
pic.LoadFromFile("image.jpg");
bmp1.Assign(pic.Graphic);
bmp2.Canvas.CopyRect(rect(0,0,164,164), bmp1.Canvas,rect(0,0,bmp1.Width,bmp1.Height));

В итоге получаю уменьшенную картинку в bmp2, но при этом вижу дефект цветов, то есть она имеет вид будто открыли в пейнте 32 битный бмпшник и сохранили в 8 битный. Как это можно исправить?


 
Andy BitOff ©   (2010-05-26 10:38) [1]

А зачем pic? Почему нельзя сразу загрузить в bmp1?


 
Rembo   (2010-05-26 10:44) [2]

tbitmap грузит токо *.bmp а tpicture сам определяет какую графику использовать Tjpgimage или Tgifimage и т.д


 
Омлет ©   (2010-05-26 11:41) [3]

А зачем bmp1? Можно сразу на bmp2 уменьшать из pic.

bmp2.PixelFormat := pf24bit;


 
MBo ©   (2010-05-26 11:51) [4]

SetStretchbltMode у приемного Canvas установить в HALFTONE


 
Rembo   (2010-05-26 12:03) [5]

bmp2.PixelFormat := pf24bit; - непомгло
SetStretchbltMode - искал не нашел, за то нашел:
bmp1.Canvas.StretchDraw(rect(0,0,164,164),pic.Graphic); - все получилось пасиба



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

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

Наверх




Память: 0.47 MB
Время: 0.048 c
2-1273044743
SergaDe
2010-05-05 11:32
2010.08.27
BDE Paradox странное


15-1268083801
Юрий
2010-03-09 00:30
2010.08.27
С днем рождения ! 9 марта 2010 вторник


2-1267110427
dkhristich
2010-02-25 18:07
2010.08.27
Как корректно прекратить поток?


15-1274335111
AKE
2010-05-20 09:58
2010.08.27
Идея консольной операционки(или рабочего стола).


2-1274084890
REX
2010-05-17 12:28
2010.08.27
метод ExecSQL (компонент ADOQuery)