这里是发票管理及打印系统的部分代码,不才,献丑了,有需要的可以参考一下

代码

        PrinterSettings printerSets = new PrinterSettings();
        PageSettings pageSets = new PageSettings();

private void printdoc_PrintPage(object sender, PrintPageEventArgs e)
        {
            XmlDocument _xdoc = new XmlDocument();
            _xdoc.LoadXml(this.printFaPiaoXml);

PrintDrawString(e, 0, 65, _xdoc.SelectSingleNode("/row/开票日期").InnerText.Trim());
            PrintDrawString(e, 0, 275, fapiaoSets.行业);

PrintDrawString(e, 2, 0, "付款方:" + _xdoc.SelectSingleNode("/row/付款方").InnerText.Trim()); //河南新互联通信服务咨询有限公司
            PrintDrawString(e, 2, 370, "付款方纳税人识别号:" + _xdoc.SelectSingleNode("/row/付款方税号").InnerText.Trim());
            PrintDrawString(e, 3, 0, "收款方:" + fapiaoSets.收款方);
            PrintDrawString(e, 3, 370, "收款方纳税人识别号:" + fapiaoSets.收款方税号);

PrintDrawString(e, 4, 0, "项目明细");
            PrintDrawString(e, 5, 0, "项目");
            PrintDrawString(e, 5, 260, "金额");
            PrintDrawString(e, 5, 400, "备注");
            int i = 6;
            foreach (XmlNode node in _xdoc.SelectNodes("/row/项目明细/项目"))
            {
                PrintDrawString(e, i, 0, node.InnerText.Trim());
                PrintDrawString(e, i, 260, node.Attributes["金额"].Value.Trim());
                PrintDrawString(e, i, 400, node.Attributes["备注"].Value.Trim());
                i++;
            }

PrintDrawString(e, 13, 0, "合计人民币(大写):" + MoneyConvertChinese.MoneyToChinese(_xdoc.SelectSingleNode("/row/金额合计").InnerText.Trim()));
            PrintDrawString(e, 13, 380, "合计人民币(小写):CNY" + _xdoc.SelectSingleNode("/row/金额合计").InnerText.Trim());
            //PrintDrawString(e, 13, 600, "付款方式:" + "现金");

PrintDrawString(e, 15, 0, "开票人:" + fapiaoSets.开票人);
            PrintDrawString(e, 15, 150, "审核人:" + fapiaoSets.审核人);

PrintDrawString(e, 16, 0, "主管税务机关:" + fapiaoSets.主管税务机关);
        }
        /// <summary>
        /// 处理打印文字
        /// </summary>
        /// <param name="e">PrintPageEventArgs</param>
        /// <param name="lineIndex">行号</param>
        /// <param name="PointX">X轴偏移量</param>
        /// <param name="drawString">文字</param>
        private void PrintDrawString(PrintPageEventArgs e, int lineIndex, int PointX, string drawString)
        {
            //Y轴预设偏移量
            int defaultY = 110;
            //X轴预设偏移量
            int defaultX = 60;
            //行距
            int defaultLineHeight = 22;

e.Graphics.DrawString(drawString, new Font("KaiTi_GB2312", 10), Brushes.Black, new PointF(defaultX + PointX, defaultY + (lineIndex * defaultLineHeight)));
        }
 
       /// <summary>
        /// 打印前事件,设定打印参数
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void printdoc_BeginPrint(object sender, PrintEventArgs e)
        {
            this.pageSets.PrinterSettings.PrinterName = getPrinterName();
            this.pageSets.PaperSize = this.fapiaoSize;
            this.pageSets.Landscape = false;

this.printerSets.DefaultPageSettings.PaperSize = this.pageSets.PaperSize;
            this.printerSets.PrinterName = getPrinterName();

this.printdoc.DocumentName = "机打发票";
            this.printdoc.DefaultPageSettings = this.pageSets;
            this.printdoc.PrinterSettings = this.printerSets;
        }

转载于:https://www.cnblogs.com/hope250/archive/2011/02/16/1956457.html

