在 C# 中打印和打印预览位图

Posted

技术标签:

【中文标题】在 C# 中打印和打印预览位图【英文标题】:Print & Print Preview a Bitmap in c# 【发布时间】:2011-05-13 21:53:43 【问题描述】:

我制作了一个在图片框上绘制图像的程序,现在我想打印并打印预览,但不知道如何。请帮忙,

谢谢

编辑 我曾尝试使用打印和打印预览对话框,但不知道如何正确使用它们来打印和显示图片框及其图像的内容

【问题讨论】:

【参考方案1】:

在您的表单上放置一个 PrintDocument。您还需要一个 PrintPreviewDialog 和 PrintDialog。将对话框的 Document 属性设置为 PrintDocument。为其实现 PrintPage 事件处理程序,可以很简单:

    private void printDocument1_PrintPage(object sender, System.Drawing.Printing.PrintPageEventArgs e) 
        e.Graphics.DrawImage(pictureBox1.Image, 0, 0);
    

并添加按钮或菜单项以调用对话框的 ShowDialog() 方法。

【讨论】:

我已经这样做了,但由于某种原因它仍然没有在图片框中显示图像? 您没有在绘图代码中使用 CreateGraphics(),是吗?如果您使用 PB 的 Paint 事件,则将绘图代码移动到一个单独的方法中,该方法接受一个 Graphics 参数,并从您的 PrintPage 事件处理程序调用该代码。通过 e.Graphics

以上是关于在 C# 中打印和打印预览位图的主要内容,如果未能解决你的问题,请参考以下文章

打印 DataGridView 而不将其转换为位图

C# 位图到 PictureBox 不能正常工作

Gprinter光栅位图点阵数据解析工具

C# winform做打印预览和打印功能怎么做?

UG NX二次开发(C#)-获取模型文件的预览图片

UG NX二次开发(C#)-获取模型文件的预览图片