(57)【特許請求の範囲】
【請求項１】
繰り返し与えられる複数頁の原稿データを受け付けることにより複数部の原稿データを受け付けることが可能な受付手段と、該受付手段が受け付けた原稿データの一又は複数の頁を一の印刷媒体に集約して印刷するための印刷データを生成する生成手段とを備える印刷データ生成装置において、
原稿データの各頁から特定領域のデータを取得する取得手段と、
前記取得手段が原稿データの先頭頁から取得した特定領域のデータを基準データとして記憶する基準データ記憶手段と、
前記取得手段が原稿データの先頭頁から取得した特定領域のデータを、原稿データのヘッダ及び／又はフッタの有無を判定するためのヘッダフッタ判定用データとして記憶するヘッダフッタ判定用データ記憶手段と、
前記取得手段が原稿データの先頭頁以外の頁から取得した特定領域のデータが、前記ヘッダフッタ判定用データ記憶手段に記憶したヘッダフッタ判定用データと一致する部分を含むか否かを判定するヘッダフッタ判定手段と、
該ヘッダフッタ判定手段が一致する部分を含むと判定した場合に、該一致する部分に係るデータをヘッダフッタ判定用データとして前記ヘッダフッタ判定用データ記憶手段に記憶するヘッダフッタ判定用データ更新手段と、
前記ヘッダフッタ判定手段が一致する部分を含むと判定した場合に、前記取得手段が原稿データの先頭頁以外の頁から取得した特定領域のデータが、前記基準データ記憶手段が記憶した基準データに一致するか否かを判定する基準データ判定手段と、
前記基準データ判定手段が一致すると判定した特定領域のデータを含む頁を、原稿データの各部の区切り位置と判別する判別手段と
を備え、
前記生成手段は、前記判別手段が判別した区切り位置に応じて、各部の原稿データを別の印刷媒体に集約して印刷するための印刷データを生成するようにしてあること
を特徴とする印刷データ生成装置。
【請求項２】
コンピュータに、繰り返し与えられる複数頁の原稿データを受け付けることにより複数部の原稿データを受け付けさせ、受け付けた原稿データの一又は複数の頁を一の印刷媒体に集約して印刷するための印刷データを生成させるプリンタドライバプログラムにおいて、
コンピュータに、
原稿データの各頁から特定領域のデータを取得させ、
原稿データの先頭頁から取得した特定領域のデータを基準データとして記憶させ、
原稿データの先頭頁から取得した特定領域のデータを、原稿データのヘッダ及び／又はフッタの有無を判定するためのヘッダフッタ判定用データとして記憶させ、
原稿データの先頭頁以外の頁から取得した特定領域のデータが、記憶したヘッダフッタ判定用データと一致する部分を含むか否かを判定させ、
ヘッダフッタ判定用データと一致する部分を含むと判定した場合に、該一致する部分に係るデータをヘッダフッタ判定用データとして記憶させ、
ヘッダフッタ判定用データと一致する部分を含むと判定した場合に、原稿データの先頭頁以外の頁から取得した特定領域のデータが、記憶した基準データに一致するか否かを判定させ、
一致すると判定した特定領域のデータを含む頁を、原稿データの各部の区切り位置と判別させ、
判別した区切り位置に応じて、各部の原稿データを別の印刷媒体に集約して印刷するための印刷データを生成させること
を特徴とするプリンタドライバプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ワードプロセッサ又は表計算等のアプリケーションソフトウェアから与えられる原稿データから印刷用の印刷データを生成する印刷データ生成装置及びプリンタドライバプログラムに関する。
【背景技術】
【０００２】
パーソナルコンピュータ（以下、ＰＣという）にはワードプロセッサ又は表計算等のアプリケーションソフトウェアが搭載され、これらのアプリケーションソフトウェアを用いてユーザが作成した原稿データは、ＰＣにＵＳＢケーブル又はＬＡＮケーブル等を介して接続されたプリンタを用いて印刷用紙に印刷するようにしてある。このとき、ユーザが作成した原稿データはＰＣに予め搭載されたプリンタドライバに与えられ、プリンタドライバが原稿データを印刷用の印刷データに変換してプリンタへ与えることで、プリンタが印刷を行う構成としてある場合が多い。
【０００３】
近年、プリンタドライバは多機能化され、アプリケーションソフトウェアから与えられた原稿データの複数頁を１枚の印刷用紙に集約して印刷する機能、所謂集約印刷の機能を備えている。集約印刷を行う場合、プリンタドライバは、印刷用紙に対応する印刷領域を２分割又は４分割等に分割した領域に、原稿データの各頁を順に割り当てた印刷データを生成し、プリンタへ与えるようにしてある。
【０００４】
特許文献１においては、複数の章を有する原稿データを印刷用紙の両面に対して集約印刷を行う場合に、集約印刷の集約枚数と、章の区切りとなる頁の番号と、章の区切りとなる頁を印刷用紙の表裏面のいずれに印刷するかの指示に関する情報とを取得し、章の区切りとなる頁を印刷用紙の指示された面の先頭領域に割り付けた集約印刷用の印刷データを作成する画像形成装置及び画像処理装置が提案されている。
【０００５】
一方、ユーザは作成した原稿データを一度に複数部印刷したい場合があり、アプリケーションソフトウェアでは印刷する部数を指示することができるようにしてある。このとき、原稿データが複数頁で構成されている場合には、印刷後の仕分けの容易さから、原稿データを頁順に１部ずつ印刷する処理を、指示された部数回繰り返し行って、部単位で印刷を行う機能、所謂部単位印刷の機能が用いられる。部単位印刷がユーザにより指示された場合、アプリケーションソフトウェアは、原稿データを部単位で指示された部数回繰り返しプリンタドライバへ与えることにより、印刷を行うようにしてある。
【０００６】
しかしながら、上述の集約印刷及び部単位印刷を併用して印刷を行う場合、以下のような問題点が発生する。図７は、集約印刷の問題点を説明するための模式図である。図７に示す例は、原稿データが３頁分のデータを有しており、１枚の印刷用紙に４頁分を集約して印刷を行う設定とした場合である。また、（ａ）は原稿データを１部のみ印刷する場合であり、（ｂ）は原稿データを部単位印刷で３部印刷する場合である。
【０００７】
原稿データを１部のみ印刷する場合、アプリケーションソフトウェア５０は、プリンタドライバ１５１へ原稿データを頁順に３頁分与え、プリンタドライバ１５１は、印刷用紙の印刷領域を４分割した領域に与えられた順に原稿データの各頁を割り当てた印刷データを生成して、図示しないプリンタへ与える。
【０００８】
原稿データを部単位印刷で３部印刷する場合、アプリケーションソフトウェア５０は、プリンタドライバ１５１へ３頁の原稿データを３回繰り返して与える。このとき、プリンタドライバ１５１は、与えられた３部の原稿データの各部の区切りを認識することができず、９頁の原稿データが与えられたものとして印刷データの生成を行う。このため、生成された印刷データは、１頁目に１部目の原稿データの３頁分と２部目の原稿データの１頁目とが集約され、２頁目に２部目の原稿データの２頁及び３頁と３部目の原稿データの１頁及び２頁とが集約され、３頁目に３部目の原稿データの３頁が集約される。
【特許文献１】特開２００１−１４８７７４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００９】
図７に示す例において、原稿データを集約印刷で３部印刷する場合、（ａ）の出力結果である印刷データと同じものを３頁分出力することがユーザが望む結果であるが、（ｂ）に示すように、実際には望む結果を得ることができない。これは、アプリケーションソフトウェア５０が３部分の原稿データを区切りなくプリンタドライバ１５１へ繰り返し与え、プリンタドライバ１５１が各部の区切りを認識することができないということに起因している。特許文献１に記載の画像形成装置及び画像処理装置においては、集約印刷で原稿データを複数部印刷する場合については言及されていない。
【００１０】
本発明は、斯かる事情に鑑みてなされたものであって、その目的とするところは、集約印刷及び部単位印刷を併用して原稿データを複数部印刷する場合に、原稿データの各頁から特定領域のデータを取得し、この特定領域のデータから各部の区切り位置を判別し、判別した区切り位置に応じて各部の原稿データを別の印刷媒体に印刷するように印刷データを生成する構成とすることにより、複数部の原稿データを各部毎に確実に別の印刷媒体に集約印刷する印刷データを生成できる印刷データ生成装置及びプリンタドライバプログラムを提供することにある。
【００１１】
また本発明の他の目的とするところは、原稿データの各部の区切り位置を判別する場合に、原稿データの先頭頁の特定領域のデータを基準データとして記憶し、原稿データの各頁から特定領域のデータを取得して基準データと一致するか否かを判定し、判定結果から原稿データの各部の区切り位置を判別する構成とすることにより、区切り位置の判別を簡単に行うことができる印刷データ生成装置及びプリンタドライバプログラムを提供することにある。
【００１２】
また本発明の他の目的とするところは、原稿データから特定領域としてヘッダ及び／又はフッタの領域を取得して、この領域が一致するか否かを判定する構成とすることにより、原稿データの先頭頁と各頁とが一致するか否かを簡単に判定することができる印刷データ生成装置及びプリンタドライバプログラムを提供することにある。
【課題を解決するための手段】
【００１３】
本発明に係る印刷データ生成装置は、繰り返し与えられる複数頁の原稿データを受け付けることにより複数部の原稿データを受け付けることが可能な受付手段と、該受付手段が受け付けた原稿データの一又は複数の頁を一の印刷媒体に集約して印刷するための印刷データを生成する生成手段とを備える印刷データ生成装置において、原稿データの各頁から特定領域のデータを取得する取得手段と、前記取得手段が原稿データの先頭頁から取得した特定領域のデータを基準データとして記憶する基準データ記憶手段と、前記取得手段が原稿データの先頭頁から取得した特定領域のデータを、原稿データのヘッダ及び／又はフッタの有無を判定するためのヘッダフッタ判定用データとして記憶するヘッダフッタ判定用データ記憶手段と、前記取得手段が原稿データの先頭頁以外の頁から取得した特定領域のデータが、前記ヘッダフッタ判定用データ記憶手段に記憶したヘッダフッタ判定用データと一致する部分を含むか否かを判定するヘッダフッタ判定手段と、該ヘッダフッタ判定手段が一致する部分を含むと判定した場合に、該一致する部分に係るデータをヘッダフッタ判定用データとして前記ヘッダフッタ判定用データ記憶手段に記憶するヘッダフッタ判定用データ更新手段と、前記ヘッダフッタ判定手段が一致する部分を含むと判定した場合に、前記取得手段が原稿データの先頭頁以外の頁から取得した特定領域のデータが、前記基準データ記憶手段が記憶した基準データに一致するか否かを判定する基準データ判定手段と、前記基準データ判定手段が一致すると判定した特定領域のデータを含む頁を、原稿データの各部の区切り位置と判別する判別手段とを備え、前記生成手段は、前記判別手段が判別した区切り位置に応じて、各部の原稿データを別の印刷媒体に集約して印刷するための印刷データを生成するようにしてあることを特徴とする。
【００１６】
また、本発明に係るプリンタドライバプログラムは、コンピュータに、繰り返し与えられる複数頁の原稿データを受け付けることにより複数部の原稿データを受け付けさせ、受け付けた原稿データの一又は複数の頁を一の印刷媒体に集約して印刷するための印刷データを生成させるプリンタドライバプログラムにおいて、コンピュータに、原稿データの各頁から特定領域のデータを取得させ、原稿データの先頭頁から取得した特定領域のデータを基準データとして記憶させ、原稿データの先頭頁から取得した特定領域のデータを、原稿データのヘッダ及び／又はフッタの有無を判定するためのヘッダフッタ判定用データとして記憶させ、原稿データの先頭頁以外の頁から取得した特定領域のデータが、記憶したヘッダフッタ判定用データと一致する部分を含むか否かを判定させ、ヘッダフッタ判定用データと一致する部分を含むと判定した場合に、該一致する部分に係るデータをヘッダフッタ判定用データとして記憶させ、ヘッダフッタ判定用データと一致する部分を含むと判定した場合に、原稿データの先頭頁以外の頁から取得した特定領域のデータが、記憶した基準データに一致するか否かを判定させ、一致すると判定した特定領域のデータを含む頁を、原稿データの各部の区切り位置と判別させ、判別した区切り位置に応じて、各部の原稿データを別の印刷媒体に集約して印刷するための印刷データを生成させることを特徴とする。
【００１９】
本発明においては、集約印刷及び部単位印刷を併用して原稿データを複数部印刷する場合に、原稿データの各頁から特定領域のデータを取得し、この特定領域のデータから各部の区切り位置を判別する。区切り位置を判別することによって、複数頁を集約する場合に、別部の原稿データを同じ印刷媒体に集約しないように、印刷データを生成できる。
【００２０】
本発明においては、原稿データの各部の区切り位置を判別する場合に、原稿データの先頭頁の特定領域のデータを基準データとして記憶し、原稿データの各頁から特定領域のデータを取得して基準データと一致するか否かを判定する。取得した各頁の特定領域のデータと記憶した基準データとが一致した場合、この頁は先頭頁と同じ原稿データであり、次部の先頭頁であると判断できるため、この頁を区切り位置と判別できる。集約印刷を行う場合に、この頁を前頁と別の印刷媒体に集約して印刷データを生成することで、各部の原稿データが別の印刷媒体に印刷される。
【００２１】
本発明においては、特定領域として原稿データのヘッダ及び／又はフッタの領域を取得し、この領域を比較して一致するか否かの判定を行う。原稿データには頁番号付きのヘッダ及び／又はフッタが付されている場合が多く、ヘッダ及び／又はフッタの領域は各頁で構成がほぼ同じであり、頁番号のみが異なる場合が多い。よって、原稿データの各頁から構成がほぼ同じであるヘッダ及び／又はフッタを抽出することは行いやすく、また、頁番号付きであればヘッダ及び／又はフッタが一致するのは同じ頁のみであるため、先頭頁に一致する頁を簡単に判別でき、各部の区切り位置を簡単に判別できる。
【発明の効果】
【００２２】
本発明による場合は、原稿データの各頁から特定領域のデータを取得し、この特定領域のデータから各部の区切り位置を判別し、判別した区切り位置に応じて各部の原稿データを別の印刷媒体に印刷するように印刷データを生成する構成とすることにより、集約印刷及び部単位印刷を併用して原稿データを複数部印刷する場合に、別部の原稿データを同じ印刷媒体に集約しないように、印刷データを生成できるため、この印刷データ生成装置又はプリンタドライバプログラムを利用して印刷を行う印刷システムの利便性を向上できる。
【００２３】
また、本発明による場合は、原稿データの先頭頁の特定領域のデータを基準データとして記憶し、原稿データの各頁から特定領域のデータを取得して基準データと一致するか否かを判定し、判定結果から原稿データの各部の区切り位置を判別する構成とすることにより、区切り位置の判別を簡単に行うことができるため、区切り位置を判別するための処理を行うことによる負荷の増加を低減できる。
【００２４】
また、本発明による場合は、原稿データから特定領域としてヘッダ及び／又はフッタの領域を取得して、この領域が一致するか否かを判定する構成とすることにより、先頭頁に一致する頁を簡単に判別でき、各部の区切り位置を簡単に判別できるため、区切り位置を判別するための処理を行うことによる負荷の増加をより低減できる。
【発明を実施するための最良の形態】
【００２５】
以下、本発明をその実施の形態を示す図面に基づき具体的に説明する。なお、本実施の形態においては本発明に係る印刷データ生成装置及びプリンタドライバプログラムを備える印刷システムを例に説明する。図１は、本発明に係る印刷システムの構成を示すブロック図である。図において１は印刷データ生成装置をなすＰＣ（Ｐｅｒｓｏｎａｌ  Ｃｏｍｐｕｔｅｒ）であり、ユーザが作成した原稿データを基に、プリンタ２１の印刷に必要な印刷データをＰＣ１が生成し、印刷データをＰＣ１からプリンタ２１へ与えて、プリンタ２１により印刷を行うようにしてある。
【００２６】
ＰＣ１は、演算及びＰＣ１内の各部の制御等を行うＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）２と、ＣＰＵ２にバス９を介して接続された入力部３、出力部４、補助記憶装置５、ＲＡＭ６、ハードディスク７及び通信部８等とを備えている。入力部３は、キーボード及びマウス等の入力装置を有し、ユーザにより与えられたこれらの入力装置への操作がＣＰＵ２へ通知され、ＣＰＵ２がこれに応じた処理を行うことによって、ＰＣ１が動作するようにしてある。出力部４は、液晶ディスプレイ又はＣＲＴディスプレイ等の表示装置により構成され、ユーザへ種々の映像を表示するようにしてある。通信部８は、ＵＳＢケーブル、パラレルケーブル又はＬＡＮケーブル等のケーブルが接続され、これらのケーブルを介してプリンタ２１との間でデータの送受信を行うことができるようにしてある。
【００２７】
また、ＲＡＭ６は、ＣＰＵ２の演算及び制御等の処理に伴って発生する一時的な情報を記憶するものであり、ＤＲＡＭ又はＳＲＡＭ等のメモリ素子により構成されている。ハードディスク７は、数百ＧＢ又はそれ以上の容量を有する磁気記憶装置であり、ＰＣ１を動作させるための図示しないＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）、ワードプロセッサ又は表計算等のアプリケーションソフトウェア５０、及びプリンタ２１を制御するプリンタドライバ５１等がインストールされて記憶されている。補助記憶装置５は、ＣＤ−ＲＯＭドライブ又はＤＶＤ−ＲＯＭドライブ等であり、ＣＤ−ＲＯＭ又はＤＶＤ−ＲＯＭにて提供されたソフトウェアをハードディスク７へインストールする場合に用いることができるようにしてある。
【００２８】
プリンタ２１は、演算及びプリンタ２１内の各部の制御等を行う制御部２２と、制御部２２にバス２８を介して接続された操作部２３、表示部２４、通信部２５、ＲＡＭ２６及び印刷部２７等とを備えている。操作部２３は、電源ボタン、排紙ボタン及び設定ボタン等の複数のボタンを有し、ユーザからの操作を受け付けて制御部２２へ通知するようにしてある。表示部２４は、液晶パネルを有し、プリンタ２１の動作状態、ユーザへの操作入力を促すメッセージ又はユーザへの警告メッセージ等を液晶パネルに表示するようにしてある。
【００２９】
また、通信部２５は、ＵＳＢケーブル、パラレルケーブル又はＬＡＮケーブル等が接続され、これらのケーブルを介してＰＣ１との間でデータの送受信を行うことができるようにしてある。ＲＡＭ２６は、制御部２２の演算及び制御等の処理に伴って発生する一時的な情報を記憶すると共に、ＰＣ１から与えられた印刷データを一時的に記憶することができ、ＳＲＡＭ又はＤＲＡＭ等のメモリ素子により構成されている。印刷部２７は、半導体レーザ又はＬＥＤ等の光源、トナーを付着させる感光体、及びトナーを熱又は圧力で印刷媒体へ転写して定着させる定着部等を有し、ＰＣ１から与えられる印刷データに応じた画像を印刷媒体に印刷するようにしてある。
【００３０】
図２は、本発明に係る印刷システムの印刷動作を説明するための模式図である。ユーザは、ＰＣ１のハードディスク７に記憶されたアプリケーションソフトウェア５０を用いて原稿データを作成し、作成した原稿データをプリンタ２１から印刷することができる。このとき、ユーザが作成した原稿データは、アプリケーションソフトウェア５０からプリンタドライバ５１へ頁順に順次与えられるようにしてある。プリンタドライバ５１は、与えられた原稿データを基に、プリンタ２１が印刷を行うためのデータ形式、所謂ＰＤＬ（Ｐａｇｅ  Ｄｅｓｃｒｉｐｔｉｏｎ  Ｌａｎｇｕａｇｅ）形式の印刷データを生成し、通信部８を介してプリンタ２１へ送信するようにしてある。プリンタ２１は、ＰＣ１から通信部２５を介して与えられた印刷データをＲＡＭ２６に一時的に蓄え、印刷部２７により印刷媒体への印刷を順次行うようにしてある。
【００３１】
また、アプリケーションソフトウェア５０は、ユーザが原稿データの印刷を行う場合に、ユーザから印刷部数の指示を受け付けることができると共に、複数部の印刷を部単位で行う部単位印刷の指示を受け付けることができるようにしてある。部単位印刷で複数部の原稿データの印刷を行う場合、アプリケーションソフトウェア５０は、１部の原稿データを頁順にプリンタドライバ５１へ与えることを指示されて印刷部数回繰り返し行うようにしてある。図２は、図７と同様に、原稿データが３頁分のデータを有しており、この原稿データを部単位印刷で３部印刷する場合を図示してある。
【００３２】
また、プリンタドライバ５１は、１つの印刷媒体に複数頁分の原稿データを印刷する集約印刷の指示をユーザから受け付けることができるようにしてある。これは、ユーザがプリンタドライバ５１の設定メニューを出力部４に表示させて、集約印刷の項目を選択すると共に、集約する頁数（集約数）を例えば２頁、４頁又は８頁のいずれかから選択することで行うようにしてある。集約印刷が指示された場合、プリンタドライバ５１は、アプリケーションソフトウェア５０から与えられた原稿データ及び指示された集約数を基に、１頁に原稿データの複数頁が集約された印刷データを生成してプリンタ２１へ与えるようにしてある。図２は、図７と同様に、１つの印刷媒体に４頁分を集約して印刷を行う設定とした場合であるが、本発明に係るプリンタドライバ５１は、図７に示す従来のプリンタドライバ１５１とは異なり、アプリケーションソフトウェア５０から与えられる複数部の原稿データの各部の区切り位置を認識して、各部を別の印刷媒体に印刷することができるように、各部毎に別の印刷データを生成するようにしてある。
【００３３】
図３乃至図６は、本発明に係る印刷システムのプリンタドライバ５１によりＰＣ１のＣＰＵ２が行う印刷処理の手順を示すフローチャートである。なお、本フローチャートに示す手順は、印刷を行う原稿データの各頁に頁番号を有するヘッダ・フッタが付されていることを想定した場合の手順であり、頁番号を有するヘッダ・フッタが付された原稿データに対して、図２に示すように各部の区切り位置を判別して集約印刷を行うようにしてある。
【００３４】
ヘッダ・フッタとは、原稿データを印刷する場合に、全頁に共通して印刷媒体の上部分（ヘッダ）又は下部分（フッタ）に印刷する文字又は図形等であり、アプリケーションソフトウェア５０に予め設定しておくことにより、頁番号、章番号、作者名又はロゴ等を各頁に印刷することができる。アプリケーションソフトウェア５０は、ヘッダ・フッタを付す設定とされた場合には、各頁にヘッダ・フッタを付した原稿データをプリンタドライバ５１へ与えるようにしてある。
【００３５】
アプリケーションソフトウェア５０がユーザからの印刷指示を受け付けた場合、プリンタドライバ５１が起動されてＣＰＵ２により実行される。このとき、ＣＰＵ２は、印刷の条件として集約印刷の設定が選択されているか否かを調べ（ステップＳ１）、集約印刷が選択されていない場合には（Ｓ１：ＮＯ）、通常の印刷処理を行う（ステップＳ２）。集約印刷が選択されている場合には（Ｓ１：ＹＥＳ）、設定された集約数を取得し（ステップＳ３）、集約カウンタを１に初期化し（ステップＳ４）、頁カウンタを１に初期化する（ステップＳ５）。なお、集約カウンタ及び頁カウンタは、印刷処理を行う際に用いられる整数型の変数であり、ＲＡＭ６上に確保される。
【００３６】
次いで、与えられた原稿データの１部の頁数が既知であるか否かを調べる（ステップＳ６）。原稿データの１部の頁数は図示の印刷処理の初期段階では不明であるが、後述の処理を行うことにより知ることができる。また、アプリケーションソフトウェア５０から取得することが可能である場合には、アプリケーションソフトウェア５０から取得してもよい。
【００３７】
原稿データの１部の頁数が既知でない場合（Ｓ６：ＮＯ）、アプリケーションソフトウェア５０から与えられる原稿データの１頁分のデータを受け付け（ステップＳ７）、受け付けた原稿データから特定領域のデータ、即ちヘッダ・フッタに対応する部分のデータを取得する（ステップＳ８）。このときの特定領域は、例えばＡ４サイズの原稿であるならば上下の３ｃｍ分の領域などのように予め定められた領域とするが、これに限らず、ユーザの指示により特定領域を決定してもよく、また、原稿データを解析してヘッダ・フッタ部分を特定してもよい。
【００３８】
次いで、現在処理を行っている原稿データが先頭頁のものであるか否かを調べ（ステップＳ２１）、先頭頁である場合は（Ｓ２１：ＹＥＳ）、取得した特定領域のデータを基準データとしてＲＡＭ６に記憶し（ステップＳ２２）、更に特定領域のデータをヘッダ・フッタ判定用データとしてＲＡＭ６に記憶し（ステップＳ２３）、ステップＳ５１へ進む。
【００３９】
現在処理を行っている原稿データが先頭頁でない場合（Ｓ２１：ＮＯ）、取得した特定領域のデータとＲＡＭ６に記憶されたヘッダ・フッタ判定用データとを比較して（ステップＳ２４）、一致する部分があるか否かを調べる（ステップＳ２５）。この比較は、現在処理を行っている頁の原稿データにヘッダ・フッタが含まれているか否かを調べるものであり、先頭頁の特定領域から取得したデータと同じデータパターンが存在するか否かによってヘッダ・フッタが含まれているか否かを判定するようにしてある。よって、比較の結果、一致する部分が存在しない場合（Ｓ２５：ＮＯ）、即ちヘッダ・フッタが含まれていない場合には、原稿データの部の区切り位置を正確に判断できない虞があるため、以下の処理を行わず、従来通りの印刷処理を行って（ステップＳ２６）、処理を終了する。
【００４０】
取得した特定領域のデータと記憶されたヘッダ・フッタ判定用データとを比較して一致する部分が存在する場合（Ｓ２５：ＹＥＳ）、即ちヘッダ・フッタが含まれている場合には、取得した特定領域のデータと記憶されたヘッダ・フッタ判定用データとの一致部分を抽出して（ステップＳ２７）、抽出した一致部分のデータをヘッダ・フッタ判定用データとしてＲＡＭ６に記憶する（ステップＳ２８）。このようにして、ヘッダ・フッタ判定用データを更新することにより、ＲＡＭ６に記憶するヘッダ・フッタ判定用データのデータサイズが小さくなり、ステップＳ２４にて行う比較を高速化することができる。
【００４１】
次いで、取得した特定領域のデータと記憶された基準データ（即ち、先頭頁の特定領域のデータ）とを比較して（ステップＳ２９）、データが一致するか否かを調べる（ステップＳ３０）。特定領域のデータ、即ちヘッダ・フッダのデータが一致する場合は、ヘッダ・フッダに含まれている頁番号及び章番号等が一致する場合であるので、現在処理を行っている頁の原稿データが先頭頁と同じデータであり、２部目以降の原稿データであると判断できる。即ち、この頁が部の区切り位置であると判断できる。
【００４２】
よって、取得した特定領域のデータと記憶された基準データとが一致した場合（Ｓ３０：ＹＥＳ）、頁カウンタの値から１を減算することによって原稿データの１部の頁数を算出して記憶し（ステップＳ３１）、生成する印刷データの頁を次頁に移す（ステップＳ３２）。印刷データの頁を次頁に移すことによって、現在処理を行っている頁の原稿データと、１つ前に処理を行った頁の原稿データとが別の印刷媒体に印刷される。次いで、集約カウンタを１に設定し（ステップＳ３３）、頁カウンタを１に設定して（ステップＳ３４）、ステップＳ５１へ進む。ステップＳ３０にて、取得した特定領域のデータと記憶された基準データとが一致しなかった場合（Ｓ３０：ＮＯ）、現在処理を行っている頁は部の区切り位置ではないため、上記のステップＳ３１〜Ｓ３４の処理は行わずに、ステップＳ５１へ進む。
【００４３】
ステップＳ５１では、印刷媒体に対応する印刷領域を集約数に応じて等分した領域に、予め定められた順に従って受け付けた１頁分の原稿データを割り当て、集約印刷のための印刷データの生成を行う（ステップＳ５１）。次いで、頁カウンタをインクリメントし（ステップＳ５２）、集約カウンタの値がステップＳ３にて取得した集約数に等しいか否かを調べる（ステップＳ５３）。集約カウンタの値が集約数に等しい場合（Ｓ５３：ＹＥＳ）、生成する印刷データの頁を次頁に移し（ステップＳ５４）、集約カウンタの値を１に設定する（ステップＳ５５）。また、集約カウンタの値が集約数に等しくない場合（Ｓ５３：ＮＯ）、集約カウンタをインクリメントする（ステップＳ５６）。
【００４４】
ステップＳ５５又はＳ５６にて、集約カウンタの値を変更した後、処理を行った頁が最終頁であったか否かを調べ（ステップＳ５７）、最終頁であった場合は（Ｓ５７：ＹＥＳ）、処理を終了し、最終頁でなかった場合は（Ｓ５７：ＮＯ）、ステップＳ６へ戻り、原稿データの１部の頁数が判明するまでステップＳ６〜Ｓ５７までの処理を繰り返して行う。ステップＳ３１にて原稿データの１部の頁数を記憶し、ステップＳ６にて１部の頁数が既知であった場合は（Ｓ６：ＹＥＳ）、ステップＳ７１へ進む。
【００４５】
ステップＳ７１では、アプリケーションソフトウェア５０から与えられる原稿データの１頁分のデータを受け付ける（ステップＳ７１）。次いで、印刷媒体に対応する印刷領域を集約数に応じて等分した領域に、予め定められた順に従って受け付けた１頁分の原稿データを割り当て、集約印刷のための印刷データの生成を行い（ステップＳ７２）、頁カウンタの値が原稿データの１部の頁数に等しいか否かを調べる（ステップＳ７３）。頁カウンタの値が１部の頁数に等しい場合（Ｓ７３：ＹＥＳ）、生成する印刷データの頁を次頁に移し（ステップＳ７４）、頁カウンタの値を１に設定し（ステップＳ７５）、集約カウンタの値を１に設定する（ステップＳ７６）。
【００４６】
ステップＳ７３にて、頁カウンタの値が原稿データの１部の頁数に等しくない場合（Ｓ７３：ＮＯ）、頁カウンタの値をインクリメントし（ステップＳ７７）、集約カウンタの値が集約数に等しいか否かを調べる（ステップＳ７８）。集約カウンタの値が集約数に等しい場合（Ｓ７８：ＹＥＳ）、生成する印刷データの頁を次頁に移し（ステップＳ７９）、集約カウンタの値を１に設定する（ステップＳ８０）。集約カウンタの値が集約数に等しくない場合（Ｓ７８：ＮＯ）、集約カウンタをインクリメントする（ステップＳ８１）。
【００４７】
ステップＳ７６、Ｓ８０又はＳ８１にて集約カウンタの値を変更した後、処理を行った頁が最終頁であったか否かを調べ（ステップＳ８２）、最終頁でない場合は（Ｓ８２：ＮＯ）、ステップＳ７１へ戻り、全頁の印刷データの処理が終了するまで、ステップＳ７１〜Ｓ８２の処理を繰り返し行う。処理を行った頁が最終頁であった場合（Ｓ８２：ＹＥＳ）、印刷処理を終了する。
【００４８】
以上の手順により、集約印刷及び部単位印刷を併用して複数部の原稿データの印刷を行う場合に、原稿データに頁番号を有するヘッダ・フッタが付されていれば、各部の原稿データを確実に別の印刷媒体に印刷することができる。また、フッダ・ヘッダ部分の比較により先頭頁に一致する頁を判別する、即ち部の区切り位置を判別する構成であるため、ＣＰＵ２への負荷が少なく、高速に処理を行うことができる。ただし、頁番号を有するヘッダ・フッタが原稿データに付されていない場合には、原稿データの各頁の一部又は全てのデータを比較して、先頭頁に一致する頁を判別する構成としてもよい。また、上述の手順では、部の区切り位置を判別した後に、１部の頁数を算出し、以降の原稿データについては算出した１部の頁数に応じて印刷データの生成を行うため、１部の頁数を算出した後は特定領域のデータの比較を行わなくてよいため、高速に処理を行うことができる。ただし、全頁の原稿データに対して特定領域のデータの比較を行い、先頭頁に一致する頁を判別する毎に印刷データの頁を次頁に移す構成としてもよい。
【００４９】
なお、本実施の形態においては、特定の領域としてヘッダ・フッタの両方の領域を用いる構成としたが、これに限らず、いずれか一方の領域のみを用いてもよい。また、ＰＣ１が印刷データ生成装置をなし、ＰＣ１のハードディスク７に記録されたプリンタドライバ５１によりＣＰＵ２が上述の印刷処理を行う構成としたが、これに限るものではなく、プリンタ２１の制御部２２が同様の処理を行う構成とすることもでき、この場合には、プリンタ２１が印刷データ生成装置をなす。
【図面の簡単な説明】
【００５０】
【図１】本発明に係る印刷システムの構成を示すブロック図である。
【図２】本発明に係る印刷システムの印刷動作を説明するための模式図である。
【図３】本発明に係る印刷システムのプリンタドライバによりＰＣのＣＰＵが行う印刷処理の手順を示すフローチャートである。
【図４】本発明に係る印刷システムのプリンタドライバによりＰＣのＣＰＵが行う印刷処理の手順を示すフローチャートである。
【図５】本発明に係る印刷システムのプリンタドライバによりＰＣのＣＰＵが行う印刷処理の手順を示すフローチャートである。
【図６】本発明に係る印刷システムのプリンタドライバによりＰＣのＣＰＵが行う印刷処理の手順を示すフローチャートである。
【図７】集約印刷の問題点を説明するための模式図である。
【符号の説明】
【００５１】
１  ＰＣ（印刷データ生成装置）
２  ＣＰＵ
３  入力部
４  出力部
５  補助記憶装置
６  ＲＡＭ
７  ハードディスク
８  通信部
２１  プリンタ
２２  制御部
２３  操作部
２４  表示部
２５  通信部
２６  ＲＡＭ
２７  印刷部
５０  アプリケーションソフトウェア
５１  プリンタドライバ
【図１】
0004715563.tif 000002
【図２】
0004715563.tif 000003
【図３】
0004715563.tif 000004
【図４】
0004715563.tif 000005
【図５】
0004715563.tif 000006
【図６】
0004715563.tif 000007
【図７】
0004715563.tif 000008