資源簡介
并口打印機(jī)指令打印demo,無需安裝打印機(jī)驅(qū)動,直接調(diào)用引用的dll即可打印。
代碼片段和文件信息
using?System;
using?System.Collections.Generic;
using?System.ComponentModel;
using?System.Data;
using?System.Drawing;
using?System.Text;
using?System.Windows.Forms;
using?System.Runtime.InteropServices;
using?System.IO.Ports;
using?Printer.SDK.API;
using?System.Text.Regularexpressions;
namespace?PrtWinDemo
{
????public?partial?class?PrtWinDemoForm?:?Form
????{
????????//Support?Page?Mode?Models
????????public?List?PageModePrinterList?=?new?List?{?“POS80A“?“POS80B“?“POS80C“?“POS80E“?“POS80D““ME31“?};
????????private?IntPtr?printer;
????????bool?isPageModePrinter;
????????string?imagePath;
????????int?Index;
????????
????????public?PrtWinDemoForm()
????????{
????????????InitializeComponent();
????????????setButtonEnable(false);
????????????this.cmbPortType.SelectedIndex?=?1;
????????????this.txtPortSetting.Text?=?“USB“;
????????????this.cmbImage.SelectedIndex?=?0;
????????}
????????private?void?setButtonEnable(bool?isEnable)
????????{
????????????btnConnect.Enabled?=?!isEnable;
????????????btnStop.Enabled?=?isEnable;
????????????this.grbBtn.Enabled?=?isEnable;
????????????
????????}
????????private?void?btnClose_Click(object?sender?EventArgs?e)
????????{
????????????this.Close();
????????}
????????private?void?btnConnect_Click(object?sender?EventArgs?e)
????????{
????????????string?modelsetting?=?this.txtModel.Text;
????????????string?portsetting?=?this.txtPortSetting.Text;
????????????if?(Constants.E_SUCCESS?!=?DllAPI.PrinterCreator(ref?printer?modelsetting))
????????????????{
????????????????????MessageBox.Show(“Creator?Model?Failed!“);
????????????????????return;
????????????????}
????????????if?(Constants.E_SUCCESS?==?DllAPI.PortOpen(printer?portsetting))
????????????{
????????????????//設(shè)置字符集
????????????????DllAPI.SetCodePage(printer?Constants.CHARACTERSET_DEFAULT?0);
????????????????this.tboxInfo.Text?=?“Connect?Succeed“;
????????????????setButtonEnable(true);
????????????????//判斷是否支持頁模式
????????????????isPageModePrinter?=?PageModePrinterList.Contains(modelsetting);
????????????????if?(!isPageModePrinter)
????????????????{
????????????????????this.btnPrintLabel.Enabled?=?false;
????????????????}
????????????}
????????????else
????????????????MessageBox.Show(“Port?Open?Failed!“);
????????}
????????private?void?btnStop_Click(object?sender?EventArgs?e)
????????{
????????????this.tboxInfo.Text?=?“Close?Port“;
????????????DllAPI.PortClose(printer);
????????????setButtonEnable(false);
????????}
????????private?void?btnPrintLabel_Click(object?sender?EventArgs?e)?
????????{
????????????double?hMotion?=?0.125?vMotion?=?0.125;????//?distance?per?dot
????????????int?pageWidth?=72?pageHeight?=?500;????????//?mm
????????????int?width_dots?=?(int)(pageWidth?/?hMotion);
????????????int?height_dots?=?(int)(pageHeight?/?vMotion);
??
????????????if?(CheckPrinterState())
????????????{
????????????????DllAPI.PrinterInitialize(pr
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件????????117??2017-12-20?15:40??C#\app.config
?????文件??????18567??2017-12-21?17:20??C#\CSharp_ESC.cs
?????文件??????18268??2017-12-20?15:38??C#\CSharp_ESC.designer.cs
?????文件???????5814??2017-12-20?15:38??C#\CSharp_ESC.resx
?????文件???????7557??2017-09-22?14:12??C#\DllAPI.cs
?????文件??????10095??2017-12-20?15:40??C#\ESC_CSharp.csproj
?????文件?????165888??2017-12-15?17:47??C#\ESC_SDK.dll
?????文件??????17183??2017-07-29?15:34??C#\PrinterConstants.cs
?????文件????????402??2017-07-29?15:34??C#\Program.cs
?????文件???????1474??2015-05-29?15:22??C#\Properties\AssemblyInfo.cs
?????文件???????2884??2017-12-20?15:41??C#\Properties\Resources.Designer.cs
?????文件???????5612??2014-04-15?11:00??C#\Properties\Resources.resx
?????文件???????1101??2014-08-22?14:49??C#\Properties\Settings.Designer.cs
?????文件????????249??2014-04-15?11:00??C#\Properties\Settings.settings
????..AD...?????????0??2018-06-01?15:01??C#\Properties
?????目錄??????????0??2018-06-01?15:01??C#
-----------?---------??----------?-----??----
???????????????255211????????????????????16
評論
共有 條評論