如何使用 BarTender 的 .NET SDK 進行網路列印
概述
如何透過 .NET SDK 搭配 BarTender 執行網路列印。
適用版本
BarTender 2016 及以上版本。
資訊說明
Web Label Print 範例
BarTender 套件中包含了一個名為 Web Label Print 的範例。Web Label Print 範例應用程式是一個可運作的 Windows ASP.net 網頁應用程式,展示如何使用 BarTender Print Server SDK 透過網際網路連線進行列印。它可以讓你列印到安裝在執行 BarTender 的網頁伺服器本機上的印表機,也能列印到連接於遠端用戶端電腦的印表機。
這個範例是你開發與 BarTender 整合的自訂網頁應用程式時很好的起點,並且使用我們的 .NET SDK。
這個應用程式包含所有原始碼,讓使用者可以:
- 使用標準 Windows 列印,將 BarTender 文件列印到本機印表機(直接連接到伺服器或透過 LAN/WAN 連接),也能透過網際網路列印到遠端印表機。
- 選擇要使用哪一種遠端列印方式:BarTender Web Print Service 或 Java 小程式。
- 探索與 Web Print Service 溝通的不同方式(IFrame 或 CORS)。
- 顯示所有安裝在網頁伺服器及透過網際網路連線的用戶端電腦上的印表機。
系統需求
執行此範例需要在伺服器上安裝以下軟體:
- BarTender 2016 或更新版本,並啟用為 Enterprise(或 Enterprise Automation)版本。
- 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。這是更簡單且符合標準的跨網域網頁服務通訊方式,但不支援舊版 IE。
Java 小程式系統需求。執行 Java 小程式的用戶端需符合以下條件:
- 任何桌面作業系統(Windows、Mac、Linux)。行動作業系統無法執行 Java 小程式。
- 任何可執行 Java 小程式的網頁瀏覽器。
- 這是最廣泛相容的用戶端列印方式,但功能和效能都不如 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)原始檔案。
大部分程式碼都可以在這三個 Solution Explorer 資料夾中找到:
這個範例包含完整的 C# 和 Visual Basic .NET 原始碼及解決方案檔案,可用於 Visual Studio 編輯與修改。
在 Visual Studio 中使用範例
這個範例附有完整原始碼及解決方案檔案,可直接在 Visual Studio 開啟並修改。
在範例原始檔案所在的目錄中,你可以看到解決方案檔(.sln),可用 Visual Studio 開啟。
在 Visual Studio 執行此範例時,請注意以下事項:
- 如果你使用的是 64 位元版本的 BarTender,請確保 Visual Studio 設定為使用 64 位元版本的 IIS Express。通常可在工具->選項->專案與方案->網頁專案->啟用「對網站和專案使用 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 作業系統,需透過 Server Manager 安裝。
- 將 WebLabelPrint 原始檔資料夾(WebLabelPrint_CS 或 WebLabelPrint_VB)從範例所在位置複製到 IIS 網頁應用程式執行的目錄(預設目錄為:C:\inetpub\wwwroot)。
- 開啟 Internet Information Services (IIS)。
- 建立應用程式集區
- 在左側窗格,右鍵點選「應用程式集區」
- 點選新增應用程式集區
- 輸入名稱
- 請選擇 .NET framework 版本 4,管理管線模式設為「整合」,勾選「立即啟動應用程式集區」,然後點選確定。
- 右鍵點選你建立的應用程式集區,進入進階設定。
- 請確認「啟用 32 位元應用程式」設定符合你所用的 BarTender 位元版本。
- 「識別」請設為有適當權限的使用者帳號。通常是有權限執行 BarTender 及存取印表機和檔案位置的本機管理員帳號。
- 在左側面板展開網站和預設網站。你應該會看到剛剛複製的 WebLabelPrint 資料夾出現在清單中。
- 右鍵點選該資料夾,選擇「轉換為應用程式」
- 請確認應用程式集區已設為你剛建立的那個。如果不是,請點選選擇按鈕並選擇正確的應用程式集區。
- 網頁應用程式現在已在 IIS 設定完成。要啟動網站,可在左側窗格右鍵點選該網頁應用程式->管理應用程式->瀏覽。
- 建立應用程式集區
印表機設定與列印方式
網頁列印主要有兩種方式:標準列印與網路列印。標準列印是指列印到安裝在網頁伺服器本機的印表機,網路列印則是指列印到連接於遠端用戶端電腦的印表機。
標準列印的印表機設定很簡單,只需在執行 BarTender 的網頁伺服器本機安裝印表機驅動程式即可。網頁應用程式會直接存取本機安裝的印表機進行列印。
但若要進行網路列印,則需要額外的設定:
- 網路列印需依用戶端系統選擇使用 BarTender Web Print Service 或 Java 小程式外掛,讓網頁伺服器與用戶端電腦之間能夠通訊。這些元件會在用戶端首次存取網站時安裝。
- BarTender Web Print Service 是安裝在用戶端的 Windows 服務,適合執行 Windows 作業系統的用戶端。若用戶端是 Mac OSX 或 Linux,則會使用 Java 小程式網頁外掛。
- 網路列印還需要在用戶端電腦安裝印表機驅動程式,且在執行 BarTender 的網頁伺服器上也需安裝相容的印表機驅動程式。
網路列印的一般流程如下:
- 用戶從伺服器上的網頁應用程式選擇列印。
- 網頁應用程式提示用戶選擇或指定遠端印表機。
- 網頁應用程式從執行 BarTender Web Print Service 或 Java 小程式外掛的用戶端取得列印授權。
- 取得授權後,網頁應用程式將文件列印成檔案。
- 伺服器應用程式將列印碼檔案內容傳送到用戶端電腦。
- 用戶端透過腳本或自訂應用程式,利用 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 Enterprise Automation 版本。
-
你可以在 BarTender 說明文件中找到更多有關 BarTender .NET SDK 的說明。可在 BarTender 中點選說明->BarTender 說明,然後查閱「自動化 BarTender->使用 BarTender .NET SDK 進行自動化-> Print Engine API 和 Print Server API」。
-
請注意,BarTender Web Print Service 和 Java 小程式的說明尚未加入 BarTender 說明文件。不過,這個範例的原始碼中有許多有用的註解。