社区
Delphi
帖子详情
copyrect处理BMP图象的效果能否不失真??
pandaxj
2000-08-07 01:03:00
我用copyrect将一幅图的一部分复制到另一幅图中,复制出的效果很差,象是16位的,有没有办法改进,或有没有与其功能相似但复制出的图片不失真的函数!还有,能不能复制jpg图象?
...全文
154
2
打赏
收藏
copyrect处理BMP图象的效果能否不失真??
我用copyrect将一幅图的一部分复制到另一幅图中,复制出的效果很差,象是16位的,有没有办法改进,或有没有与其功能相似但复制出的图片不失真的函数!还有,能不能复制jpg图象?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
2 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
skt642
2001-05-31
打赏
举报
回复
88329关注!
StarRainBow
2000-08-07
打赏
举报
回复
如果你使用的都是TBitmap,
是否目的图已加载了256色的图片。
虽然显示正常,但是TGraphic会把调色板保留,当新的图复制到此Canvas后,
就会被强制到此调色板。
解决办法很简单:目的图不要加载图片,或者干脆使用真彩图片。
Copyrect处理的是Canvas,所以不管你用那种图,只要有Canvas,都可以复制。
delphi7
copy
rect
图片切换
效果
最近看了一本书,讲delphi7中的图片的
处理
,这里上传几个常用的图片转换的
效果
,有雨滴,百叶窗等。
Delphi 垂直交错显示
效果
.rar
图片的垂直交错
效果
,Delphi 编写的图片垂直交错显示
效果
,之前就分享过这种
效果
,类似百叶窗的交替显示
效果
,可用于图片转场,不过本
效果
还有很多地方需要优化,当时是写给一本书,作为随书实例的,有兴趣的可参考,关于本功能的关键代码部分,请看以下代码: new
bmp
:= TBitmap.Create; new
bmp
.Width:=image1.Width; new
bmp
.Height:=image1.Height;
bmp
height:=image1.Height;
bmp
width:=image1.Width; i:=0; while i<=
bmp
height do begin j:=i; while j >0 do begin new
bmp
.Canvas.
Copy
Rect
(
Rect
(0,j-1,
bmp
width,j),image1.Canvas,
Rect
(0,
bmp
height-i j-1,
bmp
width,
bmp
height-i j)); new
bmp
.Canvas.
Copy
Rect
(
Rect
(0,
bmp
height-j-1,
bmp
width,
bmp
height-j),image1.Canvas,
Rect
(0,i-j,
bmp
width,i-j 1)); j:=j-2; Application.ProcessMessages; end; form1.Canvas.Draw(0,0,new
bmp
); i:=i 2; end; new
bmp
.free;
图片放大镜
效果
实现图片的放大镜
效果
的源码,欢迎下载! procedure TForm1.Image
Copy
(BoxCenterX,BoxCenterY, BoxSide: Integer); begin with Source
Rect
do begin Left:=BoxCenterX-BoxSide; Top:=BoxCenterY-BoxSide; Right:=BoxCenterX+BoxSide; Bottom:=BoxCenterY+BoxSide; end; with Dest
Rect
do begin Left:=BoxCenterX-dSide; Top:=BoxCenterY-dSide; Right:=BoxCenterX+dSide; Bottom:=BoxCenterY+dSide; end; ForeImage.Canvas.
Copy
Rect
(Dest
Rect
, BackImage.Canvas, Source
Rect
); end; procedure TForm1.ForeImageMouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer); begin DoubleBuffered :=True; NewX:=X; NewY:=Y; if msHide then begin OldX:=NewX; OldY:=NewY; msHide:=False; ShowCursor(False); end else begin Image
Copy
(OldX, OldY, dSide); end; Image
Copy
(NewX, NewY, sSide); OldX:=NewX; OldY:=NewY; end;
Tab加关闭按钮 自定义背景
本控件可以自由传播、复制。Varsion 1.0 2009_12_25. 本控件作用: 1、添加了关闭按钮,点击关闭按钮可以关闭当前tabsheet; 2、双击tabsheet,关闭当前tabsheet; 3、改变tabsheet的caption,活动时为蓝色,(Canvas.Font.Color := clBlue;当然你也可以随便改 :) ),不活动时为默认颜色; 4、改变了tabsheet的头部的颜色,活动时为: ImgTabyes.LoadFromResourceName(HInstance, 'TABYES1'); SrcR := ImgTabyes.Canvas.Clip
Rect
; DestR :=
Rect
; Canvas.
Copy
Rect
(DestR, ImgTabyes.Canvas, SrcR); 不活动时: ImgTabyes.LoadFromResourceName(HInstance, 'TABNO1'); SrcR := ImgTabyes.Canvas.Clip
Rect
; DestR :=
Rect
; Canvas.
Copy
Rect
(DestR, ImgTabyes.Canvas, SrcR); 当然这些你都可以随便改 :),(说明:都是画上去的,不要笑话:)),所有的图像文件存在于Pagecon.res 如果您有什么良好建议或有更好的方法,可以和我联系: //Email:exinju@163.com // //QQ:34117986 // //BLOG:exinju.blog.163.com //
HTML5VNC客户端noVNC.zip
noVNC 是一个 HTML5 VNC 客户端,采用 HTML 5 WebSockets, Canvas 和 JavaScript 实现,noVNC 被普遍用在各大云计算、虚拟机控制面板中,比如 OpenStack Dashboard 和 OpenNebula Sunstone 都用的是 noVNC. 前面说了 noVNC 采用 WebSockets 实现,但是目前大多数 VNC 服务器都不支持 WebSockets,所以 noVNC 是不能直接连接 VNC 服务器的,怎么办呢?需要一个代理来做 WebSockets 和 TCP sockets 之间的转换,理解这一点很重要。这个代理也已经有了,在 noVNC 的目录里,叫做 websockify. 特性: Supports all modern browsers including mobile (iOS, Android) Supported VNC encodings: raw,
copy
rect
, rre, hextile, tight, tightPNG WebSocket SSL/TLS encryption (i.e. "wss://") support 24-bit true color and 8 bit colour mapped Supports desktop resize notification/pseudo-encoding Local or remote cursor Clipboard
copy
/paste Clipping or scolling modes for large remote screens Easy site integration and theming (3 example themes included) 标签:noVNC
Delphi
5,388
社区成员
262,729
社区内容
发帖
与我相关
我的任务
Delphi
Delphi 开发及应用
复制链接
扫一扫
分享
社区描述
Delphi 开发及应用
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章