如何通过 BarTender 的 .NET SDK 实现互联网打印
概述
如何通过 .NET SDK 与 BarTender 实现互联网打印。
适用范围
BarTender 2016 及以上版本。
信息
Web 标签打印示例
作为 BarTender 套件的一部分,我们提供了一个名为 Web Label Print 的示例。Web Label Print 示例应用程序是一个可运行的 Windows ASP.net Web 应用,演示了如何使用 BarTender Print Server SDK 通过互联网 Web 连接进行打印。它允许你在运行 BarTender 的 Web 服务器本地安装的打印机上打印,也可以在远程客户端电脑连接的远程打印机上打印。
这个示例是开发你自己与 BarTender 集成的 Web 应用程序的良好起点,使用我们的 .NET SDK。
该应用程序包含所有源代码,用户可以:
- 使用标准 Windows 打印,在本地打印机(直接连接到服务器或通过局域网/广域网连接)以及通过互联网访问的远程打印机上打印 BarTender 文档。
- 选择使用哪种远程打印方式:BarTender Web Print Service 或 Java 小程序。
- 探索与 Web Print Service 通信的不同机制(IFrame 或 CORS)。
- 显示所有安装在 Web 服务器和通过互联网访问的客户端电脑上的打印机。
系统要求
运行此示例需要在服务器上安装以下软件:
- 激活为企业版(或企业自动化版)的 BarTender 2016 或更高版本。
- Visual Studio 2010 或更高版本
- Microsoft .NET Framework 4.0
- Internet Information Services (IIS) 7.0 或更高版本
- ASP.NET MVC 4.0
Web Print Service(通过 IFrame)系统要求。运行 Web Print Service(通过 IFrame 通信)的客户端需要满足以下要求:
- 任意 Windows 桌面操作系统
- Microsoft .NET Framework 4.0
- 浏览器:IE8+、Chrome、Firefox。这是兼容性最好的方式。
Web Print Service(通过 CORS)系统要求。运行 Web Print Service(通过 CORS 通信)的客户端需要满足以下要求:
- 任意 Windows 桌面操作系统
- Microsoft .NET Framework 4.0
- 浏览器:IE10+、Chrome、Firefox。这是一种更简单且符合标准的跨域 Web 服务通信方式,但不兼容旧版 IE。
Java 小程序系统要求 运行 Java 小程序的客户端需要满足以下系统要求:
- 任意桌面操作系统(Windows、Mac、Linux)。移动操作系统无法运行 Java 小程序。
- 任何支持运行 Java 小程序的 Web 浏览器。
- 这是客户端打印兼容性最广的方法,但与 Web Printing Service 相比,功能和性能有限。
安装/设置
安装 BarTender .NET SDK
要访问 BarTender .NET SDK 及示例的源文件,你需要安装 BarTender .NET SDK 组件,否则无法看到任何 BarTender .NET SDK 的帮助文档或示例。
在安装 BarTender 时,请确保选择安装 BarTender .NET SDK 组件。如果没有看到任何 BarTender .NET SDK 的帮助文档或示例,需要修改 BarTender 的安装来添加 BarTender .NET SDK。操作方法:进入 Windows 控制面板->程序和功能->右键点击 BarTender->点击更改->安装向导会弹出,允许你修改安装并添加 BarTender .NET SDK。
使用的文件
源文件位于 BarTender Suite 主安装目录下的 SDK 文件夹中。
默认路径应为:C:\Program Files\Seagull\BarTender Suite\SDK\Print Server API Samples\WebLabelPrint 或 C:\Program Files(x86)\Seagull\BarTender Suite\SDK\Print Server API Samples\WebLabelPrint,具体取决于你使用的是 32 位还是 64 位的 BarTender。
该目录下包含名为 WebLabelPrint_CS(C#)和 WebLabelPrint_VB(Visual Basic .NET 源文件)的项目。
大部分代码可以在以下三个解决方案资源管理器文件夹中找到:
作为示例的一部分,包含了完整的 C# 和 Visual Basic .NET 源代码及解决方案文件,可在 Visual Studio 中使用和修改。
在 Visual Studio 中使用示例
该示例附带完整的源代码和解决方案文件,你可以在 Visual Studio 中打开并进行修改。
在示例源文件所在的目录下,你可以看到解决方案文件(.sln),可直接用 Visual Studio 打开。
在 Visual Studio 中运行此示例时,请确保以下设置:
- 如果你使用的是 64 位版本的 BarTender,请确保 Visual Studio 设置为使用 64 位版本的 IIS Express。通常可以通过工具->选项->项目和解决方案->Web 项目->启用“为网站和项目使用 64 位版本的 IIS Express”选项来设置(具体操作可能因 Visual Studio 版本不同而有所差异)。
- 编译应用程序时,需选择 .NET 4 Framework,并根据所用 BarTender 版本选择合适的 32 位或 64 位版本。
在 Internet Information Services (IIS) 中设置 Web Label Print 示例
- 确保已安装 Windows Internet Information Services (IIS)。可通过 Windows 控制面板->程序和功能->点击“启用或关闭 Windows 功能”进行安装。如果是 Windows Server 操作系统,则需通过服务器管理器安装。
- 将 WebLabelPrint 源文件夹(WebLabelPrint_CS 或 WebLabelPrint_VB)从示例所在位置复制到 IIS Web 应用程序运行的目录(默认目录为:C:\inetpub\wwwroot)。
- 打开 Internet Information Services (IIS)。
- 创建应用程序池
- 在左侧面板,右键点击“应用程序池”
- 点击添加应用程序池
- 为其命名
- 确保选择 .NET framework 版本 4,托管管道模式设为“集成”,勾选“立即启动应用程序池”,然后点击确定。
- 右键点击你创建的应用程序池,进入高级设置。
- 确保“启用 32 位应用程序”设置与你所用 BarTender 的位数一致。
- “标识”设置为具有相应权限的用户账户。通常是本地管理员账户,需有权限运行 BarTender 及访问相关资源(如打印机和文件位置)。
- 在左侧面板展开站点和默认网站。你应该能看到刚才复制的 WebLabelPrint 文件夹。
- 右键点击该文件夹,选择“转换为应用程序”
- 确保应用程序池设置为你刚创建的那个。如果不是,点击选择按钮,选择正确的应用程序池。
- 现在 Web 应用程序已在 IIS 中设置完成。要启动网站,可以在左侧面板右键点击该 Web 应用->管理应用程序->浏览。
- 创建应用程序池
打印机配置与打印方式
Web 打印主要有两种方式:标准打印和互联网打印。标准打印指的是在 Web 服务器本地安装的打印机上打印,互联网打印则是指在远程客户端电脑连接的打印机上打印。
对于标准打印,打印机配置很简单。只需在运行 BarTender 的 Web 服务器上安装打印机驱动即可。Web 应用程序会直接访问服务器本地安装的打印机进行打印。
但对于互联网打印,则需要额外的配置和要求:
- 互联网打印依赖于 BarTender Web Print Service 或 Java 小程序插件(取决于客户端系统),以实现 Web 服务器与客户端电脑之间的通信。首次访问网站时会自动安装这些组件。
- BarTender Web Print Service 是安装在客户端的 Windows 服务,适用于运行 Windows 操作系统的客户端。对于其他操作系统(如 Mac OSX 和 Linux),则使用 Java 小程序 Web 浏览器插件。
- 互联网打印还要求客户端电脑安装打印机驱动,同时 Web 服务器上也需安装兼容的打印机驱动。
互联网打印的一般流程如下:
- 用户在服务器上的 Web 应用中选择打印。
- Web 应用提示用户选择和/或指定远程打印机。
- Web 应用从运行 BarTender Web Print Service 或 Java 小程序插件的客户端获取打印许可。
- 使用打印许可,Web 应用将文档打印为文件。
- 服务器应用将打印代码文件的内容发送到客户端电脑。
- 通过客户端脚本或自定义应用,客户端使用 BarTender Web Print Service 或 Java 小程序插件将打印代码发送到本地 Windows 打印队列进行打印。
这些客户端组件可以在以下 Windows 文件夹中找到(如果你在安装 BarTender 时已安装 .NET SDK 组件):
"C:\Program Files\Seagull\BarTender Suite\SDK\Print Server API Samples\WebLabelPrint\WebLabelPrint_VB\Content\ClientComponents"

因此,你可以选择安装基于 Java 的小程序(BarTenderPrintClient.jar)或 Windows 服务(BarTenderWebPrintService.exe)。在 Windows 操作系统下,推荐使用第二种方式。
仅内部信息
- BarTender v2016 已弃用 "BarTenderPrintClient.dll" 的使用。请改用其他互联网打印方式。
- 要使用这些打印方式,需 BarTender 企业自动化版。
-
你可以在 BarTender 帮助中找到更多关于 BarTender .NET SDK 的文档。在 BarTender 中点击帮助->BarTender 帮助,查找“自动化 BarTender->使用 BarTender .NET SDK 进行自动化->打印引擎 API 和打印服务器 API”。
-
请注意,BarTender Web Print Service 和 Java 小程序的文档尚未加入 BarTender 帮助。但本示例的源代码中包含了有用的注释。