C#打印(PrintDocument、PrintDialog、PageSetupDialog、PrintPreviewDialog)
来源:互联网 发布:淘宝pc端首页大小 编辑:程序博客网 时间:2024/06/05 16:58
这几天一直在弄C#打印,下面整理过后的打印范例,主要介绍了PrintDocument的主要属性、方法的应用。及打印过程中可能用的到得PrintDialog、PageSetupDialog、PrintPreviewDialog对话框。
代码:
代码:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.Drawing.Printing;
namespace demo
{
publicpartialclass PrintOther : Form
{
public PrintOther()
{
InitializeComponent();
}
//PrintDocument类是实现打印功能的核心,它封装了打印有关的属性、事件、和方法
PrintDocument printDocument =new PrintDocument();
privatevoid btnPrint_Click(object sender, EventArgs e)
{
//printDocument.PrinterSettings可以获取或设置计算机默认打印相关属性或参数,如:printDocument.PrinterSettings.PrinterName获得默认打印机打印机名称
//printDocument.DefaultPageSettings//可以获取或设置打印页面参数信息、如是纸张大小,是否横向打印等
//设置文档名
printDocument.DocumentName ="处方笺";//设置完后可在打印对话框及队列中显示(默认显示document)
//设置纸张大小(可以不设置取,取默认设置)
PaperSize ps =new PaperSize("Your Paper Name",100, 70);
ps.RawKind =150;//如果是自定义纸张,就要大于118,(A4值为9,详细纸张类型与值的对照请看http://msdn.microsoft.com/zh-tw/library/system.drawing.printing.papersize.rawkind(v=vs.85).aspx)
printDocument.DefaultPageSettings.PaperSize = ps;
//打印开始前
printDocument.BeginPrint +=new PrintEventHandler(printDocument_BeginPrint);
//打印输出(过程)
printDocument.PrintPage +=new PrintPageEventHandler(printDocument_PrintPage);
//打印结束
printDocument.EndPrint +=new PrintEventHandler(printDocument_EndPrint);
//跳出打印对话框,提供打印参数可视化设置,如选择哪个打印机打印此文档等
PrintDialog pd =new PrintDialog();
pd.Document = printDocument;
if (DialogResult.OK== pd.ShowDialog())//如果确认,将会覆盖所有的打印参数设置
{
//页面设置对话框(可以不使用,其实PrintDialog对话框已提供页面设置)
PageSetupDialog psd =new PageSetupDialog();
psd.Document = printDocument;
if (DialogResult.OK== psd.ShowDialog())
{
//打印预览
PrintPreviewDialog ppd =new PrintPreviewDialog();
ppd.Document = printDocument;
if (DialogResult.OK== ppd.ShowDialog())
printDocument.Print(); //打印
}
}
}
void printDocument_BeginPrint(object sender, PrintEventArgs e)
{
//也可以把一些打印的参数放在此处设置
}
void printDocument_PrintPage(object sender, PrintPageEventArgs e)
{
//打印啥东东就在这写了
Graphics g = e.Graphics;
Brush b =new SolidBrush(Color.Black);
Font titleFont =new Font("宋体",16);
string title="社区卫生服务站 处方笺";
g.DrawString(title, titleFont, b, new PointF((e.PageBounds.Width- g.MeasureString(title, titleFont).Width)/2,20));
//e.Cancel//获取或设置是否取消打印
//e.HasMorePages//为true时,该函数执行完毕后还会重新执行一遍(可用于动态分页)
}
void printDocument_EndPrint(object sender, PrintEventArgs e)
{
//打印结束后相关操作
}
}
}
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.Drawing.Printing;
namespace demo
{
publicpartialclass PrintOther : Form
{
public PrintOther()
{
InitializeComponent();
}
//PrintDocument类是实现打印功能的核心,它封装了打印有关的属性、事件、和方法
PrintDocument printDocument =new PrintDocument();
privatevoid btnPrint_Click(object sender, EventArgs e)
{
//printDocument.PrinterSettings可以获取或设置计算机默认打印相关属性或参数,如:printDocument.PrinterSettings.PrinterName获得默认打印机打印机名称
//printDocument.DefaultPageSettings//可以获取或设置打印页面参数信息、如是纸张大小,是否横向打印等
//设置文档名
printDocument.DocumentName ="处方笺";//设置完后可在打印对话框及队列中显示(默认显示document)
//设置纸张大小(可以不设置取,取默认设置)
PaperSize ps =new PaperSize("Your Paper Name",100, 70);
ps.RawKind =150;//如果是自定义纸张,就要大于118,(A4值为9,详细纸张类型与值的对照请看http://msdn.microsoft.com/zh-tw/library/system.drawing.printing.papersize.rawkind(v=vs.85).aspx)
printDocument.DefaultPageSettings.PaperSize = ps;
//打印开始前
printDocument.BeginPrint +=new PrintEventHandler(printDocument_BeginPrint);
//打印输出(过程)
printDocument.PrintPage +=new PrintPageEventHandler(printDocument_PrintPage);
//打印结束
printDocument.EndPrint +=new PrintEventHandler(printDocument_EndPrint);
//跳出打印对话框,提供打印参数可视化设置,如选择哪个打印机打印此文档等
PrintDialog pd =new PrintDialog();
pd.Document = printDocument;
if (DialogResult.OK== pd.ShowDialog())//如果确认,将会覆盖所有的打印参数设置
{
//页面设置对话框(可以不使用,其实PrintDialog对话框已提供页面设置)
PageSetupDialog psd =new PageSetupDialog();
psd.Document = printDocument;
if (DialogResult.OK== psd.ShowDialog())
{
//打印预览
PrintPreviewDialog ppd =new PrintPreviewDialog();
ppd.Document = printDocument;
if (DialogResult.OK== ppd.ShowDialog())
printDocument.Print(); //打印
}
}
}
void printDocument_BeginPrint(object sender, PrintEventArgs e)
{
//也可以把一些打印的参数放在此处设置
}
void printDocument_PrintPage(object sender, PrintPageEventArgs e)
{
//打印啥东东就在这写了
Graphics g = e.Graphics;
Brush b =new SolidBrush(Color.Black);
Font titleFont =new Font("宋体",16);
string title="社区卫生服务站 处方笺";
g.DrawString(title, titleFont, b, new PointF((e.PageBounds.Width- g.MeasureString(title, titleFont).Width)/2,20));
//e.Cancel//获取或设置是否取消打印
//e.HasMorePages//为true时,该函数执行完毕后还会重新执行一遍(可用于动态分页)
}
void printDocument_EndPrint(object sender, PrintEventArgs e)
{
//打印结束后相关操作
}
}
}
- C#打印(PrintDocument、PrintDialog、PageSetupDialog、PrintPreviewDialog)
- C#打印(PrintDocument、PrintDialog、PageSetupDialog、PrintPreviewDialog)
- C#打印(PrintDocument、PrintDialog、PageSetupDialog、PrintPreviewDialog)
- 【C#】打印机 printDocument、printDialog、PageSetupDialog、printPreviewDialog
- PrintDocument,PrintDialog与PrintPreviewDialog
- 在C#中实现打印功能(C#中PrintDialog,PrintDocument的使用)
- 在C#中实现打印功能(C#中PrintDialog,PrintDocument的使用)
- 在C#中实现打印功能(C#中PrintDialog,PrintDocument的使用)
- 在C#中实现打印功能(C#中PrintDialog,PrintDocument的使用)
- 在C#中实现打印功能(C#中PrintDialog,PrintDocument的使用)
- 在C#中实现打印功能(C#中PrintDialog,PrintDocument的使用)
- 在 C# 中实现打印功能(C# 中 PrintDialog,PrintDocument 的使用)
- 在C#中实现打印功能(C#中PrintDialog,PrintDocument的使用)
- 在C#中实现打印功能(C#中PrintDialog,PrintDocument的使用)
- 在C#中实现打印功能(C#中PrintDialog,PrintDocument的使用)
- 在C#中实现打印功能(C#中PrintDialog,PrintDocument的使用)实用的类
- 在C#中实现打印功能(C#中PrintDialog,PrintDocument的使用
- C# PrintDocument打印
- usaco training-A Game
- bash与source
- oracle中字符转换
- Linux下,添加了#include 的文件编译时为什么要加 -ml ,gcc 加参数 -ml 是起什么作用呢
- 视觉的满足 三款来自美国的逼真视觉屏保
- C#打印(PrintDocument、PrintDialog、PageSetupDialog、PrintPreviewDialog)
- Maven3 安装使用(一)
- poj 2983Is the Information Reliable?
- linux那些事之二
- 正确重置msyql密码
- SQlite数据库的C编程接口(七) 数据库锁定(Database Locking) ——《Using SQlite》读书笔记
- c++获得本机ip地址
- 关于通达信数据格式的发布
- 1319 单词统计