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

Вниз

Как сузить битмап?   Найти похожие ветки 

 
maxistent   (2004-07-01 18:45) [0]

Привет всем Мастерам и не только!
Ситуация: загружен битмап в TImage.
Вопрос: как сделать так, чтобы он (битмап) сузился, например,
справа (слева, сверху, снизу) на нужное кол-во пикселей?
|\
| \
|  |
|  |
|  |
| /
|/
Если есть инфа по этому поводу, может скинете на MAXISTENT@MAIL.RU?
А то у меня нет возможности сидеть долго в Инете.
!!! Заранее огромное спасибо !!!


 
Ega23 ©   (2004-07-01 18:48) [1]

Что значит "сузился"? StretchDraw?


 
maxistent   (2004-07-01 19:23) [2]

Чтобы с одного конца(например, с правого) он стал меньше


 
Ega23 ©   (2004-07-01 19:34) [3]

TBitmap.Canvas.StretchDraw  рой в этом направлении...


 
Рыба ©   (2004-07-01 23:23) [4]

Да, есть какая-то формула...


 
Огромное Кулясищще ©   (2004-07-02 00:12) [5]

Да, это, знаете, проективное преобразование, весьма сложное. Оно реализовано в Graphic32 (http://www.g32.org). StretchDraw тут не помошник и даже не направитель.


 
Глеб ©   (2004-07-02 02:32) [6]

Bitmap.Width? ИМХО


 
MBo ©   (2004-07-02 06:08) [7]


procedure TForm1.Button1Click(Sender: TObject);
var
 a, b: TBitmap;
 x, y, yy, cy, w: Integer;
begin
 a := TBitmap.Create;
 b := TBitmap.Create;
 a.LoadFromFile("pic.bmp");
 b.Assign(a);
 b.Canvas.FillRect(Rect(0, 0, b.Width, b.Height));
 w := a.Width;
 cy := a.Height div 2;
 for x := 0 to a.Width - 1 do
   for y := 0 to a.Height - 1 do begin
     yy := cy + (y - cy) * (w - x div 2) div w;
     b.Canvas.Pixels[x, yy] := a.Canvas.Pixels[x, y];
   end;
 Canvas.Draw(0, 0, b);
 b.Free;
 a.Free;
end;


 
buka   (2004-07-02 10:17) [8]

В школе учился? Скажи честно.


 
maxistent   (2004-07-02 10:35) [9]

в школе такой фигнёй не страдают, а мне надо!


 
WondeRu ©   (2004-07-02 13:30) [10]

я бы с извратом сделал: наложил бы текстуру в ОпенЖЛ на трапецию!)))



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

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

Наверх




Память: 0.48 MB
Время: 0.047 c
4-1092832619
lightix
2004-08-18 16:36
2004.09.26
Получить имя пользователя Win2k


6-1090301549
Eagle
2004-07-20 09:32
2004.09.26
Socket PORT


4-1092316732
axelrod
2004-08-12 17:18
2004.09.26
Регистрация в системном реестре


4-1092521045
Darthman
2004-08-15 02:04
2004.09.26
Как перехватить мультимедиа клавиши на клавиатуре?


3-1093407981
Desperado
2004-08-25 08:26
2004.09.26
TIBTransaction и MIDAS