★★★:よくある

SVFは帳票印刷に向いているので多くのユーザ様から支持いただいています。今回は、その理由を解説していきます。

まず、SVFでは2種類の印刷方法をサポートしています。

大量印刷向きのコマンド印刷

1つは【コマンド印刷】と呼ばれる方法です。SVFではこちらがメインで使われています。

コマンドはPDL(Page Description Languageの略語)とも呼ばれ、各プリンタメーカごとに体系が違っています。SVFのコマンド印刷では、プリンタに合わせたコマンドを作成し、プリンタに印刷データとして送信しています。そのため、プリンタの能力を最大限に生かした印刷ができます(詳細は後述)。

少量印刷に適したイメージ印刷

もう1つがWindowsなどのパソコンでよく使われる【イメージ印刷】と呼ばれる方法です。

これはEMF(Enhanced Meta Fileの略語)と呼ばれるWindowsのグラフィック描画機能を利用しています。そのため、プリンタの機種に依存しません。プリンタごとの差異は、Windowsにインストールされているドライバがバックグラウンドでこのデータをプリンタ固有の印刷データに変換して送信しています。

2つの差異は以下のイメージを見ていただくとわかりやすいです。上がコマンド印刷、下がイメージ印刷です。

SVFで出てくる2種類の印刷方法-コマンド印刷とイメージ印刷

上図のとおり、イメージ印刷はドライバがプリンタに合わせてくれます。プリンタは受け取ったイメージをそのまま印刷してくれます。

ただし、イメージ情報をやり取りするとデータ量が肥大化します。そのため、大量印刷が想定される場合は、コマンド印刷の検討をおすすめします。また、次節で述べますが細かなプリンタの制御はイメージ印刷では難しいので、このケースでもコマンド印刷の検討が必要です。

コマンド印刷の3つの特徴

コマンド印刷はSVFからプリンタにダイレクトに印刷指示とデータが送信されます。そのため、以下のようなメリットがあります。

  1. 1.SVFを含むアプリケーションとプリンタ間でやり取りする情報量が節約される
  2. 2.同時間で印刷できる枚数がイメージ印刷より大幅に向上する
  3. 3.ドライバによる変換がないので各種印刷制御やページサイズ情報を正確に伝えることができる

上記の3つ目に"印刷制御"をあげていますが、代表的なものとして次のようなものがあります。

  • 給紙トレイ制御
  • 両面/片面印刷制御
  • ステープル制御

SVFなら”印刷制御の難しい”を解決

昨今のプリンタは多機能化しています。

しかし、これらの印刷制御をアプリケーションから行うのは難しいです。例をあげて見てみましょう。

イメージ印刷の場合、ドライバが用紙サイズやトレイ指定などの印刷制御項目のコマンドを加えて印刷します。プログラムからの印刷制御の指示をした場合に、WindowsGDIを介してドライバに指示が行われますが、ドライバ側が必ずしも指定されたとおりに動作するとは限りません。またWindowsGDIでは指定ができないプリンタ制御も存在します。

こういった場合、ドライバの既定の設定を変更しておくのですが、制御したいパターンごとにドライバを増やしていく必要があるため(トレイ1指定用プリンタ、トレイ2指定用プリンタがあるイメージです)管理が煩雑になってしまいます。

例として、複数宛先の請求書を一括して印刷をイメージしてみましょう。一括で印刷したあとに、宛先ごとに仕分けが必要になります。その際に、仕分けをわかりやすくするため、各宛先ごとに色紙(仕切り)を入れる作業があります。白紙と色紙のトレイを都度切り替えないといけないため、イメージ印刷で自動化するのは困難です。

こういった細かい対応ができるのもSVFの特徴です。

SVFでは両方の印刷方法をサポートしていますが、業務で使われるような大量・高速印刷や正確な印刷制御にはコマンド印刷方式を利用いただくことをおすすめいたします。