博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Delphi 与 DirectX 之 DelphiX(92): TDIB.Draw3x3Matrix();
阅读量:6244 次
发布时间:2019-06-22

本文共 3378 字,大约阅读时间需要 11 分钟。

  hot3.png

本例效果图:
26153930_2eOx.gif

代码文件:

unit Unit1;interfaceuses  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,  Dialogs, DIB, StdCtrls;type  TForm1 = class(TForm)    DXPaintBox1: TDXPaintBox;    Button1: TButton;    Button2: TButton;    Button3: TButton;    Button4: TButton;    Button5: TButton;    Button6: TButton;    procedure FormCreate(Sender: TObject);    procedure FormDestroy(Sender: TObject);    procedure Button1Click(Sender: TObject);    procedure Button2Click(Sender: TObject);    procedure Button3Click(Sender: TObject);    procedure Button4Click(Sender: TObject);    procedure Button5Click(Sender: TObject);    procedure Button6Click(Sender: TObject);  end;var  Form1: TForm1;implementation{$R *.dfm}var  dib: TDIB;  procedure TForm1.FormCreate(Sender: TObject);const  ImgPath1 = 'C:\Temp\DX.jpg';begin  dib := TDIB.Create;  dib.LoadFromFile(ImgPath1);  DXPaintBox1.Width := dib.Width;  DXPaintBox1.Height := dib.Height;  DXPaintBox1.DIB.Assign(dib);  DXPaintBox1.Repaint;end;procedure TForm1.FormDestroy(Sender: TObject);begin  dib.Free;end;procedure TForm1.Button1Click(Sender: TObject);begin  DXPaintBox1.DIB.Draw3x3Matrix(dib, msEmboss);  DXPaintBox1.Repaint;end;procedure TForm1.Button2Click(Sender: TObject);begin  DXPaintBox1.DIB.Draw3x3Matrix(dib, msHardEmboss);  DXPaintBox1.Repaint;end;procedure TForm1.Button3Click(Sender: TObject);begin  DXPaintBox1.DIB.Draw3x3Matrix(dib, msBlur);  DXPaintBox1.Repaint;end;procedure TForm1.Button4Click(Sender: TObject);begin  DXPaintBox1.DIB.Draw3x3Matrix(dib, msSharpen);  DXPaintBox1.Repaint;end;procedure TForm1.Button5Click(Sender: TObject);begin  DXPaintBox1.DIB.Draw3x3Matrix(dib, msEdgeDetect);  DXPaintBox1.Repaint;end;procedure TForm1.Button6Click(Sender: TObject);const  ms: TMatrixSetting = (-9,1,-2,-10,-7,4,-4,-3,1,-5);begin  DXPaintBox1.DIB.Draw3x3Matrix(dib, ms);  DXPaintBox1.Repaint;end;end.
窗体文件:

object Form1: TForm1  Left = 0  Top = 0  Caption = 'Form1'  ClientHeight = 139  ClientWidth = 207  Color = clBtnFace  Font.Charset = DEFAULT_CHARSET  Font.Color = clWindowText  Font.Height = -11  Font.Name = 'Tahoma'  Font.Style = []  OldCreateOrder = False  OnCreate = FormCreate  OnDestroy = FormDestroy  PixelsPerInch = 96  TextHeight = 13  object DXPaintBox1: TDXPaintBox    Left = 8    Top = 8    Width = 81    Height = 73    AutoStretch = False    Center = False    KeepAspect = False    Stretch = False    ViewWidth = 0    ViewHeight = 0  end  object Button1: TButton    Left = 140    Top = 8    Width = 60    Height = 20    Caption = 'Button1'    TabOrder = 0    OnClick = Button1Click  end  object Button2: TButton    Left = 140    Top = 29    Width = 60    Height = 20    Caption = 'Button2'    TabOrder = 1    OnClick = Button2Click  end  object Button3: TButton    Left = 140    Top = 50    Width = 60    Height = 20    Caption = 'Button3'    TabOrder = 2    OnClick = Button3Click  end  object Button4: TButton    Left = 140    Top = 71    Width = 60    Height = 20    Caption = 'Button4'    TabOrder = 3    OnClick = Button4Click  end  object Button5: TButton    Left = 140    Top = 92    Width = 60    Height = 20    Caption = 'Button5'    TabOrder = 4    OnClick = Button5Click  end  object Button6: TButton    Left = 140    Top = 114    Width = 60    Height = 20    Caption = 'Button6'    TabOrder = 5    OnClick = Button6Click  endend

转载于:https://my.oschina.net/hermer/blog/320841

你可能感兴趣的文章
Ubuntu 10.04安装水晶(Mercury)无线网卡驱动
查看>>
我的友情链接
查看>>
ElasticSearch 2 (32) - 信息聚合系列之范围限定
查看>>
VS2010远程调试C#程序
查看>>
windows查看端口占用
查看>>
Yii用ajax实现无刷新检索更新CListView数据
查看>>
App 卸载记录
查看>>
JavaScript变量和作用域
查看>>
开源SIP服务器加密软件NethidPro升级
查看>>
Apache Pulsar中的地域复制,第1篇:概念和功能
查看>>
python pip install 出现 OSError: [Errno 1] Operation not permitted
查看>>
南京大学周志华教授当选欧洲科学院外籍院士
查看>>
计算机网络与Internet应用
查看>>
oracle在线迁移同步数据,数据库报错
查看>>
linux性能剖析工具
查看>>
flutter中的异步
查看>>
计算机高手也不能编出俄罗斯方块——计算机达人成长之路(16)
查看>>
# 2017-2018-1 20155224 《信息安全系统设计基础》第七周学习总结
查看>>
scikit-learn预处理实例之一:使用FunctionTransformer选择列
查看>>
Cassandra监控 - OpsCenter手册
查看>>