C# 打印机信息获取与默认设置

本代码示例演示如何使用 C# 获取本地打印机信息,包括打印机名称和类型,并设置默认打印机。

using System.Drawing.Printing;

public class PrinterHelper
{
    /// 
    /// 获取所有打印机信息。
    /// 
    /// 打印机信息列表。
    public static List GetPrinters()
    {
        List printers = new List();
        foreach (string printerName in PrinterSettings.InstalledPrinters)
        {
            PrinterSettings ps = new PrinterSettings();
            ps.PrinterName = printerName;
            printers.Add(new PrinterInfo(ps.PrinterName, ps.PrinterTypeName));
        }
        return printers;
    }

    /// 
    /// 设置默认打印机。
    /// 
    /// 要设置为默认的打印机名称。
    public static void SetDefaultPrinter(string printerName)
    {
        PrinterSettings ps = new PrinterSettings();
        ps.PrinterName = printerName;
        ps.DefaultPageSettings.PrinterSettings.PrinterName = printerName;
    }
}

public class PrinterInfo
{
    public string Name { get; set; }
    public string Type { get; set; }

    public PrinterInfo(string name, string type)
    {
        Name = name;
        Type = type;
    }
}

使用方法:

  • 使用 GetPrinters() 方法获取所有可用打印机的列表。
  • 使用 SetDefaultPrinter() 方法设置默认打印机。

示例:

// 获取所有打印机信息
List printers = PrinterHelper.GetPrinters();

// 打印每个打印机的名称和类型
foreach (PrinterInfo printer in printers)
{
    Console.WriteLine($"Name: {printer.Name}, Type: {printer.Type}");
}

// 设置默认打印机
PrinterHelper.SetDefaultPrinter("Microsoft Print to PDF");
cs 文件大小:5.45KB