发票管理及打印系统的部分代码相关推荐

  1. 低代码自定义条码标签打印系统

    低代码自定义条码标签打印系统可以打印当前所有形式的条码内容,1. 条码方面:可以自由配置配置打印模板.自定义填写打印内容.产品SN.箱号.栈板号条码规则自定义等:2. 绑定方面:可以根据产品SN绑定到 ...

  2. Java实例实验项目大全源码企业通讯打印系统计划酒店图书学生管理进销存商城门户网站五子棋

    wx供重浩:创享日记 对话框发送:java实例 获取完整源码源文件+视频讲解+文档资料等 文章目录 1.企业通讯 2.快递打印系统 3.开发计划管理系统 4.酒店管理系统 5.图书馆管理系统 6.学生 ...

  3. TMS、物流系统、司机运输商、承运商、结算流程、运输流程、运输调度、结构图、在途跟踪、提货单、签收单、回单交接、车辆管理、运力资源、报价管理、发票管理、询价单管理、审批报价、KPI数据、适度配载

    TMS.物流系统.司机运输商.承运商.结算流程.运输流程.运输调度.结构图.在途跟踪.提货单.签收单.回单交接.车辆管理.运力资源.报价管理.发票管理.询价单管理.审批报价.KPI数据.适度配载.订单 ...

  4. VBA随学随用系列:进口关税电子发票管理工具 - 总纲

    前言 VBA是微软office系列软件内置的,自带输入输出的界面(想像一下Excel表), 所以用于解决日常工作中的问题就非常顺手.而且VBA语法简单,容易上手.只要有一点点基本编程知识就够了,可以边 ...

  5. 计算机毕业设计django基于python学校在线打印系统

    随着计算机多媒体技术的发展和网络的普及.采用当前流行的B/S模式以及3层架构的设计思想通过Python技术来开发此系统的目的是建立一个配合网络环境的学校在线打印系统的平台,这样可以有效地解决打印混乱的 ...

  6. 基于微信小程序的校园自助打印系统小程序

    文末联系获取源码 开发语言:Java 框架:springboot JDK版本:JDK1.8 服务器:tomcat7 数据库:mysql 5.7/8.0 数据库工具:Navicat11 开发软件:ecl ...

  7. 零伽壹链改深度解析|区块链技术应用于电子发票管理

    本篇文章由零伽壹咨询管理对于区块链赋能电子发票的深度解析,接下来将与各位读者共同探讨当前电子发票所存在的痛点及解决方案. 2019年8月10日,在国家税务总局的指导下,深圳国贸旋转餐厅的员工开出了第一 ...

  8. Express Invoice Plus for Mac是什么软件?Mac发票管理软件推荐!

    Express Invoice Plus for Mac是一个最简单.最完整的发票系统.通过Express Invoice,您可以创建可以直接打印,发送电子邮件或传真给客户的发票,以便更快地付款.通过 ...

  9. 可视化开发非标系统,低代码平台零元就能实现

    编者按:本文对标准系统与非标系统做对比,深入探讨低代码平台如何低成本甚至零成本搭建非标系统,助力企业数字化转型. 标准系统vs非标系统? 在信息与科技的发展下,系统软件已经成为企业管理中的必需品.所谓 ...

最新文章

  1. 字符串-拆分和拼接字符串
  2. 推荐:Dapper扩展-Dapper.SimpleCRUD
  3. Spring Bean初始化过程
  4. lambda的java_一分钟搞明白java8中的lambda
  5. HTML基本功之文档结构
  6. 02-CSS基础与进阶-day4__2018-08-31-21-33-03
  7. 销售的基本功(倾听、提问、聊天)
  8. 三,linux系统的由来
  9. 趣味项目—MyQQ机器人(二)关于python的pandas根据索引读写指定数据的方法实现签到功能
  10. 嵌入式工程师待遇北京地区最高
  11. SecureCRT8.0破解版安装教程
  12. 那些年,我了解过的医疗器械(偏影像方向)公司 (2017.03.24 Updating...)
  13. Sue Shallow
  14. 阿里云被攻击封多久,又该怎么解决?
  15. 涪陵创新计算机学校2015元旦晚会,喜报:重庆市涪陵信息技术学校2019高考再续辉煌...
  16. 草根网站的不完全的建设规划
  17. php 实现群发表结构,利用php怎么实现一个微信公众号无限群发功能
  18. 【知识点总结】港口供电系统
  19. 图论算法与模型(训练指南题库)
  20. html中comment标签作用,comment标记是什么?

热门文章

  1. 瑞士科学家3D打印出5纳米厚的传感器
  2. Hibernate 一对一、一对多、多对多注解cascade属性的总结
  3. CodeForces 703C Chris and Road
  4. ubuntu上面安装nodejs,npm,bower,grunt,yeoman
  5. 内存管理 初始化(七)kmem_cache_init_late 初始化slab分配器(下)
  6. Android杂谈---获取手机屏幕大小
  7. haproxy对mysql集群进行负载均衡
  8. 复用的具体实现方式组合与继承的特点
  9. Promise详解(一) ----基础用法
  10. 自动化部署之gitlab备份和恢复