BarTenderで.NET SDKを使用してインターネット印刷を行う方法
概要
インターネット印刷をBarTenderの.NET SDKを使って行う方法について説明します。
対象
BarTender 2016以降。
情報
Web Label Print サンプル
BarTenderスイートには、Web Label Printというサンプルが含まれています。Web Label Printサンプルアプリケーションは、BarTender Print Server SDKを使ってインターネット経由で印刷する方法を示す、動作するWindowsのASP.netウェブアプリケーションです。BarTenderが動作しているウェブサーバーに接続されたローカルプリンターだけでなく、リモートクライアントPCに接続されたリモートプリンターにも印刷できます。
このサンプルは、BarTenderと連携する独自のウェブアプリケーションを開発する際の出発点として最適です。
このアプリケーションには全てのソースコードが含まれており、ユーザーは以下のことができます:
- BarTenderドキュメントを、サーバーに直接接続されたプリンターやLAN/WAN経由のローカルプリンター、またはインターネット経由でアクセスするリモートプリンターで印刷できます。
- リモート印刷の方式として、BarTender Web Print ServiceまたはJavaアプレットのどちらを使うか選択できます。
- Web Print Serviceとの通信方法(IFrameまたはCORS)を切り替えて試すことができます。
- ウェブサーバーにインストールされている全てのプリンターや、インターネット経由でアクセスするクライアントPCのプリンターを表示できます。
必要条件
このサンプルを実行するには、サーバーに以下のソフトウェアがインストールされている必要があります:
- 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経由)のシステム要件:IFrame経由でWeb Print Serviceを利用するクライアントには以下が必要です:
- 任意のWindowsデスクトップOS
- Microsoft .NET Framework 4.0
- 対応ブラウザ:IE8以上、Chrome、Firefox。最も互換性の高い方法です。
Web Print Service(CORS経由)のシステム要件:CORS経由でWeb Print Serviceを利用するクライアントには以下が必要です:
- 任意のWindowsデスクトップOS
- Microsoft .NET Framework 4.0
- 対応ブラウザ:IE10以上、Chrome、Firefox。クロスドメインWebサービスとの通信がよりシンプルかつ標準的ですが、古いIEには対応していません。
Javaアプレットのシステム要件:Javaアプレットを利用するクライアントには以下が必要です:
- 任意のデスクトップOS(Windows、Mac、Linux)。モバイルOSでは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ビット版かによって異なります)。
このディレクトリには、C#用のWebLabelPrint_CSと、Visual Basic .NET用のWebLabelPrint_VBという名前のアイテムが含まれています。
主なコードは、以下の3つのソリューションエクスプローラのフォルダにあります:
このサンプルには、C#およびVisual Basic .NETの全ソースコードとソリューションファイルが含まれており、Visual Studioで利用・編集できます。
Visual Studioでサンプルを使う
このサンプルには、Visual Studioで開いて編集できる全ソースコードとソリューションファイルが含まれています。
サンプルのソースファイルがあるディレクトリに、Visual Studioで開けるソリューションファイル(.sln)があります。
Visual Studioでこのサンプルを実行する際は、以下の点に注意してください:
- 64ビット版BarTenderを使用している場合は、Visual StudioでIIS Expressの64ビット版を使うように設定してください。通常は、ツール→オプション→プロジェクトとソリューション→Webプロジェクト→「Webサイトおよびプロジェクトで64ビット版IIS Expressを使用する」オプションを有効にします(Visual Studioのバージョンによって異なる場合があります)。
- アプリケーションを.NET Framework 4で、BarTenderのバージョンに合わせて32ビットまたは64ビットでコンパイルしてください。
Internet Information Services (IIS)でWeb Label Printサンプルをセットアップする
- WindowsのInternet Information Services (IIS)がインストールされていることを確認してください。Windowsのコントロールパネル→プログラムと機能→「Windowsの機能の有効化または無効化」からインストールできます。Windows Server OSの場合は、サーバーマネージャーからインストールしてください。
- Web Label Printサンプルがある場所から、WebLabelPrintのソースフォルダ(WebLabelPrint_CSまたはWebLabelPrint_VB)を、IISのウェブアプリケーションが動作するディレクトリ(デフォルトはC:\inetpub\wwwroot)にコピーします。
- Internet Information Services (IIS)を開きます。
- アプリケーションプールを作成します
- 左側のペインで「アプリケーションプール」を右クリック
- 「アプリケーションプールの追加」をクリック
- 名前を付ける
- .NET Frameworkバージョン4を選択し、管理パイプラインモードは「統合」、"アプリケーションプールを直ちに開始する"にチェックを入れてOKをクリック
- 作成したアプリケーションプールを右クリックし、「詳細設定」に進みます。
- 「32ビットアプリケーションの有効化」設定が、使用しているBarTenderのビット数に合っているか確認してください。
- 「ID」も、適切な権限を持つユーザーアカウントに設定してください。通常はBarTenderやプリンター、ファイルへのアクセス権を持つローカル管理者アカウントです。
- 左側のパネルで「サイト」→「Default Web Site」を展開すると、先ほどコピーしたWebLabelPrintフォルダがリストに表示されます。
- それを右クリックして「アプリケーションに変換」をクリック
- アプリケーションプールが作成したものになっているか確認し、違う場合は「選択」ボタンから正しいアプリケーションプールを選択してください。
- これでウェブアプリケーションがIISにセットアップされます。ウェブサイトを起動するには、左ペインでウェブアプリケーションを右クリック→「アプリケーションの管理」→「参照」でアクセスできます。
- アプリケーションプールを作成します
プリンターの設定と印刷方法
ウェブベースの印刷には、「標準印刷」と「インターネット印刷」の2つの主な方法があります。標準印刷は、ウェブサーバーにローカルでインストールされたプリンターへの印刷を指し、インターネット印刷はリモートクライアントPCに接続されたリモートプリンターへの印刷を指します。
標準印刷の場合、プリンターの設定は簡単です。BarTenderが動作しているウェブサーバーにプリンタードライバーをインストールするだけで、ウェブアプリケーションからローカルプリンターに印刷できます。
一方、インターネット印刷には追加の要件や設定が必要です。
- インターネット印刷は、クライアントシステムに応じてBarTender Web Print ServiceまたはJavaアプレットプラグインのいずれかを利用し、ウェブサーバーとクライアントPC間の通信を可能にします。これらは、クライアントが初めてウェブサイトにアクセスした際にインストールされます。
- BarTender Web Print Serviceは、クライアントPCにインストールされるWindows用のウェブサービスです。Windows OSを利用しているクライアントに最適です。Mac OSXやLinuxなど他のOSの場合は、Javaアプレットのウェブブラウザプラグインが利用されます。
- インターネット印刷では、クライアントPCにもプリンタードライバーがインストールされている必要があり、さらにBarTenderが動作しているウェブサーバーにも互換性のあるプリンタードライバーが必要です。
インターネット印刷の一般的な流れは以下の通りです:
- サーバー上のウェブアプリケーションから、ユーザーが印刷オプションを選択します。
- ウェブアプリケーションが、ユーザーにリモートプリンターの選択や指定を促します。
- ウェブアプリケーションが、BarTender Web Print ServiceまたはJavaアプレットのウェブブラウザプラグインを実行しているクライアントから印刷ライセンスを取得します。
- 印刷ライセンスを使って、ウェブアプリケーションがドキュメントをファイルに印刷します。
- 印刷コードファイルの内容が、サーバーアプリケーションからクライアントPCに送信されます。
- クライアント側のスクリプトやカスタムアプリケーションを使い、BarTender Web Print ServiceまたはJavaアプレットのウェブブラウザプラグインを利用して、ローカルのWindowsスプーラーに印刷コードを送信します。
これらのクライアントコンポーネントは、BarTenderのインストール時に.NET SDKコンポーネントをインストールしていれば、以下のWindowsフォルダにあります:
"C:\Program Files\Seagull\BarTender Suite\SDK\Print Server API Samples\WebLabelPrint\WebLabelPrint_VB\Content\ClientComponents"

つまり、Javaベースのアプレット(BarTenderPrintClient.jar)またはWindowsサービス(BarTenderWebPrintService.exe)のいずれかをインストールできます。Windows OSを利用している場合は、後者の方法がおすすめです。
社内向け情報
- 「BarTenderPrintClient.dll」の利用はBarTender v2016で非推奨となりました。他のインターネット印刷方式を利用してください。
- これらの印刷方式を利用するには、BarTenderのEnterprise Automation Editionが必要です。
-
BarTender .NET SDKの詳細なドキュメントは、BarTenderのヘルプ内にあります。BarTenderのヘルプ→BarTenderヘルプ→「BarTenderの自動化」→「BarTender .NET SDKによる自動化」→「Print Engine API」と「Print Server API」を参照してください。
-
BarTender Web Print ServiceおよびJavaアプレットのドキュメントは、現時点ではBarTenderヘルプに追加されていませんが、このサンプルのソースコード内に参考になるコメントが含まれています。