Здравствуйте, господа! Мне нужно сделать зеркально отражение картинки. Но у меня почему-то оно не работает, я нажимаю на кнопку, а вместо того чтобы зеркально отобразить - белый экран! Подскажите, что не так!!!
Вот код:
| Код | procedure flip_horizontal(quelle, ziel: tbitmap); begin ziel.assign(nil); ziel.width := quelle.width; ziel.height := quelle.height; stretchblt(ziel.canvas.handle, 0, 0, ziel.width, ziel.height, quelle.canvas.handle, 0, quelle.height, quelle.width, quelle.height, srccopy); end;
procedure flip_vertikal(quelle, ziel: tbitmap); begin ziel.assign(nil); ziel.width := quelle.width; ziel.height := quelle.height; stretchblt(ziel.canvas.handle, 0, 0, ziel.width, ziel.height, quelle.canvas.handle, quelle.width, 0, quelle.width, quelle.height, srccopy); end;
procedure tform1.button1click(sender: tobject); var temp: tbitmap; begin temp := tbitmap.create; try temp.assign(image1.picture.bitmap); flip_vertikal(temp, image1.picture.bitmap); finally temp.free; end; end;
|
|