积极答复者
WPF 打印 尺寸问题

问题
-
遇到一个问题.
我截取了屏幕使其变成了1920*1080的bitmapsource
然后使用DrawingVisual和DrawContext使其变成了可以被打印的Visual
然后设置PrintTicket横向打印
但是PrintDialog的 PrintableAreaWidth和PrintableAreaHeight并没有这么大,比如只有1122*795,然后我的图就被压缩了,甚至有的地方没有显示.我想要的效果就是和在桌面打开一张图,然后直接打印的效果一样.在纸张的中间,等比缩放,不知道这个如何解决,
求解,谢谢
我又试了一下,我将一张图片放在Image中,然后直接打印Image上下左右都有一块没显示出来.
- 已编辑 HeroHua0509 2012年9月5日 3:29
答案
-
你可以先获取打印的大小,然后重新Measure() Arrange()你的那个Image就可以了。
Sheldon _Xiao[MSFT]
MSDN Community Support | Feedback to us
Microsoft
Please remember to mark the replies as answers if they help and unmark them if they provide no help.
- 已标记为答案 Min ZhuModerator 2012年10月9日 9:28
-
你好,
我建议你可以先自定义一个继承自UIElement的类, 重载OnRender方法绘制这个DrawingVisual。
这样,你可以通过Measure/Arrange控制UIElement, 而UIElement可以控制bitmap的绘制。
暂时没有时间仔细研究有没有更好的方法,有问题的话可以告诉我。
Min Zhu [MSFT]
MSDN Community Support | Feedback to us
- 已标记为答案 Min ZhuModerator 2012年10月9日 9:28
全部回复
-
你可以先获取打印的大小,然后重新Measure() Arrange()你的那个Image就可以了。
Sheldon _Xiao[MSFT]
MSDN Community Support | Feedback to us
Microsoft
Please remember to mark the replies as answers if they help and unmark them if they provide no help.
- 已标记为答案 Min ZhuModerator 2012年10月9日 9:28
-
你好,
我建议你可以先自定义一个继承自UIElement的类, 重载OnRender方法绘制这个DrawingVisual。
这样,你可以通过Measure/Arrange控制UIElement, 而UIElement可以控制bitmap的绘制。
暂时没有时间仔细研究有没有更好的方法,有问题的话可以告诉我。
Min Zhu [MSFT]
MSDN Community Support | Feedback to us
- 已标记为答案 Min ZhuModerator 2012年10月9日 9:28