文档章节

Delphi 与 DirectX 之 DelphiX(66): TDIB.DoResample();

涂孟超
 涂孟超
发布于 2014/09/26 15:37
字数 179
阅读 3
收藏 0

本例效果图:



代码文件:
unit Unit1;

interface

uses
  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;
    procedure Button1Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
    procedure Button3Click(Sender: TObject);
    procedure Button4Click(Sender: TObject);
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
const
  ImgPath1 = 'C:\Temp\DX.jpg';
begin
  DXPaintBox1.DIB.LoadFromFile(ImgPath1);
  DXPaintBox1.Width := DXPaintBox1.DIB.Width;
  DXPaintBox1.Height := DXPaintBox1.DIB.Height;
  DXPaintBox1.Repaint;
end;

procedure TForm1.Button2Click(Sender: TObject);
var
  w,h: Integer;
begin
  w := DXPaintBox1.Width div 2;
  h := DXPaintBox1.Height div 2;
  DXPaintBox1.DIB.DoResample(w, h, TFilterTypeResample(0));
  DXPaintBox1.Repaint;
end;

procedure TForm1.Button3Click(Sender: TObject);
var
  w,h: Integer;
begin
  w := DXPaintBox1.Width div 2;
  h := DXPaintBox1.Height;
  DXPaintBox1.DIB.DoResample(w, h, TFilterTypeResample(0));
  DXPaintBox1.Repaint;
end;

procedure TForm1.Button4Click(Sender: TObject);
var
  w,h: Integer;
begin
  w := Trunc(DXPaintBox1.Width * 1.4);
  h := Trunc(DXPaintBox1.Height * 1.4);
  DXPaintBox1.DIB.DoResample(w, h, TFilterTypeResample(0));
  DXPaintBox1.Repaint;
end;

end.

 
 
 
 
 

 

 

  

本文转载自:http://www.cnblogs.com/del/archive/2009/01/16/1377342.html

共有 人打赏支持
涂孟超
粉丝 12
博文 2011
码字总数 14107
作品 0
深圳
程序员
开源游戏框架(转至wiki)

免费和开源引擎,转载自维基 Agar - 一个高级图形应用程序框架,用于2D和3D游戏。 Allegro - 基于 C/C++ 的游戏引擎,支持图形,声音,输入,游戏时钟,浮点,压缩文件以及GUI。 Axiom 引擎 ...

Matrix4X4
2012/04/17
1K
0
利用Delphi编程控制摄像头(图)

你的电脑有没有摄像头?看到别人用QQ玩视屏你会不会去想怎么实现的?这里介绍使用DELPHI使用MS的 AVICAP32.DLL就可轻松的实现对摄像头编程,如果再加上你的网络编程水平,实现一个视屏聊天就...

长平狐
2012/09/03
168
0
微软发布 Kinect SDK Beta 开发工具包

微软今天发布了运行在 Windows 7 环境的 Kinect SDK Beta(开发工具包),需要 Microsoft .NET Framework 4.0、Microsoft Visual Studio 2010,使用 C++, C#, VB 等开发语言。硬件要求是双核...

红薯
2011/06/17
1K
14
Django 1.11 自定义标签之后,可以不在每个html页面引用就生效吗?

Django 1.11 自定义标签之后,可以不在每个html页面引用就生效吗? 一号门-程序员的工作,程序员的生活(java,python,delphi实战)2017-09-0266 阅读 页面引用自定义htmlDjango 如题,为了方便,...

一号门-程序员的工作,程序员的生活(java,python,delphi实战)
2017/09/02
0
0
漫谈 C# 在游戏领域的应用

原文出处:慕容小匹夫 0x00 前言 随着微软越来越开放,C#也变得越来越吸引人们的眼球。而在游戏行业中,C#也开始慢慢地获得了关注。这不, 网易绝代双娇手游团队已经全面使用.Net Core支持前...

慕容小匹夫
2016/06/28
0
0

没有更多内容

加载失败,请刷新页面

加载更多

自定义Ubuntu/Windows双系统引导菜单主题

学习Linux自然少不了要装双系统,其中Ubuntu便是我们用的最多的Linux系统。装完双系统后,Ubuntu会自动生成grub开机引导及菜单,及其丑陋,而且很多我们用不到的选项。今天我们就介绍burg:修...

Linux就该这么学
26分钟前
0
0
Go 并发(二)

Go Mutex 通过Mutex和信道处理竞态条件。 临界区 当程序并发运行时,多个协程不应该同时访问那些修改共享资源的代码,这些修改共享资源的代码称为临界区。 Go中通过Mutex可以避免同时访问临界...

春哥大魔王的博客
28分钟前
0
0
CentOS 7安装和部署Docker

Docker 要求 CentOS 系统的内核版本高于 3.10 ,查看本页面的前提条件来验证你的CentOS 版本是否支持 Docker 。通过 uname -r 命令查看你当前的内核版本 uname -r3.10.0-514.el7.x86_64 1、...

狼王黄师傅
32分钟前
0
0
php扩展可以通过pecl 或者phpize 安装

pecl 算是 php 扩展的一个官方聚合平台,一些比较有名,有特点的扩展会被 pecl 收录,收录后可以通过 pecl 的方式安装。但是更多的扩展是没有收录在 pecl 上的,这些扩展还是需要通过 phpize...

bengozhong
33分钟前
0
0
CentOS中如何安装7ZIP

执行以下命令下载安装: wget http://nchc.dl.sourceforge.net/project/p7zip/p7zip/9.20.1/p7zip_9.20.1_src_all.tar.bz2tar -jxvf p7zip_9.20.1_src_all.tar.bz2cd p7zip_9.20.1make......

凯文加内特
38分钟前
0
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部