社区
GAME,图形处理/多媒体
帖子详情
关于图形裁切并且保存为文件的问题
雄蜂
2005-07-20 09:55:23
我想将一个图形的选中部分保存为另外的文件,处理的文件格式为bmp或jpeg。请问如何实现这样的效果:
1、有一个由鼠标拖放控制的矩形选择框在图形上选定,选定部分之外的部分显示为阴影;
2、选定部分用另存为其他图形文件。
...全文
168
13
打赏
收藏
关于图形裁切并且保存为文件的问题
我想将一个图形的选中部分保存为另外的文件,处理的文件格式为bmp或jpeg。请问如何实现这样的效果: 1、有一个由鼠标拖放控制的矩形选择框在图形上选定,选定部分之外的部分显示为阴影; 2、选定部分用另存为其他图形文件。
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
13 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
aloking
2005-08-01
打赏
举报
回复
procedure TForm_DealPic.PaintBox1MouseUp(Sender: TObject;
Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
var
rgn :HRgn;
bmp,bmp0 :TBitmap;
begin
x2:=X;
y2:=Y;
bmp :=TBitmap.Create;
bmp.Assign(Image1.Picture.Bitmap);
if (x2>bmp.Width) or (y2>bmp.Height) then
begin
//showmessage('区域出界');
bmp.free;
exit;
end;
//PaintBox1.Canvas.
PaintBox1.Canvas.Pen.Color:=clred;
PaintBox1.Canvas.MoveTo(x1,y1);
PaintBox1.Canvas.LineTo(x1,y2);
PaintBox1.Canvas.LineTo(x2,y2);
PaintBox1.Canvas.LineTo(x2,y1);
PaintBox1.Canvas.LineTo(x1,y1);
////////
////////
//Image1.Picture.Assign(nil);
rgn :=CreateRectRgn(x1,y1,x2,y2);
SelectClipRgn(bmp.Canvas.Handle,rgn);
bmp0 :=TBitmap.Create;
bmp0.Width :=abs(x2-x1);
bmp0.Height :=abs(y2-y1);
BitBlt(bmp0.Canvas.Handle,0,0,abs(x2-x1),abs(y2-y1),bmp.Canvas.Handle,x1,y1,SRCCOPY);
Image2.Picture.Bitmap.Assign(bmp0);
bmp.Free;
bmp0.Free;
////////
end;
以前写的,顺手贴给你
aimeoo
2005-07-29
打赏
举报
回复
刚完成你要的效果!
绝缘
2005-07-29
打赏
举报
回复
哎...网上去找找吧..Delphi是最好实现的了.!可惜我现在遇到的问题更是郁闷!远程桌面,接收到JPG图像数据(内存中)后,没办法让它直接显示在控件中...
雄蜂
2005-07-26
打赏
举报
回复
唉,有大虾来说说么?
jemyzhang
2005-07-26
打赏
举报
回复
兄弟,不要等别人的现成代码了,大家给了你思路,你可以自己动动手啊。这样你可以学到很多的东西。
雄蜂
2005-07-21
打赏
举报
回复
请问哪里有现成的源代码。
雄蜂
2005-07-21
打赏
举报
回复
哪位好心人帮帮忙呀。
zzlingaaa
2005-07-21
打赏
举报
回复
不熟悉delphi就直接去找现成的源代码吧,在这里问,问不出很完美的结果的
mxd6819318
2005-07-21
打赏
举报
回复
用一个按钮控件实现原图片的复制,如果区域不合适,点击这个按钮就把不合适的区域擦除了(恢复为原图)。
复制位图函数为copyme():
procedure CopyMe(tobmp: TBitmap; frbmp : TGraphic);
begin
tobmp.Width := frbmp.Width;
tobmp.Height := frbmp.Height;
tobmp.PixelFormat := pf24bit;
tobmp.Canvas.Draw(0,0,frbmp);
end;
雄蜂
2005-07-20
打赏
举报
回复
还有我希望得到的效果是画矩形时得到矩形的绘制过程,即鼠标拖动的矩形,还有一种是矩形已经存在进行位置改变拖动,还有就是当发现矩形区域不合适需要进行擦除。
雄蜂
2005-07-20
打赏
举报
回复
请给出具体代码好么?delphi我还不是太熟悉代码编写。
jemyzhang
2005-07-20
打赏
举报
回复
1.mousedown时记下位置,拖动鼠标,mouseup时记录第二个位置。这时你得到一个矩形区域,将外面的部分画为阴影就可以了。
2.create一个BITMAP,调用bitmap.canvas.copyrect(bitmap的rect,显示刚才图片的canvas,你选取范围的rect);
最后bitmap.savetofile();就可以了
图形
图像处理实用教程
中文名:
图形
图像处理实用教程 作者: 柳青图书分类: 软件 资源格式: PDF 版本: 文字版 出版社: 高等教育出版社书号: 978-7-04-012336-4发行时间: 2003年06月 地区: 大陆 语言: 简体中文 简介: 内容简介:
图形
...
label matrix V8.6中文特别版
支持打印边框、内
裁切
线、外
裁切
线、
裁切
点等一系列功能来辅助标签成品的
裁切
; 您可以设置自己喜欢的软件环境与标尺颜色; 支持标签
保存
文件
里添加标签信息及设置打开标签密码; 可以设置条码标签只能打印不能修改...
visio教程PDF
第12章
保存
文件
12.1
保存
选项 12.1.1 File下拉菜单相Save As窗口 12.1.2 Properties对话框 12.1.3 后继
保存
12.1.4 打印到
文件
12.2 小结 第13章 打开绘图
文件
13.1 打开已存在的Visio绘图...
Visio 2000 技术大全
第12章
保存
文件
12.1
保存
选项 12.1.1 File下拉菜单相Save As窗口 12.1.2 Properties对话框 12.1.3 后继
保存
12.1.4 打印到
文件
12.2 小结 第13章 打开绘图
文件
13.1 打开已存在的...
iRoundPic v5.3.4442
适合独立制作个性图片,也可用做为 PS 等
图形
功能制作素材 支持输出格式 创建或
保存
JPG / PNG / BMP / TGA / GIF / TIFF / ICON 等格式,并支持透明 PNG / GIF / ICON 格式 更新日志 * b04405 升级: 改进
图形
...
GAME,图形处理/多媒体
1,183
社区成员
14,336
社区内容
发帖
与我相关
我的任务
GAME,图形处理/多媒体
Delphi GAME,图形处理/多媒体
复制链接
扫一扫
分享
社区描述
Delphi GAME,图形处理/多媒体
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章