📄 bspngimageeditor.pas
字号:
{*******************************************************************}
{ }
{ Almediadev Visual Component Library }
{ BusinessSkinForm }
{ Version 6.50 }
{ }
{ Copyright (c) 2000-2008 Almediadev }
{ ALL RIGHTS RESERVED }
{ }
{ Home: http://www.almdev.com }
{ Support: support@almdev.com }
{ }
{*******************************************************************}
unit bsPngImageEditor;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
StdCtrls, bsSkinCtrls, bsPngImage, Buttons;
type
TbsPNGEditorForm = class(TForm)
Button1: TButton;
Button2: TButton;
OD: TOpenDialog;
BitBtn1: TBitBtn;
BitBtn2: TBitBtn;
procedure FormCreate(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure Button1Click(Sender: TObject);
procedure BitBtn1Click(Sender: TObject);
procedure BitBtn2Click(Sender: TObject);
procedure FormDestroy(Sender: TObject);
private
PaintPanel: TbsskinPaintPanel;
procedure PaintPanelOnPaint(Cnvs: TCanvas; R: TRect);
public
{ Public declarations }
FPngImage: TbsPngImage;
end;
var
bsPNGEditorForm: TbsPNGEditorForm;
procedure ExecutePngEditor(AEditImage: TbsPngImage);
implementation
{$R *.DFM}
procedure ExecutePngEditor(AEditImage: TbsPngImage);
var
F: TbsPNGEditorForm;
begin
F := TbsPNGEditorForm.Create(Application);
F.Position := poScreenCenter;
F.FPngImage.Assign(AEditImage);
if F.ShowModal = mrOk
then
begin
AEditImage.Assign(F.FPngImage);
end;
F.Free;
end;
procedure TbsPNGEditorForm.FormCreate(Sender: TObject);
begin
FPngImage := TbsPngImage.Create;
PaintPanel := TbsSkinPaintPanel.Create(Self);
PaintPanel.SetBounds(96, 8, 251, 251);
PaintPanel.Parent := Self;
PaintPanel.OnPanelPaint := PaintPanelOnPaint;
end;
procedure TbsPNGEditorForm.PaintPanelOnPaint(Cnvs: TCanvas; R: TRect);
begin
Cnvs.Brush.Color := clWhite;
Cnvs.Brush.Style := bsSolid;
Cnvs.FillRect(R);
if not FPngImage.Empty
then
begin
FPngImage.Draw(Cnvs, R);
end;
end;
procedure TbsPNGEditorForm.Button2Click(Sender: TObject);
begin
FPngImage.Assign(nil);
PaintPanel.RePaint;
end;
procedure TbsPNGEditorForm.Button1Click(Sender: TObject);
begin
if OD.Execute
then
begin
FPngImage.LoadFromFile(OD.FileName);
PaintPanel.RePaint;
end;
end;
procedure TbsPNGEditorForm.BitBtn1Click(Sender: TObject);
begin
ModalResult := mrOk;
end;
procedure TbsPNGEditorForm.BitBtn2Click(Sender: TObject);
begin
ModalResult := mrCancel;
end;
procedure TbsPNGEditorForm.FormDestroy(Sender: TObject);
begin
FPngImage.Free;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -