iis服务器助手广告广告
返回顶部
首页 > 资讯 > 精选 >C#怎么调用打印机实现打印
  • 330
分享到

C#怎么调用打印机实现打印

2023-06-30 11:06:40 330人浏览 独家记忆
摘要

本篇内容主要讲解“C#怎么调用打印机实现打印”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“C#怎么调用打印机实现打印”吧!一、引用BarcodeStandard.dll  &

本篇内容主要讲解“C#怎么调用打印机实现打印”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“C#怎么调用打印机实现打印”吧!

一、引用BarcodeStandard.dll

        #region BarcodeStandard.dll                string inputString;        /// <summary>        /// 获取所以打印机驱动名称        /// </summary>        private void getPrintDocumentlist()        {            PrintDocument print = new PrintDocument();            string sDefault = print.PrinterSettings.PrinterName;//默认打印机名            comboBox_drive.Items.Add(sDefault);            comboBox_drive.Text = sDefault;//显示默认驱动名称            foreach (string sPrint in PrinterSettings.InstalledPrinters)//获取所有打印机名称            {                if (sPrint != sDefault)                {                    comboBox_drive.Items.Add(sPrint);                }            }        }        /// <summary>        /// 打印绘制        /// </summary>        /// <param name="sender"></param>        /// <param name="e"></param>        private void printDocument1_PrintPage(object sender, PrintPageEventArgs e)        {            Font titleFont = new Font("宋体", 9, FontStyle.Bold);//标题字体                       Font fntTxt = new Font("宋体", 9, FontStyle.Regular);//正文文字                       Brush brush = new SolidBrush(Color.Black);//画刷                       Pen pen = new Pen(Color.Black); //线条颜色                       Point po = new Point(10, 10);            try            {                //画String                e.Graphics.DrawString(GetPrintSW().ToString(), titleFont, brush, po);//打印内容                                             //画横线                //Point[] point = { new Point(20, 50), new Point(200, 50) };//纵坐标不变                //e.Graphics.DrawLines(pen, point);                //画竖线                //Point[] points1 = { new Point(60, 70), new Point(60, 70 + 40) };//横坐标不变                //e.Graphics.DrawLines(pen, points1);                //画矩形                //e.Graphics.DrawRectangle(pen, 20, 70, 90, 90);            }            catch (Exception ex)            {                MessageBox.Show(this, "打印出错!", "提示", MessageBoxButtons.OK, MessageBoxIcon.InfORMation);            }        }       /// <summary>       /// 获取打印内容       /// </summary>       /// <returns></returns>        public StringBuilder GetPrintSW()        {            StringBuilder sb = new StringBuilder();            string tou = "XXXXXX科技有限公司";            string address = "安徽省合肥市瑶海区";            string saleID = "100010000001";    //单号                   string item = "项目";            decimal price = 25.00M;            int count = 5;            decimal total = 0.00M;            decimal fukuan = 500.00M;            sb.AppendLine(" " + tou + " \n");            sb.AppendLine("-----------------------------------------");            sb.AppendLine("日期:" + DateTime.Now.ToShortDateString() + " " + "单号:" + saleID);            sb.AppendLine("-----------------------------------------");            sb.AppendLine("项目" + "    " + "数量" + "  " + "单价" + "    " + "小计");            for (int i = 0; i < count; i++)            {                decimal xiaoji = (i + 1) * price;                sb.AppendLine(item + (i + 1) + "    " + (i + 1) + "   " + price + "    " + xiaoji);                total += xiaoji;            }            sb.AppendLine("-----------------------------------------");            sb.AppendLine("数量:" + count + "  合计: " + total);            sb.AppendLine("付款:" + fukuan);            sb.AppendLine("现金找零:" + (fukuan - total));            sb.AppendLine("-----------------------------------------");            sb.AppendLine("地址:" + address + "");            sb.AppendLine("电话:130000000000");            sb.AppendLine("谢谢惠顾欢迎下次光临!");            sb.AppendLine("-----------------------------------------");            return sb;        }        /// <summary>        /// 生成条形码        /// </summary>        /// <param name="content">内容</param>        /// <returns></returns>        public static Image GenerateBarCodeBitmap(string content)        {            using (var barcode = new Barcode()            {                IncludeLabel = true,                Alignment = AlignmentPositions.CENTER,                Width = 250,                Height = 100,                RotateFlipType = RotateFlipType.RotateNoneFlipNone,                BackColor = Color.White,                ForeColor = Color.Black,            })            {                return barcode.Encode(TYPE.CODE128B, content);            }        }        #endregion

二、引用Seagull.BarTender.Print.dll

        #region   Seagull.BarTender.Print.dll        /// <summary>        /// 打印测试        /// </summary>        /// <param name="sender"></param>        /// <param name="e"></param>        private void printbt_Click(object sender, EventArgs e)        {            string qd = comboBox_drive.Text;//下拉列表选择的驱动名称            var printDocument = new PrintDocument();            //指定打印机            printDocument.PrinterSettings.PrinterName = qd;//驱动名称                         printDocument.PrintPage += new PrintPageEventHandler(printDocument1_PrintPage);            try            {                               //打印预览                //PrintPreviewDialog ppd = new PrintPreviewDialog();                //ppd.Document = printDocument;                //ppd.ShowDialog();                //打印                printDocument.Print();            }            catch (InvalidPrinterException)            {            }            finally            {                printDocument.Dispose();            }        }        /// <summary>        /// BarTender打印        /// </summary>        /// <param name="sender"></param>        /// <param name="e"></param>        private void BarTender_Click(object sender, EventArgs e)        {            try            {                //程序中写入引用 using Seagull.BarTender.Print.dll,必不可少;                //安装Bartender后,在安装的根目录或者system32下课可找到对应的dll                #region                 Engine btEngine = new Engine();                btEngine.Start();                string lj = AppDomain.CurrentDomain.BaseDirectory + "test.btw";  //test.btw是BT的模板                LabelFormatDocument btFormat = btEngine.Documents.Open(lj);                //对BTW模版相应字段进行赋值                 btFormat.SubStrings["name"].Value ="Liming";                btFormat.SubStrings["code"].Value = "1234567890";                //指定打印机名                 btFormat.PrintSetup.PrinterName = "WPS 虚拟打印机";                //改变标签打印数份连载                 btFormat.PrintSetup.NumberOfSerializedLabels = 1;                //打印份数                                   btFormat.PrintSetup.IdenticalCopiesOfLabel = 1;                Messages messages;                int waitout = 10000; // 10秒 超时                 Result nResult1 = btFormat.Print("标签打印软件", waitout, out messages);                btFormat.PrintSetup.Cache.FlushInterval = CacheFlushInterval.PerSession;                //不保存对打开模板的修改                 btFormat.Close(Seagull.BarTender.Print.SaveOptions.DoNotSaveChanges);                //结束打印引擎                                  btEngine.Stop();                #endregion            }            catch (Exception ex)            {                MessageBox.Show("错误信息: " + ex.Message);                return;            }        }        #endregion

三、引用 Interop.LabelManager2.dll

        #region  Interop.LabelManager2.dll        /// <summary>        /// 打印功能 CodeSoft        /// </summary>        /// <param name="PrintParam1">打印模板参数值1</param>        /// <param name="PrintParam2">打印模板参数值2</param>        /// <param name="PrintParam3">打印模板参数值3</param>        /// <param name="PrintParam4">打印模板参数值4</param>        /// <returns></returns>        public bool SoftCodePrint(string PrintParam1 = "", string PrintParam2 = "", string PrintParam3 = "", string PrintParam4 = "")        {            bool result = false;            int printNum = 2;//打印份数            try            {                string text = string.Empty;                ApplicationClass labApp = null;                Document doc = null;                string labFileName = AppDomain.CurrentDomain.BaseDirectory + "Template\\" + "Test.Lab";//模板地址                if (!File.Exists(labFileName))                {                    throw new Exception("沒有找到标签模版");                }                for (int i = 0; i < printNum; i++)                {                    labApp = new ApplicationClass();                    labApp.Documents.Open(labFileName, false);// 调用设计好的label文件                    doc = labApp.ActiveDocument;                    //可通过配置档进行配置打印信息                    doc.Variables.FreeVariables.Item("模板变量名称1").Value = PrintParam1;                    doc.Variables.FreeVariables.Item("模板变量名称2").Value = PrintParam2;                    doc.Variables.FreeVariables.Item("模板变量名称3").Value = PrintParam3;                    doc.Variables.FreeVariables.Item("模板变量名称4").Value = PrintParam4;                    doc.PrintDocument(1);                }                labApp.Quit();                result = true;            }            catch (Exception ex)            {            }            return result;        }        #endregion

到此,相信大家对“C#怎么调用打印机实现打印”有了更深的了解,不妨来实际操作一番吧!这里是编程网网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

--结束END--

本文标题: C#怎么调用打印机实现打印

