c#调用打印机(针式打印机),实现打印
方法1:【不推荐】
使用wps打印,c# 生成word,然后打印word(走弯路了)
只能通过空格实现文字的间距就很low
注意:这里使用此方法前提是电脑必须安装wps...
public string Print(string printName, string Zhmc, string Bxr, string Dyh, string Lxdh, string Yysj, string Jlr, string Gz, string Fwnr,string repair_id){try{string url = GetFilePath() + @"file\";var printList = GetLocalPrinters();bool isFind = false;foreach (var item in printList){if (item == printName){isFind = true;Externs.SetDefaultPrinter(printName);}}if (!isFind){throw new Exception("未查找到打印机【" + printName + "】!");}if (!System.IO.Directory.Exists(url)){System.IO.Directory.CreateDirectory(url);}XWPFDocument doc = new XWPFDocument();XWPFParagraph p1 = doc.CreateParagraph();XWPFParagraph p2 = doc.CreateParagraph();XWPFParagraph p3 = doc.CreateParagraph();XWPFParagraph p4 = doc.CreateParagraph();XWPFParagraph p5 = doc.CreateParagraph();XWPFParagraph p6 = doc.CreateParagraph();XWPFRun r1 = p1.CreateRun();XWPFRun r2 = p2.CreateRun();XWPFRun r3 = p3.CreateRun();XWPFRun r4 = p4.CreateRun();XWPFRun r5 = p5.CreateRun();XWPFRun r6 = p6.CreateRun();r1.SetText(" " + repair_id);r2.SetText(" " + Zhmc + " " + Bxr);r3.SetText(" " + Dyh + " " + Lxdh + " " + Yysj);r4.SetText(" ");r5.SetText(" " + Jlr + " " + Gz + "");r6.SetText(Fwnr + "");//FileStream sw = File.Create(url + "print.docx");FileStream sw = File.OpenWrite(url + "print.docx");doc.Write(sw);sw.Close();FileInfo file = new FileInfo(url + "print.docx");System.Diagnostics.Process process = new System.Diagnostics.Process();process.StartInfo.CreateNoWindow = false;process.StartInfo.WindowStyle = System.Diagnostics.ProcessWindowStyle.Hidden;process.StartInfo.UseShellExecute = true;process.StartInfo.FileName = file.FullName;process.StartInfo.Verb = "Print";process.Start();Thread.Sleep(2000);//File.Delete(url + "print.docx");return "success";}catch (Exception ex){return ex.Message;}}
方法2:
直接打印:使用PrintDocument
#region 测试打印//这里是模拟的参数,定义的全局public void emptydefult(){printName = "Jolimark 24-pin printer";Zhmc = "Zhmc";Bxr = "Bxr";Dyh = "Dyh";Lxdh = "Lxdh";Yysj = "Yysj";Jlr = "Jlr";Gz = "Gz";Fwnr = "Fwnr";repair_id = "repair_id";}private void Myprinter(){emptydefult();PrintDocument pd = new PrintDocument();pd.PrintPage += new PrintPageEventHandler(printDocument_PrintA4Page);pd.DefaultPageSettings.PaperSize=new PaperSize("Custom", 800, 550);pd.DefaultPageSettings.PrinterSettings.PrinterName = printName; //打印机名称//pd.DefaultPageSettings.Landscape = true; //设置横向打印,不设置默认是纵向的pd.PrintController = new System.Drawing.Printing.StandardPrintController();pd.Print();}private void printDocument_PrintA4Page(object sender, PrintPageEventArgs e){Font fntTxt1 = new Font("宋体", 12, System.Drawing.FontStyle.Bold);//正文文字 Font fntTxt = new Font("宋体", 10, System.Drawing.FontStyle.Regular);//正文文字 System.Drawing.Brush brush = new SolidBrush(System.Drawing.Color.Black);//画刷 System.Drawing.Pen pen = new System.Drawing.Pen(System.Drawing.Color.Black); //线条颜色 try{e.Graphics.DrawString(repair_id, fntTxt1, brush, new System.Drawing.Point(450, 30));e.Graphics.DrawString(Zhmc, fntTxt, brush, new System.Drawing.Point(120, 60));e.Graphics.DrawString(Bxr, fntTxt, brush, new System.Drawing.Point(400, 60));e.Graphics.DrawString(Dyh, fntTxt, brush, new System.Drawing.Point(120, 95));e.Graphics.DrawString(Lxdh, fntTxt, brush, new System.Drawing.Point(400, 95));e.Graphics.DrawString(Yysj, fntTxt, brush, new System.Drawing.Point(550, 95));e.Graphics.DrawString(Jlr, fntTxt, brush, new System.Drawing.Point(330, 130));e.Graphics.DrawString(Gz, fntTxt, brush, new System.Drawing.Point(450, 130));e.Graphics.DrawString(Fwnr, fntTxt, brush, new System.Drawing.Point(80, 160)); }catch (Exception ee){}}#endregion
c#调用打印机(针式打印机),实现打印相关推荐
- java 调用打印机 api_java 调用打印机API无法打印,但是直接打印可以,请问有人遇到过这样的问题吗?...
java调用打印机的代码如下:publicstaticvoidmain(String[]args){PrintRequestAttributeSetpras=newHashPrintRequestAt ...
- android插件实现打印机,Android USB调用打印机(针式打印机)
1.在AndroidManifest.xml中配置权限 复制代码 在调用的activity中加入 复制代码 如图在这里输入图片标题 2.在onCreate调用 PrinterUtil.init(Act ...
- java打印api_java 调用打印机API无法打印的问题,请问找到解决方案了吗?
展开全部 import java.awt.BasicStroke; import java.awt.Color; import java.awt.Component; import java.awt. ...
- QT调用打印机实现模板打印功能(手把手教学!!!)
文章目录 一.创建工程 二.UI设计及控件命名 三.代码演示 3.1 .pro文件 3.2 mainwindow.h文件 3.3 main.cpp文件 3.4 mainwindow.cpp文件 四.结 ...
- 浅谈Zebra斑马打印机三种打印方式的利弊
经过几个项目的洗礼,对Zebra打印机有了一个初步的了解,也用了好几种方式进行通讯打印,下面我们来谈谈这几种方式的优缺点吧. 主要有以下三种方法: 1.利用ZPLII指令集编写带有位置信息,字体大小, ...
- H5 mui通过蓝牙调用打印机printUtil.js
H5 mui通过蓝牙调用打印机,进行打印,此过程需要获取打印指令,也可以自己拼接打印指令. define(['mui', 'zepto', 'constants','util'], function( ...
- android 打印机打印html,Android下通过wifi调用打印机打印
Android下通过wifi调用打印机打印 // Code in Activity try { Socket sock = new Socket("192.168.199.245" ...
- 调用打印机_涨知识|你不知道的关于打印机的打印过程和打印机驱动的那些事...
以前一直以为打印很简单,不就是编辑好文件按个"打印"就行了?但其实打印过程可以复杂到你分分钟"怀疑人生".你以为的打印过程可能是这样的 ↓. 我们看到的打印过程 ...
- java打印word_Java jacob调用打印机打印word文档
前面说了Java如何生成复杂的Word文档,今年记录下Java如何调用打印机打印word文档. 起初用的是自带的PrintJob,但是系统提供的打印机制并不成熟完整.网上的代码也是千篇一律,在我的打印 ...
- java 绘图 打印_java调用本地打印机,绘制打印模板,小票模板
文章目录 jar资源 绘制打印模板 import java.awt.Color; import java.awt.Font; import java.awt.Graphics; import java ...
最新文章
- Redis设计与实现
- 热点面试题目—Java异常
- POJ2391(最大流Isap+Floyd+二分)
- 第一课-并行编程的几个概念
- 前端技术分享:Nginx负载均衡视频,基础的实战应用
- 5.编写程序,由键盘任意输入10个整数,分别统计其中的奇数和偶数的个数。
- CSS HACK 区别 IE6、IE7、IE8、Firefox兼容性
- Java微服务篇1——SpringBoot
- java 同域名下怎么访问同事的项目_喜大普奔,两个开源的前后端分离项目可以在线体验了...
- mysql数据库工程师考证题_100道MySQL常见面试题总结
- [bzoj3223]Tyvj 1729 文艺平衡树
- 最速下降法解析(理解笔记)
- Ubuntu安装mysql-8.0.20-linux-glibc2.12-i686.tar.xz 步骤
- matlab读取txt文件
- 芯原的神经网络处理器IP获百余款人工智能芯片采用
- SSR远程登陆服务器配置
- Hibernate必须掌握的知识
- opencv学习日记
- Solr实现全文检索
- linux 下进入root
热门文章
- Intel主板发展史
- 字体设计基础理论知识
- numpy_eye函数
- 如何使用JiaoZiVideoPlayer(饺子视频播放器)播放avi格式的视频
- VB程序逆向反汇编常见的函数
- 假装很努力,是年轻人的典型幼稚病。(我也有这种问题,改变就是好事。)...
- 遥感应用报告集---个人对地温反演单窗算法的理解
- 管家婆软件登录提示:用户‘sa‘登录失败,原因:未与信任的SQL server相关联。
- 计算机平板传输软件,“在iPad和计算机之间无线传输文件的方法”
- 如何在Red Hat Enterprise Linux上安装Python 3