(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-07-29
(45)【発行日】2024-08-06
(54)【発明の名称】制御プログラム、画像形成装置、情報処理装置
(51)【国際特許分類】
G06F 3/12 20060101AFI20240730BHJP
B41J 5/30 20060101ALI20240730BHJP
B41J 29/38 20060101ALI20240730BHJP
【FI】
G06F3/12 344
G06F3/12 340
G06F3/12 347
G06F3/12 353
G06F3/12 312
B41J5/30 Z
B41J29/38 201
(21)【出願番号】P 2020129124
(22)【出願日】2020-07-30
【審査請求日】2023-06-13
(73)【特許権者】
【識別番号】000005267
【氏名又は名称】ブラザー工業株式会社
(74)【代理人】
【識別番号】110000992
【氏名又は名称】弁理士法人ネクスト
(72)【発明者】
【氏名】荒川 英治
【審査官】征矢 崇
(56)【参考文献】
【文献】特開2001-150744(JP,A)
【文献】特開2008-226119(JP,A)
【文献】特開2008-027224(JP,A)
【文献】特開2019-072894(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F3/12
B41J29/00-B41J29/70
B41J5/00-5/52;21/00-21/18
(57)【特許請求の範囲】
【請求項1】
通信インタフェースと、コントローラと、メモリと、
ユーザインタフェースと、を備える情報処理装置の前記コントローラで読み取り可能な制御プログラムであって、前記メモリには印刷システムプログラムが記憶されており、
前記コントローラに、
前記印刷システムプログラムによって出力された複数ページ分の画像データを取得した場合に、取得された複数ページ分の前記画像データが示す複数のページ画像を、それぞれ1ページ分のラスタデータに変換し、変換された複数の前記1ページ分のラスタデータを圧縮して印刷データを作成する印刷データ作成処理を実行させ、前記ページ画像は、1ページ分の前記画像データであり、複数ページ分の前記画像データは、複数ページ分の前記ページ画像を含んでおり、
前記印刷データ作成処理では、前記印刷データに含まれる前記1ページ分のラスタデータ毎に、前記印刷データ内での前記1ページ分のラスタデータの位置を示す参照情報を作成し、作成された前記参照情報を、前記印刷データに付加し、
前記コントローラに、
前記印刷データを、前記通信インタフェースを介して画像形成装置に送信する送信処理
と、
前記ユーザインタフェースを介して受け付けた操作に応じて、前記画像データに含まれる前記ページ画像個別に、印刷を行わせる前記画像形成装置を特定する装置特定処理と、を実行させ
、
前記印刷データ作成処理では、前記装置特定処理による特定に応じて、前記印刷データに含まれる前記1ページ分のラスタデータに対応付けて、印刷を行わせる前記画像形成装置を指定するための装置指定情報を作成し、作成された前記装置指定情報を前記参照情報に付加し、
前記装置指定情報には、前記印刷データに含まれる前記1ページ分のラスタデータそれぞれに対して、複数の前記画像形成装置別に、印刷を行わせる指定の有無が記録される、
制御プログラム。
【請求項2】
前記情報処理装置は、ユーザインタフェースを備え、
前記コントローラは、
前記ユーザインタフェースを介して受け付けた操作に応じて、前記画像データに含まれる前記ページ画像個別に、印刷設定を特定する設定特定処理を行い、
前記印刷データ作成処理では、前記設定特定処理による前記特定に応じて、前記印刷データに含まれる前記1ページ分のラスタデータに対応づけて、前記印刷設定を指定するための設定情報を作成し、作成された前記設定情報を前記参照情報に付加する請求項
1に記載の制御プログラム。
【請求項3】
前記印刷データ作成処理では、取得された複数ページ分の前記画像データが示す複数の前記ページ画像を、それぞれ1ページ分のラスタデータに変換しつつ、所定データ量毎に圧縮し、
前記送信処理では、前記通信インタフェースを介して、圧縮された所定データ量毎の前記ラスタデータを逐次送信する請求項1
又は2に記載の制御プログラム。
【請求項4】
通信インタフェースと、制御部と、印刷実行部と、を備え、前記通信インタフェースを介して情報処理装置と通信可能な画像形成装置であって、
前記制御部は、
前記通信インタフェースを介して、前記情報処理装置から、複数の1ページ分のラスタデータを圧縮して作成された印刷データであって、前記印刷データ内での前記1ページ分のラスタデータ毎の位置を示す参照情報が付加された前記印刷データを受信する受信処理と、
前記印刷データから、印刷対象となる前記1ページ分のラスタデータを特定するページ特定処理と、
前記参照情報に基づいて、前記印刷データから前記ページ特定処理により特定された前記1ページ分のラスタデータを抽出し、抽出された前記1ページ分のラスタデータの圧縮を解凍し、解凍された前記1ページ分のラスタデータに基づいて、前記印刷実行部に印刷を行わせる印刷制御処理と、
を実行
し、
前記参照情報は、前記印刷データに含まれる前記1ページ分のラスタデータそれぞれに対して、複数の前記画像形成装置別に、印刷を行わせる指定の有無が記録された装置指定情報を含み、
前記ページ特定処理では、前記装置指定情報に、前記画像形成装置に印刷を行わせる指定があることが記録された、前記1ページ分のラスタデータがあるか否かを判断することで、印刷対象となる前記1ページ分のラスタデータを特定する、
画像形成装置。
【請求項5】
前記参照情
報は、前記1ページ分のラスタデータに対応付けて、印刷設定を指定する設定情報を含んでおり、
前記印刷制御処理では、前記1ページ分のラスタデータを印刷する際に、前記1ページ分のラスタデータに対応する前記設定情報に従って印刷するための処理を行う請求項
4に記載の画像形成装置。
【請求項6】
通信インタフェースと、コントローラと、メモリと、
ユーザインタフェースと、を備える情報処理装置であって、前記メモリには、印刷システムプログラムが記憶されており、
前記コントローラは、
前記印刷システムプログラムによって出力された複数ページ分の画像データを取得した場合に、取得された複数ページ分の前記画像データが示す複数のページ画像を、それぞれ1ページ分のラスタデータに変換し、変換された複数の前記1ページ分のラスタデータを圧縮して印刷データを作成する印刷データ作成処理を実行し、前記ラスタデータは、1ページ分の前記画像データであり、複数ページ分の前記画像データは、複数ページ分の前記ラスタデータを含んでおり、
前記印刷データ作成処理では、前記印刷データに含まれる前記1ページ分のラスタデータに対して、前記印刷データ内での前記1ページ分のラスタデータの位置を示す参照情報を作成し、作成された前記参照情報を、前記印刷データに付加し、
前記コントローラは、
前記印刷データを、前記通信インタフェースを介して画像形成装置に送信する送信処理
と、
前記ユーザインタフェースを介して受け付けた操作に応じて、前記画像データに含まれる前記ページ画像個別に、印刷を行わせる前記画像形成装置を特定する装置特定処理と、を実行
し、
前記印刷データ作成処理では、前記装置特定処理による特定に応じて、前記印刷データに含まれる前記1ページ分のラスタデータに対応付けて、印刷を行わせる前記画像形成装置を指定するための装置指定情報を作成し、作成された前記装置指定情報を前記参照情報に付加し、
前記装置指定情報には、前記印刷データに含まれる前記1ページ分のラスタデータそれぞれに対して、複数の前記画像形成装置別に、印刷を行わせる指定の有無が記録される、情報処理装置。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、1ページ分のラスタデータを複数圧縮して印刷データを作成する技術に関する。
【背景技術】
【0002】
特許文献1には、UNIX(登録商標)系のOSで用いられる印刷システムが記載されている。具体的には、OSを備える情報処理装置は、印刷対象となる画像データに含まれるページ画像を1ページ分のラスタデータに変換し、変換された複数ページ分のラスタデータを圧縮して、印刷データを作成する。画像形成装置は、ネットワークを介して、情報処理装置から印刷データを受信すると、受信された印刷データの圧縮を解凍し、解凍後の印刷データから複数ページ分のラスタデータを抽出し、印刷を実行する。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
ユーザが、印刷データのうち所望のページのみを印刷したい場合がある。このような場合、従来の印刷システムでは、画像形成装置は、受信した印刷データの圧縮を解凍した後、印刷データの先頭領域から、印刷データを逐次解析し、対象となるページに対応するラスタデータを抽出していた。そのため、画像形成装置により、ユーザの所望のページのみを印刷する場合、全てのページを印刷する場合と比べて印刷に要する時間が短縮されにくいことが懸念される。
【0005】
本発明は、上記課題に鑑みたものであり、印刷データに含まれる所望のページのみを印刷する場合において、印刷に要する時間を短縮することを目的とする。
【課題を解決するための手段】
【0006】
上記課題を解決するために本発明では、通信インタフェースと、コントローラと、メモリと、を備える情報処理装置のコントローラで読み取り可能な制御プログラムに関する。メモリには印刷システムプログラムが記憶されている。制御プログラムは、コントローラに、印刷システムプログラムによって出力された複数ページ分の画像データを取得した場合に、取得された複数ページ分の前記画像データが示す複数のページ画像を、それぞれ1ページ分のラスタデータに変換し、変換された複数の1ページ分のラスタデータを圧縮して印刷データを作成する印刷データ作成処理を実行させる。ここで、ページ画像は、1ページ分の画像データであり、複数ページ分の画像データは、複数ページ分のページ画像を含んでいる。この印刷データ作成処理では、印刷データに含まれる1ページ分のラスタデータ毎に、印刷データ内での1ページ分のラスタデータの位置を示す参照情報を作成し、作成された参照情報を、印刷データに付加する。そして、制御プログラムは、コントローラに、印刷データを、通信インタフェースを介して画像形成装置に送信する送信処理を実行させる。なお、「ページ画像をラスタデータに変換する」とは、データであるページ画像の形式を、ラスタ形式であるラスタデータに変換することを含んだ概念である。
【0007】
これにより、印刷データを受信した画像形成装置は、印刷データに付加された参照情報を参照することにより、印刷データの圧縮を解凍することなく、印刷データ内での1ページ分のラスタデータの位置を特定することができる。そのため、印刷データの圧縮を解凍した後に、印刷データの先頭から解析を行う場合と比べて、解析に要する時間を短縮することができ、所望とする1ページ分のラスタデータを印刷するのに要する時間を短縮することができる。
【発明の効果】
【0008】
本発明によれば、印刷データに含まれる所望のページのみを印刷する場合において、印刷に要する時間を短縮することができる。
【図面の簡単な説明】
【0009】
【
図3】情報処理装置のコントローラにより、印刷データが作成される手順を説明するフローチャート。
【
図6】第2実施形態に係る画像形成装置により行われる印刷制御処理の手順を説明するフローチャート。
【
図8】参照情報に含まれる実行部指定情報を説明する図。
【発明を実施するための形態】
【0010】
(第1実施形態)
本実施形態係に係る印刷システムを、図面を参照しつつ説明する。
【0011】
図1に示すように、印刷システム100は、情報処理装置10と、MFP(Multifunction Peripheralの略称)30とにより構成されている。本実施形態では、印刷システム100は、3つのMFP30a,30b,30cを備えている。情報処理装置10とMFP30a~30cとは、ネットワーク200を介して通信可能に接続されている。
【0012】
まずは、MFP30a~30cのハードウェア構成について説明する。なお、MFP30a~MFP30cは、同じ構成であるため、MFP30aの構成のみを説明する。MFP30aは、バス31、通信IF32、プリンタ部33、スキャナ部34、FAX部35、タッチパネル36、操作キー37、コントローラ38及びメモリ39を備えている。MFP30aを構成する各部は、バス31を介して通信可能に接続されている。なお、IFは、インタフェースの略称である。コントローラ38は制御部の一例である。
【0013】
通信IF32は、所定の通信プロトコルに準拠して、MFP30aをネットワーク200に接続する。タッチパネル36は、ユーザによる操作を受付けるための操作アイコンを表示し、操作アイコンが受付けた操作に応じた入力をコントローラ38に行うユーザIFである。操作キー37は、受付けた操作に応じた入力をコントローラ38に行うユーザIFである。プリンタ部33は、シートやディスクなどの被記録媒体に画像を印刷する印刷動作を実行する。プリンタ部33の記録方式としては、記録媒体としてのインクを被記録媒体に吐出するインクジェット方式や、電子写真方式などを採用することができる。
【0014】
コントローラ38は、CPUや、ASIC(Application Specific Integrated Circuitの略称)等により構成されており、MFP30を構成するプリンタ部33、スキャナ部34、FAX部35、タッチパネル36の各動作を制御する。メモリ39は、データ記憶領域40を備える。データ記憶領域40は、プログラム等の実行に必要なデータなどを記憶する領域である。メモリ39は、RAM、ROM、SSD、HDD等が組み合わされて構成されている。各種プログラムの実行時に用いられる、コントローラ38が備えるバッファも、メモリ39の一部とみなしてよい。なお、メモリ39は、コントローラ38が読み取り可能なストレージ媒体であってもよい。コントローラ38が読み取り可能なストレージ媒体とは、non-transitoryな媒体である。non-transitoryな媒体には、上記の例の他に、CD-ROM、DVD-ROM等の記録媒体も含まれる。また、non-transitoryな媒体は、tangibleな媒体でもある。一方、インターネット上のサーバなどからダウンロードされるプログラムを搬送する電気信号は、コンピュータが読み取り可能な媒体の一種であるコンピュータが読み取り可能な信号媒体であるが、non-transitoryなコンピュータが読み取り可能なストレージ媒体には含まれない。
【0015】
次に、情報処理装置10の構成を説明する。情報処理装置10は、各種のプログラムの実行が可能な装置であり、例えば、スマートフォン、パーソナルコンピュータ、タブレットコンピュータである。情報処理装置10は、バス13に接続され互いに通信可能な、コントローラ11と、メモリ12と、タッチパネル14と、通信IF16とを備えている。コントローラ11と38、メモリ12と39、タッチパネル14と36、通信IF16と32は、それぞれの装置に適した仕様であることを除けば、似た構成である。
【0016】
コントローラ11は、情報処理装置10の駆動を制御する。メモリ12には、コントローラ11が実行可能なプログラムとして、OS20と、アプリケーションプログラム22と、制御プログラム23とが記憶されている。以下の説明では、プログラムを実行するコントローラ11のことを、単にプログラム名でも記載する場合がある。例えば、「OS20が」という記載は、「OS20を実行するコントローラ11が」という意味で使用する。本実施形態では、主に、プログラムに記述された命令に従ったコントローラ11の処理を示す。すなわち、以下の説明における「判断」、「抽出」、「選択」、「算出」、「決定」、「特定」、「取得」、「受付」、「制御」等の処理は、コントローラ11の処理を表している。なお「取得」は要求を必須とはしない概念で用いる。すなわち、コントローラ11が要求することなくデータを受信するという処理も、「コントローラ11がデータを取得する」という概念に含まれる。また、本明細書中の「データ」とは、コントローラに読取可能なビット列で表される。そして、実質的な意味内容が同じでフォーマットが異なるデータは、同一のデータとして扱われるものとする。本明細書中の「情報」についても同様である。
【0017】
アプリケーションプログラム22は、描画ソフト、ワープロソフト等であり、複数ページに渡るページ画像を示すコンテンツデータCDを作成可能である。以下では、アプリケーションプログラムを、アプリケーション22と略称する。本実施形態において、「ページ画像」は、1ページ分の画像データの意味で使用する。
【0018】
OS20は、UNIX(登録商標)型のOSである。OS20は、アプリケーション22と、制御プログラム23とに対して、OS20の各種機能の提供や、プログラム間での通信を可能にするAPI(Application Programming Interfaceの略称)を備えている。OS20は、印刷システムを構成するAPIとして、CUPS21を有している。
図2に示すように、CUPS21は、コンテンツデータCDを、ベクター形式のベクターデータVDに変換する。具体的には、CUPS21は、コンテンツデータCDを、ベクターデータに変換するフィルタを備えている。本実施形態では、フィルタは、コンテンツデータCDを、PDF(Portable Document Formatの略称)形式のベクターデータVDに変換する。なお、フィルタは、コンテンツデータCDをPS(PostScriptの略称)形式のベクターデータVDに変換するものであってもよい。
【0019】
制御プログラム23は、CUPS21から出力されたベクターデータVDを解釈し、MFP30a~30cに印刷を行わせるための印刷データPDを生成する。本実施形態では、印刷データPDは、IEEE-ISTO(The Institute of Electrical and Electronics Engineers - Industry Standards and : Technology Organizationの略称)のプリンタワーキンググループによって提案されたPWGラスタフォーマット形式のデータである。印刷データPDの詳細については後述する。
【0020】
CUPS21は、OS20に同梱されており、OS20を情報処理装置10にインストールする際にインストールされる。アプリケーション22や、制御プログラム23は、ストアサーバに記憶されており、例えば、情報処理装置10の利用者がストアサーバから情報処理装置10にダウンロードする。なお、CUPS21と、制御プログラム23とがOS20に同梱されていれば、OS20のインストールとともに、制御プログラム23及びCUPS21も情報処理装置10にインストールされる。これ以外にも、OS20、アプリケーション22、CUPS21、制御プログラム23は、サーバからバージョンアップ版がダウンロードされ、バージョンアップインストールされてもよい。
【0021】
次に、制御プログラム23により実行される分散印刷の手順を、
図3を用いて説明する。分散印刷は、MFP30a~30c個別に印刷するページを指定して、印刷データPDを印刷させる印刷である。例えば、分散印刷により、コンテンツデータCDを構成する4ページ分のページ画像のうち、1枚目のページ画像をMFP30aに印刷させ、2枚目のページ画像をMFP30bに印刷させ、残りの3,4枚目のページ画像をMFP30cに印刷させることが可能となる。
図3に示す処理は、情報処理装置10のタッチパネル14を介した操作により、コンテンツデータCDに対する印刷処理が指定されたことを契機に、制御プログラム23により実行される処理であり、主体の記載を省略する。
図4は、
図3で示す処理により作成される印刷データPDを示している。印刷データPDは、ヘッダ領域Hと、データ領域PWと、フッタ領域Fとが、この順序で配列して構成されている。印刷データPDのうち、先頭のヘッダ領域H及びフッタ領域Fは、MFP30a~30bのコントローラ38で解釈可能なプリンタ言語PJLが格納される領域である。なお、
図3では、印刷データPDのうち、データ領域PWの作成のみを主に説明し、ヘッダ領域H及びフッタ領域Fの作成については説明を省略する。
【0022】
ステップ10(以下、単にS10と記載する)では、CUPS21から出力されたベクターデータVDを取得する。
【0023】
S11では、タッチパネル14を介して受付けた操作に応じて、MFP30a~30cそれぞれが印刷を行うページ画像を特定する。本実施形態では、分散印刷における各種設定に対する指定を受付ける設定画面を、タッチパネル14に表示させる。そして、設定画面上で、タッチパネル14を介して受付けたユーザによる操作に応じて、MFP30a~30cそれぞれが印刷を行うページ画像を特定する。本実施形態では、S11が装置特定処理の一例である。
【0024】
S12では、ベクターデータVDに含まれる1ページ分のページ画像をラスタライズして、1ページ分のラスタデータRDを作成する。S13では、S12で作成した1ページ分のラスタデータRDをZIP圧縮する。
図4に示すように、データ領域PWには、ページ画像に対応する複数のラスタデータRDが格納される。以下において、Nページ目に対応するデータに対して、[PN]の記号を付して区別する。なお、Nは、1~nまでの整数である。
図4で示すデータ領域PWは、nページ分のラスタデータにより構成されており、1ページ目(P1)に対応するラスタデータRDを先頭として、各ラスタデータRDが昇順に配列している。なお、本実施形態では、1ページ分のラスタデータRDは、ページヘッダ(Page Headerと記載)と、ページ画像そのものに対応するデータ本体(Dataと記載)とを含むデータとして定義している。ページヘッダは対応する1ページ分のラスタデータにおけるページ番号等の属性を示す情報である。
【0025】
S14では、S13における圧縮後の1ページ分のラスタデータRDのデータ量を用いて、データ領域PW内でのラスタデータの区切りを示す相対アドレスを算出する。具体的には、1ページ目のラスタデータに対しては、S13での圧縮後のラスタデータのデータ量がそのまま相対アドレスとなる。一方、2ページ目以降のラスタデータに対しては、前回、S14で算出した相対アドレスに、今回、S13で圧縮後のラスタデータのデータ量を加えた値を2ページ目のラスタデータにおける相対アドレスとして算出する。
【0026】
S15では、S13での圧縮後のラスタデータが圧縮可能なページ数に到達したか否かを判断する。本実施形態では、S13での圧縮後のラスタデータRDを所定ページ分だけ集合させて圧縮を行う。圧縮可能ページ数に到達しておらず、S15を否定判定すると、S18に進み、ベクターデータVDを構成する全てのページ画像に対して、ラスタデータRDを作成したか否かを判断する。
【0027】
S18を否定判定すると、S12に戻り、ベクターデータVDを構成するページ画像のうち、次ページ目に対応するページ画像に対してラスタライズを行い、ラスタデータRDを作成する。S13を経由した後、S14では、今回、S13で圧縮した新たなページに対応するラスタデータRDの相対アドレスを算出する。上述したように、前回のS14の処理で算出した相対アドレスに、今回、S13での圧縮後のラスタデータRDにおける相対アドレスを加算した値を、今回の相対アドレスとして算出する。S15で圧縮可能ページ数に到達していれば、S16に進み、複数ページ分のラスタデータを圧縮する。
【0028】
S17では、複数ページ分のラスタデータを、通信IF16を介してMFP30a~30cに出力する送信処理を実行する。本実施形態では、送信処理として、複数ページ分のラスタデータ(即ち、印刷データPD)を所定情報量に分割した分割データによりMFP30a~30cに送信する。これにより、印刷データ生成処理による複数ページ分のラスタデータの圧縮と、送信処理による圧縮後のラスタデータを分割した分割データの送信とが逐次実行される。そのため、
図2に示すように、情報処理装置10からは、印刷データPDを所定の情報量毎に分割した分割データが、通信IF16を介してMFP30a~30cに逐次送信されていく。
【0029】
S17を終了すると、S18に進み、ベクターデータVDにより示される全てのページ画像に対してラスタデータの作成を行った否かを判断する。S18を肯定判定すると、S19に進み、印刷データPDの末尾に参照情報INDを付加する。
図4に示すように、参照情報INDには、オフセットテーブルIN1と、装置指定情報IN2とを含んでいる。オフセットテーブルIN1は、印刷データPDに含まれる1ページ分のラスタデータRDそれぞれに対して、データ領域PW上での格納位置を示す情報である。具体的には、S14で作成した、1ページ分のラスタデータそれぞれに対応するデータ量が相対アドレスとして、オフセットテーブルIN1に記録される。例えば、オフセットテーブルIN1において、1ページ目のラスタデータRD_P1には、相対アドレスとして「xxx byte」が記憶されており、印刷データPDにおいて、データ領域PWの先頭から「xxx byte」までが1ページ目のラスタデータであることを示している。同様に、2ページ目のラスタデータRD_P2には、相対アドレスとして「〇〇〇 byte」が記憶されており、データ領域PWにおいて、「xxx byte」から「〇〇〇 byte」までが、2ページ目のラスタデータRD_P2であることを示している。なお、相対アドレスは、印刷データPDにおいて、厳密にラスタデータRDの範囲を定めるものに限らない。
【0030】
装置指定情報IN2は、印刷データPDに含まれる1ページ分のラスタデータRDそれぞれに対して、印刷を行うMFP30を指定する情報である。具体的には、S11で特定されたページ画像それぞれに指定されたMFP30が、装置指定情報IN2に記録される。
図4では、各ラスタデータに対して、印刷を指定するMFP30には、「1」が記録され、印刷が指定されないMFP30には、「0」が記録されている。S19の処理が終了すると、
図3の処理を一旦終了する。本実施形態では、コントローラ11が実行するS11~S16,S18,S19の処理が、印刷データ作成処理の一例である。
【0031】
次に、MFP30aが、印刷データPDの受信を開始したことを契機に実行される分散印刷の手順を、
図5を用いて説明する。
図5に示す処理は、MFP30aのコントローラ38により実行される処理であり、主体の記載を省略する。なお、分散印刷では、MFP30a~30cに対して、情報処理装置10から同じ印刷データPDが送信されるため、MFP30b,30cのコントローラ38においても、
図5で示す同様の処理が行われる。
【0032】
S20では、情報処理装置10から送信された印刷データPDを受信する。本実施形態では、
図2に示すように、印刷データPDは、所定情報量毎に分割された分割データとして逐次受信されていく。本実施形態では、コントローラ38がS20で実行する処理が受信処理の一例である。
【0033】
S21では、印刷データPDの末尾に付加されている参照情報INDを解析して、自機(MFP30a)が印刷を行うラスタデータRDを特定する。参照情報INDは、印刷データPDの末尾に付加されているため、データ領域PWの圧縮を解凍することなく、参照情報INDの解析が可能である。本実施形態では、コントローラ38がS21で実行する処理が、ページ特定処理の一例である。
【0034】
S22では、参照情報INDに含まれる装置指定情報IN2に、自機であるMFP30aを指定するページ(即ち、ラスタデータRD)が記録されているか否かを判断する。自機が指定されていない場合、分散印刷において、自機が印刷を行う装置に指定されていないため、S22を否定判定した後、
図5の処理を一旦終了する。S22において、装置指定情報IN2に、自機(即ち、MFP1)を指定するページが含まれている場合、S22を肯定判定し、S23に進む。S23では、装置指定情報IN2において自機を指定するラスタデータRDに対応づけて記憶された相対アドレスを用いて、印刷データPDから印刷対象となるデータ領域を抽出する。
【0035】
S24では、S23で抽出したデータ領域に対する圧縮を解凍する。本実施形態では、S13での1ページ分のラスタデータに対する圧縮と、S16での所定ページ分の圧縮とを共に行っているため、これら2回の圧縮を解凍する。S25では、S24で圧縮を解凍したラスタデータを用いて、印刷制御処理を行う。具体的には、解凍したラスタデータに基づいて、プリンタ部33により被記録媒体に、各色の記録媒体を印刷させる。このとき、S24で圧縮が解凍されたラスタデータRDは、装置指定情報IN2によりMFP30aに対して印刷が指定されたラスタデータRDである。
【0036】
以上説明した本実施形態では、以下の効果を奏することができる。
情報処理装置10のコントローラ11は、CPUS21から出力されたベクターデータVDが示す複数ページ分のページ画像を、それぞれ1ページ分のラスタデータRDに変換し、変換された複数の1ページ分のラスタデータRDを圧縮して印刷データPDを作成する。このとき、コントローラ11は、印刷データPDに含まれる1ページ分のラスタデータRD毎に、オフセットテーブルIN1を作成し、作成されたオフセットテーブルIN1を含む参照情報INDを印刷データPDに付加する。これにより、印刷データPDを受信したコントローラ38は、印刷データPDに付加されたオフセットテーブルIN1を参照することにより、印刷データPDの圧縮を解凍することなく、印刷データPD内での1ページ分のラスタデータの位置を特定することができる。そのため、印刷データPDの圧縮を解凍した後に、印刷データの先頭から解析を行う場合と比べて、解析に要する時間を短縮することができ、所望とする1ページ分のラスタデータRDを印刷するのに要する時間を短縮することができる。
【0037】
情報処理装置10のコントローラ11は、タッチパネル14を介して受け付けた操作に応じて、ベクターデータVDに含まれるページ画像個別に、印刷を行わせるMFP30a~30cを特定する。コントローラ11は、特定されたMFP30a~30cに応じて、印刷データに含まれる1ページ分のラスタデータに対応付けて、印刷を行わせるMFP30a~MFP30cを指定するための装置指定情報IN2を作成し、作成された装置指定情報IN2を参照情報INDに付加する。これにより、印刷を行うMFP30a~30cを、装置指定情報IN2を用いて1ページ毎に個別に指定することができ、複数ページ分のラスタデータRDを含む印刷データPDを、複数のMFP30a~30cにより分散して印刷させることが可能となる。
【0038】
コントローラ11は、複数ページ分のベクターデータVDが示す複数のページ画像それぞれを、1ページ分のラスタデータに変換しつつ、所定データ量毎に圧縮する。コントローラ11が実行する送信処理では、通信IF16を介して、圧縮された所定データ量毎のラスタデータRDを逐次送信する。これにより、情報処理装置10から、ベクターデータVDに含まれるページ画像が、1ページ分のラスタデータに変換された後に、所定データ量毎に圧縮され、圧縮された所定データ量毎のラスタデータがMFP30a~30cに逐次送信される。そのため、全てのラスタデータRDを圧縮した後に送信する場合と比べて、所定ページ数のコンテンツデータを印刷する際に要する時間をいっそう短縮することができる。
【0039】
(第1実施形態の変形例)
参照情報INDには、ラスタデータRD毎に、MFP30a~30cが印刷を行う際の印刷設定を指定する設定情報が含まれていてもよい。例えば、印刷設定は、1ページ分のラスタデータを印刷する際の色設定(カラー、モノクロ印刷)、用紙サイズ、両面印刷の有無、更には集約印刷の有無等である。
【0040】
この場合において、
図3のS11において、タッチパネル14を介して受付けた操作により、各MFP30a~30cが印刷を行うページ画像の特定とともに、各ページ画像に対する印刷設定を特定する。この場合においても、例えば、分散印刷における印刷設定の指定を受付ける設定画面を、タッチパネル14に表示させる。本実施形態では、コントローラ11がS11で実行する処理が設定特定処理の一例である。そして、設定画面上で、タッチパネル14を介して受付けたユーザによる操作に応じて、ページ画像に対する印刷設定を特定すればよい。そして、S18において、1ページ分のラスタデータRDに対応づけて、印刷設定を指定するための設定情報を作成し、参照情報INDに付加する。
図5のS21では、印刷データPDに付加された参照情報INDに含まれる印刷設定を解析し、S25で自機に指定された印刷設定に応じた印刷処理を行えばよい。以上説明した本実施形態では、印刷データPDに付加する設定情報を用いて1ページ毎に、印刷設定を指定することができる。
【0041】
オフセットテーブルIN1に記録される相対アドレスは、印刷データPD内でのラスタデータRDの位置を特定できるものであればよく、圧縮後のラスタデータRDのデータ量をそのままオフセットテーブルIN1に記録してもよい。
【0042】
(第2実施形態)
第2実施形態では、第1実施形態と異なる構成を主に説明を行う。第2実施形態において第1実施形態と同一の箇所については同じ符号を付し、その説明を繰り返さない。
【0043】
上述した第1実施形態では、情報処理装置10のタッチパネル14を介して受付けた操作に応じて、MFP30a~30cそれぞれが印刷を行うページを特定した。これに代えて、本実施形態では、MFP30a~30cのタッチパネル36を介して受付けた操作に応じて、MFP30a~30cそれぞれが印刷するページを特定する。
【0044】
次に、本実施形態において、MFP30aが、印刷データPDの受信を開始したことを契機に実行される分散印刷の手順を、
図6を用いて説明する。
図6に示す処理は、MFP30aのコントローラ38により実行される処理であり、主体の記載を省略する。
【0045】
S20では、印刷データPDを受信する。S31では、タッチパネル36を介して受付けた操作により、印刷データPDのうち、自機(即ち、MFP30a)で印刷を行うページの指定を受付ける。具体的には、自機で印刷を行うページの指定を受付けるための設定画面を、タッチパネル36に表示させる。タッチパネル36に表示される設定画面上で、自機で印刷を行うページの指定を受付けると、受付けた指定に応じて印刷対象とするラスタデータRDを特定する。本実施形態では、コントローラ38が実行するS31での処理がページ特定処理の一例である。
【0046】
S21では、印刷データPDの末尾に付加されている参照情報INDを解析する。本実施形態では、参照情報INDは、オフセットテーブルIN1のみが含まれており、装置指定情報IN2は含まれていない。なお、参照情報INDに、ページ画像毎の印刷設定を示す設定情報が含まれていてもよい。
【0047】
S23では、S31で特定した印刷対象のページに対応するデータ領域(即ち、ラスタデータ)を、S21で解析したオフセットテーブルIN1により指定されている相対アドレスを用いて、印刷データPDから抽出する。S24では、S23で抽出したデータ領域に対する圧縮を解凍する。S25では、S24で圧縮を解凍したラスタデータを用いて、印刷制御処理を行う。
【0048】
以上説明した本実施形態では、MFP30a~30cのコントローラ38は、タッチパネル36を介して受付けた操作に応じて、印刷データPDから、印刷対象となる1ページ分のラスタデータを特定する。これにより、第1実施形態と同様の効果を奏することができる。
【0049】
(第3実施形態)
第3実施形態では、第1実施形態と異なる構成を主に説明を行う。第3実施形態において第1実施形態と同一の箇所については同じ符号を付し、その説明を繰り返さない。
【0050】
上述した第1実施形態では、ページ毎に印刷を行うMFP30a~30cを指定して、印刷を行った。これに代えて、本実施形態では、
図7に示すように、MFP30aは、印刷形式の異なる2つの印刷実行部を備えており、分散印刷として、被記録媒体に印刷を行う印刷実行部を異ならせる。具体的には、第1プリンタ部41はインクジェット方式の印刷実行部であり、第2プリンタ部42は、レーザー方式の印刷実行部である。
【0051】
図8は本実施形態において、参照情報INDに含まれる実行部指定情報IN3を説明する図である。実行部指定情報IN3には、1ページ分のラスタデータRD毎に、印刷を行うプリンタ部41,42が指定されている。例えば、実行部指定情報IN3において、1ページ目のラスタデータRD_P1に対して、インクジェット(即ち、第1プリンタ部41)に「1」が記録されており、1ページ目のページ画像を第1プリンタ部41で印刷することが指定されている。
【0052】
情報処理装置10では、
図3のS11において、タッチパネル14を介して受付けた操作により、ベクターデータVDにより指定されるページ画像個別に記録を行うプリンタ部41,42が特定される。そして、S19において、S11で特定された内容に応じて作成された実行部指定情報IN3を含む参照情報INDが印刷データPDに付加される。本実施形態では、コントローラ11が実行するS11の処理が実行部特定処理の一例である。
【0053】
MFP30aでは、
図5のS21において、参照情報INDに含まれる実行部指定情報IN3を解析し、印刷データPDに含まれるラスタデータのうち、第1プリンタ部41が印刷するラスタデータRDと、第2プリンタ部42が印刷するラスタデータとを特定する。S23~S25の各処理において、プリンタ部41,42それぞれで特定されているページに対応するラスタデータを印刷する。
【0054】
以上説明した本実施形態では、以下の効果を奏することができる。参照情報INDには、1ページ分のラスタデータRDに対応付けて、第1,第2プリンタ部41,42を指定するための実行部指定情報IN3を含んでいる。MFP30a~30cのコントローラ38が実行する印刷制御処理では、1ページ分のラスタデータを印刷する際に、実行部指定情報IN3で指定されている印刷実行部に印刷を行わせる。これにより、1台のMFP30a~30cが複数の印刷実行部を備えている構成において、印刷実行部間でベクターデータVDに含まれるページ画像を分散して印刷することができる。
【0055】
(その他の実施形態)
本明細書で開示される技術は、上述の実施形態に限られるものではなく、その要旨を逸脱しない範囲において種々の形態に変形することができ、例えば次のような変形も可能である。
上述した各実施形態では、装置指定情報IN2には、ページ画像に対して、1機のMFP30が対応づけて記録されていた。これに代えて、装置指定情報IN2において、所定のページ画像に対してMFP30a~30cのうち、いずれかのMFP30が対応づけて記録され、それ以外のページ画像に対してはMFP30が対応づけて記録されていなくともよい。この場合、MFP30が対応づけられていないページ画像に対しては、分散印刷の際、初期設定で定められたMFP30により印刷が行われればよい。
【0056】
上述した各実施形態では、装置指定情報IN2には、1ページ分のラスタデータRDを単位として、MFP30が対応づけて記録されていた。これに代えて、2ページ分又は3ページ分といった複数ページ分のラスタデータRDを単位として、MFP30が対応付けて記録されていてもよい。
【0057】
上述した各実施形態では、印刷データPDの末尾に参照情報INDを付加した。これに代えて、印刷データPDの先頭に参照情報INDを付加するものであってもよい。
【0058】
上述した各実施形態では、印刷データPDを分割してMFP30に送信した。これに代えて、印刷データPDを一括でMFP30に送信してもよい。この場合、
図3のS19で印刷データの末尾に参照情報INDを付加した後、S17の送信処理を実行すればよい。
【0059】
上述した各実施形態では、OS20が備える印刷システムプログラムとして、CUPSを用いた。これに代えて、印刷システムプログラムとしては、CUPS以外の印刷システムプログラムを用いてもよい。
【0060】
画像形成装置は、MFPに限定されず、印刷処理を実行できる装置であれば、スキャナ部やFAX部を備えていないプリンタであってもよい。
【符号の説明】
【0061】
10…情報処理装置、11…コントローラ、12…メモリ、14…タッチパネル、16…通信IF、21…CUPS、23…制御プログラム、30…MFP