本文链接: https://www.lsjlt.com/news/328460.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • C#怎么调用打印机实现打印
    本篇内容主要讲解“C#怎么调用打印机实现打印”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“C#怎么调用打印机实现打印”吧!一、引用BarcodeStandard.dll  &...
    99+
    2023-06-30
  • C#调用打印机实现打印
    一、引用BarcodeStandard.dll #region BarcodeStandard.dll string inputS...
    99+
    2024-04-02
  • 三、python调用打印机,打印文字
    代码: import win32print import win32ui import win32con def print2Printer(self): INCH = 1440 hDC = w...
    99+
    2023-01-31
    打印机 文字 python
  • c# 实现打印机状态查询与阻塞打印
    目录打印机状态获取打印机脱机检查打印机阻塞队列实现 在使用winform编写自动打印服务的过程中,发现只要进行了打印命令的调用,文档就会进入到打印等待队列,如果打印机无法正常工作,则...
    99+
    2024-04-02
  • 云服务器调用本地打印机怎么调出来打印
    如果您的云服务器上安装了Windows Azure或者Microsoft Azure Cloud,您可以通过控制面板中的“文件”→“打印机”或“添加打印机”来添加网络或本地打印机。具体步骤如下: 在打开的“文件”菜单中,选择“打印机和传...
    99+
    2023-10-26
    打印机 服务器
  • 云服务器调用本地打印机怎么调出来打印的
    如果您的云服务器上安装了 Python 库,可以通过以下步骤调用本地打印机来打印文本: 打开云服务器上的控制台程序并在“打印和输出”下找到“本地打印机(C:)”。 打开“打印机列表”窗口,找到您要打印的打印机并点击“打印”。 点击“添加...
    99+
    2023-10-27
    打印机 服务器
  • 云服务器调用本地打印机怎么调整打印位置
    如果您的云服务器上的打印机安装在您自己的本地计算机上,您可以在云服务器上使用API或脚本来调整打印机的位置。以下是几个例子: 通过API调整打印位置 如果您要在云服务器上使用API,您可以编写一个简单的API请求来获取云服务器上的打印...
    99+
    2023-10-26
    打印机 位置 服务器
  • 云服务器调用本地打印机怎么调出来打印文件
    如果您的云服务器上的本地打印机与您在其他计算机上使用的打印机不兼容,以下是调出打印文件的方法: 检查本地打印机是否可用。您可以尝试在您的本地打印机上添加打印机驱动程序,以解决兼容性问题。 检查本地打印机是否可用。您可以从云服务器上远程添...
    99+
    2023-10-27
    打印机 服务器 文件
  • C#实现EPL II格式打印与打印测试
    一、EPL II 格式及打印测试 注意N命令前的换行和最后P1后的换行。将此段代码复制到windows记事本里另存为Print.ext,文件名随便,后缀为ext。然后通过cmd控制命...
    99+
    2024-04-02
  • java如何实现打印机的打印功能
    要实现打印机的打印功能,可以使用Java中的打印机相关的API。以下是一个简单的示例代码:```javaimport javax.p...
    99+
    2023-09-01
    java
  • 云服务器调用本地打印机怎么调出来打印文件呢
    首先,您需要连接到本地打印机。有很多不同类型的打印机可以供您选择,例如HP LaserJet Professional 4550系列打印机、Dell XPS1320 Printers或Canon PowerShot 840等。连接这些打印机...
    99+
    2023-10-28
    打印机 服务器 文件
  • win7打印机怎么取消打印任务
    本篇内容介绍了“win7打印机怎么取消打印任务”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!win7打印机取消打印任务的方法在电脑桌面左下角...
    99+
    2023-07-01
  • windows打印机怎么取消打印任务
    这篇“windows打印机怎么取消打印任务”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“windows打印机怎么取消打印任务...
    99+
    2023-07-01
  • 打印机取消打印却还在打印 win7系统怎么清除打印缓存?
      在win7系统中有一个打印缓存服务,在打印的时候系统会自动将打印的文件自动缓存到系统中以文件的形式存在,以待稍后打印,有的用户发现有时取消了打印,可是打印机还是不停的么我们就来看看怎么手动清除win7系统的打印缓存吧...
    99+
    2023-06-08
    win7 打印缓存 打印机 打印 系统
  • 云服务器调用本地打印机怎么调出来打印的内容
    云打印机是一种基于云计算技术的打印服务,它可以让用户在任何地方、任何时间通过网络访问并打印文档或图片。云打印机可以通过互联网连接到云服务器,然后将打印内容发送给云服务器,云服务器再将打印内容分发给用户。 云打印机通常包括以下组件: 云服...
    99+
    2023-10-27
    打印机 服务器 内容
  • 如何浅析C#打印和C#打印预览的实现
    如何浅析C#打印和C#打印预览的实现,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。我们谈到C#打印和C#打印预览的实现其中主要就是包括:页面设置、打印预览、打印...
    99+
    2023-06-17
  • C#中怎么实现打印功能
    这期内容当中小编将会给大家带来有关C#中怎么实现打印功能,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。C#实现打印功能具体的操作步骤如下:创建一个PrintDialog的实例。如下:System.Wind...
    99+
    2023-06-17
  • 云服务器调用本地打印机怎么调整打印位置和时间
    打印位置可以通过调整云服务器的IP地址或者控制台命令来实现。一般来说,我们需要将云服务器的IP地址设置为本地服务器的IP地址或者本地服务器的端口号,以便在本地设备上能够访问到云服务器。 时间可以通过调整云服务器的设置来实现。一般来说,我们...
    99+
    2023-10-28
    打印机 位置 服务器
  • 电脑打印机无法打印怎么解决
    今天小编给大家分享一下电脑打印机无法打印怎么解决的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。打印机无法打印的解决方案分享开...
    99+
    2023-07-01
  • XP系统下打印机如何实现双面打印
    现在的打印机基本上都拥有双面打印的功能,但一般情况下都是默认打印单面的。既然拥有双面打印的功能,我们就要物尽其所。这里以WinXP系统为例,介绍操作方法。   XP系统打印机不可双面打印怎么办   1、点击屏幕左 ...
    99+
    2023-06-13
    打印机 双面打印 系统 XP
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作