C# 实现简单打印的实例代码

C# 实现简单打印的实例代码

简介

在 C# 中,我们可以通过 System.Drawing.Printing 命名空间提供的 PrintDocument 类来实现简单的文本打印。

步骤

1. 引入命名空间

使用 PrintDocument 类需要引入 System.Drawing.Printing 命名空间。

using System.Drawing.Printing;

2. 定义 PrintDocument 变量

在代码中定义一个 PrintDocument 变量,并设置其 PrintPage 事件。该事件会在每一份打印内容被提交到打印机之前调用。

private PrintDocument printDocument1 = new PrintDocument();

public Form1()
{
    InitializeComponent();
    printDocument1.PrintPage += new PrintPageEventHandler(this.printDocument1_PrintPage);
}

3. 实现打印内容

在 PrintPage 事件中实现打印内容,打印内容可以是纯文本或是图像。

private void printDocument1_PrintPage(object sender, PrintPageEventArgs e)
{
    Font font = new Font("宋体", 14);
    Brush brush = Brushes.Black;
    string text = "Hello, World!";
    e.Graphics.DrawString(text, font, brush, 50, 50);
}

4. 启动打印

在程序中调用 Print 方法来启动打印。

private void button1_Click(object sender, EventArgs e)
{
    printDocument1.Print();
}

示例说明

示例一:打印一段简单的文本

private PrintDocument printDocument1 = new PrintDocument();

public Form1()
{
    InitializeComponent();
    printDocument1.PrintPage += new PrintPageEventHandler(this.printDocument1_PrintPage);
}

private void printDocument1_PrintPage(object sender, PrintPageEventArgs e)
{
    Font font = new Font("宋体", 14);
    Brush brush = Brushes.Black;
    string text = "Hello, World!";
    e.Graphics.DrawString(text, font, brush, 50, 50);
}

private void button1_Click(object sender, EventArgs e)
{
    printDocument1.Print();
}

运行程序,点击按钮后会弹出打印对话框,选中打印机并点击“打印”按钮,打印机会打印出一行文本”Hello, World!”。

示例二:打印图像

private PrintDocument printDocument1 = new PrintDocument();
private Image image = Image.FromFile("test.jpg");

public Form1()
{
    InitializeComponent();
    printDocument1.PrintPage += new PrintPageEventHandler(this.printDocument1_PrintPage);
}

private void printDocument1_PrintPage(object sender, PrintPageEventArgs e)
{
    e.Graphics.DrawImage(image, 50, 50, new RectangleF(0, 0, image.Width, image.Height), GraphicsUnit.Pixel);
}

private void button1_Click(object sender, EventArgs e)
{
    printDocument1.Print();
}

运行程序,点击按钮后会弹出打印对话框,选中打印机并点击“打印”按钮,打印机会打印出一张名为“test.jpg”的图片。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:C# 实现简单打印的实例代码 - Python技术站

(0)
上一篇 2023年5月31日
下一篇 2023年5月31日

相关文章

  • Windows系统自动连接网络共享打印机BAT脚本分享

    下面我将为你详细讲解“Windows系统自动连接网络共享打印机BAT脚本分享”的完整攻略。 背景 在Windows系统中,我们可以通过在本地网络中连接打印机,实现通过局域网打印文件的功能。然而,在每次使用时都需要手动连接,对日常使用造成了不必要的麻烦。为了解决这个问题,我们可以使用BAT脚本来实现网络共享打印机的自动连接。 实现步骤 1. 打开记事本 在Wi…

    C# 2023年6月7日
    00
  • C# Linq的Take()方法 – 从序列的开头返回指定数量的连续元素

    当使用C# Linq时,Take()方法用于从序列的开头获取指定数量的元素,可以传入一个整数表示获取的元素数量。下面为您提供Take()方法的完整攻略以及两个示例。 标题 语法 public static IEnumerable<TSource> Take<TSource>(this IEnumerable<TSource&gt…

    C# 2023年4月19日
    00
  • 深入了解c# 匿名类型

    深入了解 C# 匿名类型攻略 什么是匿名类型 C# 中的匿名类型是一种可以在运行时创建对象的特殊类型。与其他类不同,匿名类型没有名字,它的定义在编写代码时不需要指定名称。通常,匿名类型用于临时存储数据和查询结果等场景。 在 C# 中,创建匿名类型主要依靠对象初始化器和隐式类型表达式语法。以下是一个简单的示例: var person = new { Name …

    C# 2023年5月31日
    00
  • asp.net+ajax+sqlserver自动补全功能实现解析

    ASP.NET是一种用于创建Web应用程序的技术,它可以与AJAX和SQL Server等技术结合使用,实现各种功能。本文将介绍如何使用ASP.NET、AJAX和SQL Server实现自动补全功能。 步骤一:创建ASP.NET项目 首先,需要创建一个ASP.NET项目。可以使用Visual Studio创建一个新的ASP.NET项目。在创建项目时,可以选择…

    C# 2023年5月15日
    00
  • C# Path.GetFileNameWithoutExtension(string path):获取指定路径的文件名(不包括扩展名)

    知识点讲解 Path.GetFileNameWithoutExtension(string path) 方法是 C# 中 Path 类的静态方法之一,这个方法的作用是获取指定路径下文件的文件名,但不包括扩展名。该方法的返回值类型是 string。 方法参数 Path.GetFileNameWithoutExtension() 方法只接受一个 string 类…

    C# 2023年4月19日
    00
  • C#中DateTime的时间加减法操作小结

    C#中DateTime的时间加减法操作小结 在 C# 中,我们可以使用 DateTime 类来操作日期和时间。这个类提供了多种方式来进行时间的计算,包括时间的加、减、比较等操作。 时间加减法操作 在 DateTime 类中,我们可以使用 Add 方法和 Subtract 方法来进行时间的加减法操作。具体用法如下: DateTime date = DateTi…

    C# 2023年6月1日
    00
  • C#方法中参数ref和out详解

    C#方法中参数ref和out详解 什么是ref和out参数 在C#中,方法中的参数可以有多个,参数可以是值类型或引用类型,而在定义方法时可以用ref和out关键字修饰参数。它们的作用都是在方法内部改变参数的值,但是,它们的用途不同。 ref关键字表示传入的参数是地址引用,这意味着对参数的任何更改都将影响到原始变量。而out关键字的作用类似于ref关键字,但是…

    C# 2023年5月15日
    00
  • CAD2008+VS2008开发ObjectARX加载失败问题(推荐)

    下面是CAD2008+VS2008开发ObjectARX加载失败问题的完整攻略: 问题描述 在CAD2008+VS2008开发ObjectARX时,可能会遇到ObjectARX加载失败的问题。该问题通常是由于缺少或错误链接ObjectARX库文件导致的。 解决方案 要解决该问题,需要按照以下步骤进行操作: 1. 检查项目设置 在VS2008中打开解决方案,在…

    C# 2023年5月15日
    00
合作推广
合作推广
分享本页
返回顶部