高分求解,如何镜像输出打印,顶贴给分

m777 2012-07-13 11:40:06
由于打印需要镜像,我的思路是,先画文字和图形在new Bitmap()中,
然后将BITMAP,使用RotateFlip方法翻转,再用打印的Graphics 直接输出到打印机中打印。
但是,发现状态不太好,如果我直接输出BITMAP不翻转,然后打印出来效果很好,但是翻转之后,打印效果就差了,
或者直接输出到打印的Graphics中,效果也很好。但是只要翻转了,效果就差了,大家有什么好方法么?
...全文
149 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
qldsrx 2012-07-16
  • 打赏
  • 举报
回复
看看你的DrawImage方法是否就已经出现问题了,也就是将RotateFlip这步屏蔽,看前面一步产生的画质。
m777 2012-07-16
  • 打赏
  • 举报
回复
顶一下
c2606050113 2012-07-13
  • 打赏
  • 举报
回复
你说的应该是旋转吧 翻转是翻面的
不要使用RotateFlip
Graphics g = Graphics.FromImage(bt);
Matrix matrix = new Matrix();//旋转矩阵
matrix.RotateAt(angle, Point pt);//按pt旋转angle角度
g.Transform = matrix;
g.DrawImage(myImage, pt.X, pt.Y);
g.ResetTransform();
matrix.Dispose();
g.Dispose();
bt.save(....);
m777 2012-07-13
  • 打赏
  • 举报
回复
DPI也有关系呢?如何下手呢?
nonocast 2012-07-13
  • 打赏
  • 举报
回复
检查dpi是否正确
m777 2012-07-13
  • 打赏
  • 举报
回复
我是这样做的:
Graphics g = e.Graphics; //打印的Graphics
Graphics gImageTemp = Graphics.FromImage(bSaveImage);
DrawImage(gImageTemp);
bSaveImage.RotateFlip(RotateFlipType.Rotate180FlipY); //进行镜像翻转
g.DrawImage(bSaveImage, 0,0); //画到打印纸上
-----------------------------------
如果,不通过gImageTemp 这个直接画到打印纸上,画出来效果很好,但是画到gImageTemp 这个上面,再画打印纸上,就悲剧了。

110,533

社区成员

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

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

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