Форум: "Media";
Текущий архив: 2004.09.12;
Скачать: [xml.tar.bz2];
ВнизZoom в Image Найти похожие ветки
← →
killer © (2004-06-21 13:58) [0]Как сделать так чтобы при нажатии одной кнопки изображение увеличивалось в Image, а по нажатию другой уменьшалось?
← →
Семен Сорокин © (2004-06-21 14:13) [1]StretchBlt, StretchDIBits, Canvas.StretchDraw
← →
killer © (2004-06-21 14:28) [2]а что это StretchBlt и StretchDIBits? Попробовал Image.StretchBlt - нет такого... есть просто Stretch
← →
killer © (2004-06-21 14:45) [3]что это такое?
← →
Семен Сорокин © (2004-06-21 15:07) [4]
> killer © (21.06.04 14:45) [3]
> что это такое?
ф-ции API для растягивания изображения.
← →
Огромное Кулясище (2004-06-21 15:35) [5]unit mainUnit;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
ExtDlgs, StdCtrls, Spin, ExtCtrls;
type
TmainForm = class(TForm)
Image: TImage;
panelTools: TPanel;
btnOpenPic: TButton;
SpinZoom: TSpinEdit;
Label1: TLabel;
OpenPictureDialog: TOpenPictureDialog;
procedure btnOpenPicClick(Sender: TObject);
procedure FormDestroy(Sender: TObject);
procedure SpinZoomChange(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
mainForm: TmainForm;
var
Pic: TPicture;
implementation
{$R *.DFM}
procedure TmainForm.btnOpenPicClick(Sender: TObject);
begin
If OpenPictureDialog.Execute then
begin
If Pic <> nil then Pic.Free;
Pic := TPicture.Create;
Pic.LoadFromFile(OpenPictureDialog.FileName);
Image.Width := Pic.Bitmap.Width;
Image.Height := Pic.Bitmap.Height;
Image.Picture.Bitmap.Width := Pic.Bitmap.Width;
Image.Picture.Bitmap.Height := Pic.Bitmap.Height;
Image.Canvas.StretchDraw(Rect(0, 0, Pic.Bitmap.Width, Pic.Bitmap.Height),
Pic.Bitmap);
end;
end;
procedure TmainForm.FormDestroy(Sender: TObject);
begin
If Pic <> nil then Pic.Free;
end;
procedure TmainForm.SpinZoomChange(Sender: TObject);
var WNew, HNew: Integer;
begin
If Pic <> nil then
begin
WNew := Pic.Bitmap.Width * SpinZoom.Value;
HNew := Pic.Bitmap.Height * SpinZoom.Value;
Image.Width := WNew;
Image.Height := HNew;
Image.Picture.Bitmap.Width := WNew;
Image.Picture.Bitmap.Height := HNew;
Image.Picture.Bitmap.Canvas.StretchDraw(Rect(0, 0, WNew, HNew),
Pic.Bitmap);
end;
end;
← →
killer © (2004-06-24 15:13) [6]это только с bmp файлами работает... я хотел переделать под все файлы... т.е. изменял Image.Picture.Width/Height но... пишет что этот параметр только для чтения... что делать??? Может компонент какой есть?
← →
Огромное Кулясище (2004-06-24 17:23) [7]Вот рабочий пример:
http://www.hot.ee/mvpselite/ZoomEx.rar
Страницы: 1 вся ветка
Форум: "Media";
Текущий архив: 2004.09.12;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.031 c