文档章节

图片的合并与缩放 - 回复 "錢亞兵" 的问题

涂孟超
 涂孟超
发布于 2014/09/26 15:31
字数 203
阅读 4
收藏 0
问题来源: http://www.cnblogs.com/del/archive/2008/12/30/1316584.html#1417644

unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls;

type
  TForm1 = class(TForm)
    Button1: TButton;
    Button2: TButton;
    procedure Button1Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

{将两个图片横向合并}
procedure TForm1.Button1Click(Sender: TObject);
var
  bit, bit1, bit2: TBitmap;
  h: Integer;
begin
  bit := TBitmap.Create;
  bit1 := TBitmap.Create;
  bit2 := TBitmap.Create;

  bit1.LoadFromFile('c:\temp\test1.bmp');
  bit2.LoadFromFile('c:\temp\test2.bmp');

  h := bit1.Height; if bit2.Height > h then h := bit2.Height;
  bit.SetSize(bit1.Width + bit2.Width, h);

  bit.Canvas.Draw(0, 0, bit1);
  bit.Canvas.Draw(bit1.Width, 0, bit2);

  bit.SaveToFile('c:\temp\test.bmp');

  bit.Free;
  bit1.Free;
  bit2.Free;
end;

{将图片缩小至 1/4}
procedure TForm1.Button2Click(Sender: TObject);
const
  r = 0.25;
var
  bit1, bit2: TBitmap;
begin
  bit1 := TBitmap.Create;
  bit2 := TBitmap.Create;

  bit1.LoadFromFile('c:\temp\test.bmp');

  bit2.SetSize(Trunc(bit1.Width * r), Trunc(bit1.Height * r));
  bit2.Canvas.StretchDraw(Rect(0,0,bit2.Width,bit2.Height), bit1);

  bit2.SaveToFile('c:\temp\test.bmp');

  bit1.Free;
  bit2.Free;
end;

end.

 
 
 
 
 

 

 

  

本文转载自:http://www.cnblogs.com/del/archive/2008/12/30/1365376.html

涂孟超
粉丝 12
博文 2011
码字总数 14107
作品 0
深圳
程序员
私信 提问
go-fastdfs v1.2.5 发布,支持图片缩放,高性能、高可靠分布式文件系统

go-fastdfs是一个基于http协议的分布式文件系统,它基于大道至简的设计理念,一切从简设计,使得它的运维及扩展变得更加简单,它具有高性能、高可靠、无中心、免维护等优点。 大家使用前一定...

s_jqzhang
03/29
1K
9
机器翻译工具包--Apertium

Apertium是一個機器翻譯平台,由西班牙政府和加泰羅尼亞自治政府撥款支持阿利坎特大學開發,為一個以GNU通用公共許可證條件發行的自由軟體。 Apertium原是OpenTrad計劃中其中一個機器翻譯引擎...

匿名
2009/07/30
783
0
关于龙芯的争吵我都无语了

和很多国人一样,龙芯一出世就让俺振奋并一直关注。不过出了汉芯那破事,很多人对国产CPU一直报怀疑态度。可是后来本本都出来了,并且基于龙芯的高性能计算机都出来了,事实明摆在那还有人总...

goofegg
2009/08/05
65
0
Android多国语言的value文件夹命名方式

在res目錄下建立不同名稱的values文件來調用不同的語言包 Values文件匯總如下: 中文(中國):values-zh-rCN中文(台灣):values-zh-rTW 中文(香港):values-zh-rHK 英語(美國):value...

carlos
2014/10/22
369
0
YCKIT V2012 SP2 发布了

YCKIT V2012 SP2 更新情况: [修正] 调用管理缺少字符报错 [新增] 栏目自定义字段 [修复] 生成管理在大量数据的时候内存不足问题 [修复] 默认主题中的单页内容图片没有按比例缩放 [优化] 清空...

野草
2012/11/13
751
2

没有更多内容

加载失败,请刷新页面

加载更多

MySQL左连接问题,右表做筛选,左表列依然在

两张表,一张user表,一张user_log表 CREATE TABLE `user` ( `id` int(11) NOT NULL AUTO_INCREMENT, `name` varchar(20) DEFAULT NULL, PRIMARY KEY (`id`)) ENGINE=InnoDB DEFA......

bengozhong
19分钟前
4
0
重新开始学Java——多线程基础

多线程 进程 主流计算机操作系统都支持同时运行多个任务 , 每个任务通常就是一个程序 , 每个运行中的程序就是一个进程或者多个进程 。 进程的特点 独立性 进程是系统中独立存在的实体 可以...

大家都是低调来的
20分钟前
3
0
注解在Java中是如何工作的?

> 来一点咖啡,准备好进入注解的世界。 注解一直是 Java 的一个非常重要的部分,它从 J2SE 5.0 开始就已经存在了。在我们的应用程序代码中,经常看到 @Override 和 @Deprecated 这样的注解。...

liululee
23分钟前
7
0
Docker 容器连接

Docker 容器连接 容器间的链接有两种方法,你选择其一即可 网络端口映射 docker run -d -P docker run -d -p-P :是容器内部端口随机映射到主机的高端口。-p : 是容器内部端口绑定到指定...

测者陈磊
26分钟前
5
0
车载导航应用中基于Sketch UI主题定制方案的实现

1.导读 关于应用的主题定制,相信大家或多或少都有接触,基本上,实现思路可以分为两类: 内置主题(应用内自定义style) 外部加载方式(资源apk形式、压缩资源、插件等) 其实,针对不同的主题...

阿里云官方博客
31分钟前
7
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部