c# 图像保存求助,图像很大主要这个导致保存困难,求大侠们思路,谢谢

亚特兰蒂斯DE 2014-06-01 04:46:35
c# 图像保存求助,图像很大主要这个导致保存困难,求大侠们思路,谢谢
=============================================================
问题背景:

我自己开发了一个图片编辑处理的软件,然后我现在遇到一个很大的难题,
我如何把一张 比如:22677px*11339px 的图像保存为一张大图!
我试过很多办法都失败!程序从X86位 弄成64位,问题依然没有解决.
我想知道写思路和方向来解决我这个大问题.

截图背景资料:

我是这样设计我的画布是有一个Panle 名称: A 来作为容器.
等会我上图,大家能看到,我的A容器里 ,是由很多个 Pictrue 组件,叠放起来的,看着就像一张图.

其实就是说 A容器里装了 很多 个 Pictrue 组件,里面每个组件显示了不同图片.
我现在如何 把这个效果图保存下来.
求思路.

有点类似 PS软件里 多层图 合成 然后就导出一张图,,这样.


大家看下我解决的失败方案:


try
{

Panel P = this.panel_画布区_B;
Rectangle rect = new Rectangle(0, 0, P.Width, P.Height);
Bitmap bmp = new Bitmap(rect.Width, rect.Height);
this.panel_画布区_B.DrawToBitmap(bmp, rect);

bmp.Save(saveFileDialog.FileName);
CntuImageSave(bmp, saveFileDialog.FileName, "image/jpeg");

bmp.Dispose();
}
catch (Exception)
{

//throw;
}



其实我试过很多 种代码去解决图像保存,但是总会遇到很多问题.

因为我容器 A 里面很多 图片 叠加的,如果我想实现 比如类似图层相互叠加情况,只显示某块图像保存大图
就看不到被遮住部分 直接会给我截出来一张最顶层那个 picture 图像部分的图,当然其它边上没盖住的 截图还是可以有
这种效果大家看看.



保存效果图前



这张就是保存后效果 很多图因该是显示出来的结果却没有...晕啊

下面这两张是我软件界面图 大家看看 也许能快速明白我要干嘛.

界面1


界面2

求大家出思路 实在不明白 PS那种是怎么个把很多大图导出来的....
...全文
402 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
你把bmp画在别的地方,然后仅保存bmp,这个bmp就能自动合并别的图?
亚特兰蒂斯DE 2014-06-01
  • 打赏
  • 举报
回复
不知道怎么弄..求大侠帮忙.
zgke 2014-06-01
  • 打赏
  • 举报
回复
保存成 22677 *11339 *3 (24位图) 这么大的图能接受的了 就可以创建个PNG 或BMP的文件头.然后用BitmapData 把数据Copy出来 保存到对应的位置就好了. 你先确定好切割好的小图片对应的位置。

110,536

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