WPF 打印图片

本文介绍了如何在WPF中实现打印图片和表单的功能。通过示例代码展示将控件画面保存为图片进行打印,以及利用XAML模板和数据创建打印表单的方法。提供了一个名为PrintImage的打印图片示例和一个PrintTable的打印表单示例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

效果如图
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Tsk3rM9u-1607060571671)(https://img2020.cnblogs.com/blog/942899/202004/942899-20200421103915551-1032455812.gif)]
打印结果

private string outputDic { get { return $"{AppDomain.CurrentDomain.BaseDirectory}\\Temp\\"; } }

private void PrintImage(object sender, RoutedEventArgs e)
{
	//将控件imageBorder的画面输出图片
	var outputPath = GetPicFromControl(imageBorder as FrameworkElement);
	//打印
	Print(outputPath);
	//删除图片
	File.Delete(outputPath);
}

private string GetPicFromControl(FrameworkElement element)
{
	//96为显示器DPI
	double dpiX = 96;
	double dpiY = 96;

	var bitmapRender = new RenderTargetBitmap((int)element.ActualWidth, (int)element.ActualHeight, dpiX, dpiY, PixelFormats.Pbgra32);//位图 宽度  高度   水平DPI  垂直DPI  位图的格式    高度+100保证整个图都能截取
	//控件内容渲染RenderTargetBitmap
	bitmapRend
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值