搜索
首页 电脑/网络 程序设计 C#/.NET

C# Windows中如何实现打印预览功能

我用C#编写的写字板如何实现打印预览功能C# Windows中如何实现打印预览功能

全部回答

2018-03-22

72 0
    加入两个控件PrintPreviewDiaog和PrintDocument给PrintDocument添加事件:private void printDocument1_PrintPage(object sender, PrintPageEventArgs e){ Graphics g = e。
    Graphics; using (Font font = new Font("Lucda Console", 36)) { g。DrawString(richTextBox1。
  Text, font, Brushes。Black, 0, 0);//或者是从文件中读取txt; page; e。  HasMorePages = (page } } 然后在打印预览按钮中添加:page = 1;maxPage = totalPage;//最大有多少页面就设置多少printDocument1。
  DocumentName = doc;printPreviewDialog1。  Document = printDocument1;printPreviewDialog1。
  ShowDialog(); //这是我编写的一个预览TXT文件的代码using System;using System。Collections。Generic;using System。  ComponentModel;using System。
  Data;using System。Drawing;using System。Text;using System。Windows。Forms;using System。IO;using System。
  Drawing。  Printing;namespace WindowsApplication14{ public partial class Form1 : Form { public Form1() { InitializeComponent(); this。
  printPreviewDialog1 = new PrintPreviewDialog(); } int page; int maxPage; String path; String[] Lines; private void printDocument1_PrintPage(object sender, PrintPageEventArgs e) { Graphics g = e。
    Graphics; using (Font font = new Font("Lucda Console", 12)) { int index = 0; while ((page * 20 index) { g。
  DrawString(Lines[page * 20 index], font, Brushes。  Black, 20, 20 30 * index); index ; } page; e。
  HasMorePages = (page } } public const int pageRows = 37; public const int rowNumber = 42; private void button1_Click(object sender, EventArgs e) { OpenFileDialog open = new OpenFileDialog(); open。
    Filter = "txt|*。txt"; if (open。ShowDialog() == DialogResult。OK) { page = 0; path = open。
  FileName; StringArray sa = new StringArray(0); try { Lines = File。  ReadAllLines(path, Encoding。
  GetEncoding(0, EncoderFallback。ExceptionFallback, DecoderFallback。ExceptionFallback)); } catch { Lines = File。
    ReadAllLines(path, Encoding。UTF8); } for (int i = 0; i { int length = Lines[i]。Length; for (int j = 0; j { sa。
  Add(Lines[i]。Substring(j * rowNumber, rowNumber)); } sa。  Add(Lines[i]。Substring((length / rowNumber) * rowNumber)); } Lines = sa。
  Lines; maxPage = Lines。Length / pageRows 1; printDocument1。  DocumentName = path; printPreviewDialog1。
  Document = printDocument1; printPreviewDialog1。ShowDialog(); } else { return; } } }}。

类似问题换一批

热点推荐

热度TOP

相关推荐
加载中...

热点搜索 换一换

电脑/网络
C#/.NET
硬件
电脑装机
程序设计
互联网
操作系统/系统故障
笔记本电脑
反病毒
百度
软件
程序设计
C#/.NET
VB
数据库
C/C++
汇编语言
JAVA相关
VC++
其他编程语言
C#/.NET
C#/.NET
举报
举报原因(必选):
取消确定举报