JP7490935B2 - サポートプログラム、情報処理装置、および印刷方法 - Google Patents

サポートプログラム、情報処理装置、および印刷方法 Download PDF

Info

Publication number
JP7490935B2
JP7490935B2 JP2019179039A JP2019179039A JP7490935B2 JP 7490935 B2 JP7490935 B2 JP 7490935B2 JP 2019179039 A JP2019179039 A JP 2019179039A JP 2019179039 A JP2019179039 A JP 2019179039A JP 7490935 B2 JP7490935 B2 JP 7490935B2
Authority
JP
Japan
Prior art keywords
program
printing
print
printer
print data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2019179039A
Other languages
English (en)
Other versions
JP2021056754A (ja
Inventor
亮太 垣鍔
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Brother Industries Ltd
Original Assignee
Brother Industries Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Brother Industries Ltd filed Critical Brother Industries Ltd
Priority to JP2019179039A priority Critical patent/JP7490935B2/ja
Priority to PCT/JP2020/025800 priority patent/WO2021065124A1/ja
Priority to US17/212,407 priority patent/US11733937B2/en
Publication of JP2021056754A publication Critical patent/JP2021056754A/ja
Application granted granted Critical
Publication of JP7490935B2 publication Critical patent/JP7490935B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1202Dedicated interfaces to print systems specifically adapted to achieve a particular effect
    • G06F3/1203Improving or facilitating administration, e.g. print management
    • G06F3/1206Improving or facilitating administration, e.g. print management resulting in increased flexibility in input data format or job format or job type
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K15/00Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers
    • G06K15/02Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers using printers
    • G06K15/18Conditioning data for presenting it to the physical printing elements
    • G06K15/1867Post-processing of the composed and rasterized print image
    • G06K15/1868Post-processing of the composed and rasterized print image for fitting to an output condition, e.g. paper colour or format
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1237Print job management
    • G06F3/1242Image or content composition onto a page
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K15/00Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers
    • G06K15/02Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers using printers
    • G06K15/18Conditioning data for presenting it to the physical printing elements
    • G06K15/1835Transforming generic data
    • G06K15/1836Rasterization

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Record Information Processing For Printing (AREA)
  • Accessory Devices And Overall Control Thereof (AREA)

Description

本明細書に開示される技術分野は、プリンタの制御をサポートするサポートプログラム、情報処理装置、および印刷方法に関する。
パーソナルコンピュータ等の情報処理装置からプリンタを制御する技術として、例えば特許文献1に開示されているように、プリンタドライバによって、用紙の両面に各2ページ分の印刷を行い、印刷後の用紙を複数枚重ね合わせて2つ折りすることにより小冊子を形成できるブックレット印刷が設定されたジョブを、プリンタに入力する構成が広く知られている。
特開2011-95912号公報
近年、前述したプリンタドライバを利用せず、オペレーティングシステム(OS)に標準に組み込まれている印刷プログラムによってプリンタを制御する技術が実用化されている。この技術では、OSがプリンタとOS標準の印刷プログラムとの関連付けを行い、以後、そのプリンタに対する印刷指示を受け付けた場合に、プリンタドライバを用いずに、OS標準の印刷プログラムによる印刷が可能になる。
しかしながら、OS標準の汎用印刷プログラムによる印刷では、印刷パラメータの選択の際、選択可能な設定項目がOS標準の印刷プログラムに登録されている一般的なものになる。そのため、ブックレット印刷がサポートされない可能性があり、ユーザに不便を強いる。
本明細書は、OS標準の印刷プログラムが組み込まれた情報処理装置において、ブックレット印刷をプリンタに行わせる技術を開示する。
上述した課題の解決を目的としてなされたサポートプログラムは、情報処理装置のコンピュータによって実行可能であり、前記情報処理装置と接続するプリンタに対応するサポートプログラムであって、前記コンピュータに、前記情報処理装置に組み込まれているアプリケーションプログラムから出力された印刷指示であって、前記情報処理装置のオペレーティングシステムにあらかじめ組み込まれた汎用印刷プログラムに対して、画像の印刷を前記プリンタに行わせる前記印刷指示があり、前記印刷指示に基づくジョブにおいて、用紙の両面に各2ページ分の印刷を行い、印刷後の前記用紙を複数枚重ね合わせて2つ折りすることにより小冊子を形成できるブックレット印刷を前記プリンタに実行させる場合、前記汎用印刷プログラムから複数ページある前記画像に対応する印刷用データを受け取り、受け取った前記印刷用データに基づき、前記ブックレット印刷における1冊分のページ数に合わせて前記画像の並び順を決定する決定処理と、前記決定処理にて決定した並び順に基づき、対象となる2ページ分の画像を各用紙の1面に収まるように配置された合成画像についてラスタライズされた合成印刷データを、前記プリンタを送信先として前記情報処理装置から送信されるように、制御する合成画像出力制御処理と、を実行させる、ことを特徴とする。
上記構成のサポートプログラムは、汎用印刷プログラム(OS)に印刷指示があり、その印刷指示に基づくジョブにおいてブックレット印刷をプリンタに実行させる場合に、サポートプログラムによって、複数ページある画像の並び順をブックレット印刷における1冊分のページ数に合わせて並べ替える。そして、サポートプログラムは、プリンタのシートの搬送態様に合わせた印刷順序となる合成画像の合成印刷データが出力されるように情報処理装置を制御する。これにより、サポートプログラムは、汎用印刷プログラムがブックレット印刷をサポートしていない場合であっても、ブックレット印刷をサポートできる。
上記サポートプログラムの機能を実現するための制御方法、および、当該サポートプログラムを格納するコンピュータにて読取可能な記憶媒体も、新規で有用である。
本明細書に開示される技術によれば、OS標準の印刷プログラムが組み込まれた情報処理装置において、ブックレット印刷をプリンタに行わせることができる。
PCの電気的構成を示すブロック図である。 補助DBの構成の一例を示す図である。 第1の形態の動作の順序の例を説明するシーケンス図である。 第1の形態の動作の順序の例を説明するシーケンス図である。 第1の形態の動作の順序の例を説明するシーケンス図である。 ブックレット印刷を説明する図である。 データの取り扱いを説明する図である。 第1の形態の動作の順序の別例を説明するシーケンス図である。 第2の形態の動作の順序の例を説明するシーケンス図である。 第2の形態の動作の順序の例を説明するシーケンス図である。
以下、第1の形態のプログラムを利用するパーソナルコンピュータ(以下、「PC」とする)について、添付図面を参照しつつ詳細に説明する。本形態は、印刷機能を有するプリンタに接続されるPCにて実行されるプログラムを具体化した実施の形態を開示するものである。
本形態のPC1は、例えば、図1に示すように、コントローラ10と、ユーザインタフェース(以下、「UI」とする)20と、通信インタフェース(以下、「通信IF」とする)30と、を備えている。UI20及び通信IF30は、コントローラ10に電気的に接続されている。PC1は、情報処理装置の一例である。プリンタ2は、印刷機能を有する装置であり、ローカル通信またはネットワーク通信を介してPC1と接続されている。プリンタ2は、小冊子を自動的に作成できる後処理装置が組み込まれていてもよい。
UI20は、各種の表示を行い、ユーザの指示入力を受け付けるハードウェアを含む。UI20は、表示機能と入力受付機能との両方の機能を有するタッチパネルであっても良いし、表示機能を有するディスプレイと入力受付機能を有するキーボードやマウス等との組合せであっても良い。
通信IF30は、プリンタ2などの外部装置との通信を行うためのハードウェアや、インターネットへのアクセスを行うためのハードウェアを含む。通信IF30は、通信方式の異なる複数のインタフェースを含んでいても良い。通信方式としては、例えば、ネットワーク通信、USB通信がある。また、有線通信であっても無線通信であってもよい。
コントローラ10は、CPU11と、メモリ12と、を含む。CPU11は、コンピュータの一例である。メモリ12は、ROMと、RAMと、不揮発性メモリと、を含み、各種のアプリケーションプログラム(以下、「アプリ」とする)などのプログラムや各種のデータなどを記憶する。CPU11は、メモリ12から読み出したプログラムに従って、また、ユーザの指示に基づいて、各種の処理を実行する。なお、図1中のコントローラ10は、PC1の制御に利用されるハードウェアやソフトウェアを纏めた総称であって、実際にPC1に存在する単一のハードウェアを表すとは限らない。
メモリ12の一例は、コンピュータが読み取り可能なストレージ媒体であってもよい。コンピュータが読み取り可能なストレージ媒体とは、non-transitoryな媒体である。non-transitoryな媒体には、上記の例の他に、CD-ROM、DVD-ROM等の記録媒体も含まれる。また、non-transitoryな媒体は、tangibleな媒体でもある。一方、インターネット上のサーバなどからダウンロードされるプログラムを搬送する電気信号は、コンピュータが読み取り可能な媒体の一種であるコンピュータが読み取り可能な信号媒体であるが、non-transitoryなコンピュータが読み取り可能なストレージ媒体には含まれない。
メモリ12には、例えば、図1に示すように、汎用印刷プログラム41を含むOS21と、補助プログラム42と、編集アプリ43と、が記憶されている。補助プログラム42は、サポートプログラムの一例である。編集アプリ43は、アプリケーションプログラムの一例である。OS21は、例えば、マイクロソフト ウィンドウズ(登録商標)、MacOS(登録商標)、Linux(登録商標)である。なお、メモリ12には、図示したもの以外にも、接続されているプリンタ2の情報を含む各種のデータや、ブラウザ等の各種のプログラムが記憶されている。
汎用印刷プログラム41は、PC1からの指示によってプリンタ2等の各種のプリンタで印刷を実行させるためのOS標準のプログラムである。本形態の汎用印刷プログラム41は、印刷対象の画像データに基づいて、対応するプリンタが印刷に用いる印刷データを生成する機能を含むプログラムである。
汎用印刷プログラム41は、各種のプリンタのベンダによって提供される複数種類のモデルのプリンタが共通に利用できる機能をサポートしている。汎用印刷プログラム41は、各種プリンタが固有に備える機能の全てに対応するのは困難であり、サポートする機能は汎用的なものに限られる。
補助プログラム42は、汎用印刷プログラム41の起動に付随してOS21からの指示に基づいて処理を実行するプログラム又はプログラム群であり、対象のハードウェアの制御をサポートするアプリである。本形態の補助プログラム42は、PC1に接続されているプリンタ2のモデルに対応するものであり、例えば、汎用印刷プログラム41を使用してプリンタ2に印刷を実行させる指示を受け付けた場合に、汎用印刷プログラム41から起動される。補助プログラム42は、例えば、ハードウェアサポートアプリ(略称、HSA)と呼ばれる。
補助プログラム42は、汎用印刷プログラム41から複数種の命令を受け付け、受け付けた命令に基づいて、各種の処理を実行する。補助プログラム42は、汎用印刷プログラム41からの実行命令の内容に応じて異なる処理を実行できる。なお、補助プログラム42は、それぞれが実行命令を受け付ける複数のプログラムの組み合わせであってもよいし、1つのプログラムであって命令に応じてそれぞれ異なる処理を実行できるプログラムであっても良い。
なお、補助プログラムは、プリンタのベンダによってプリンタのタイプごとに用意されるプログラムであってよい。例えば、インクジェットプリンタ用の補助プログラムやレーザプリンタ用の補助プログラムが用意される。プリンタのベンダは、OS21のベンダが指定する手順に従って、補助プログラムをOS21のベンダが提供するプラットフォームに登録する。OS21は、PC1に新たにプリンタが接続され、そのプリンタに対応する補助プログラムがプラットフォームに登録されている場合には、当該補助プログラムを格納されているサーバからダウンロードしてPC1に組み込む。そして、OS21は、組み込んだ補助プログラムの識別情報を新たに接続されたプリンタのプリンタ情報に対応付けて、メモリ12に記憶させる。プリンタのタイプごとに限らず、プリンタのモデルごとやプリンタのモデルのシリーズごとに用意される補助プログラムが有っても良い。
OS21には、補助プログラム42に付随して、メモリ12に準備されている補助プログラム42用の記憶領域に補助データベース(以下、「補助DB」とする)44が組み込まれている。補助DB44は、データベースの一例である。補助DB44の構成の一例を、図2を参照して説明する。補助DB44は、補助プログラム42が対応可能な全てのモデルについて、モデル名と、搬送方式と、並べ替え要否情報とを関連付けて記憶するデータベースである。
モデル名は、プリンタのモデルを示す。モデル名は、モデル情報の一例である。搬送方式は、プリンタの搬送機構が用紙を搬送する方法を示す。搬送方式には、例えば、1枚搬送方式、2枚同時搬送方式、インターリーブ方式が記憶される。これらの搬送方式については後述する。なお、搬送方式は、搬送態様の一例である。並べ替え要否情報は、画像の並び順の変更の要否を示す情報である。並べ替え要否情報は、例えば、メモリ容量が少なく、プリンタ自身で画像の並べ替えを行えないプリンタのモデルに対しては、画像の並び順の変更が必要であることを示す「要」がモデル名に関連付けて記憶される。一方、並べ替え要否情報は、例えば、メモリの容量が多く、プリンタ自身で画像の並べ替えを行うことができるモデルに対しては、画像の並び順の変更が必要でないことを示す「不要」が、モデル名に関連付けて記憶される。
図1に戻り、編集アプリ43は、例えば、画像データや文書データの作成や編集を行うためのアプリである。編集アプリ43は、例えば、マイクロソフト ワード、パワーポイントである。編集アプリ43は、プリンタ2等のベンダから提供されるアプリであってもよい。編集アプリ43は、プリンタ2に所定の動作を行わせる指示を含むユーザ操作を受け付ける。具体的には、編集アプリ43は、UI20を介して、例えば、プリンタ2に印刷を実行させる印刷指示を受け付ける。
なお、実施の形態における処理およびフローチャートの各処理ステップは、基本的に、補助プログラム42などのプログラムに記述された命令に従ったCPU11の処理を示す。すなわち、以下の説明における「判断」、「抽出」、「選択」、「算出」、「決定」、「特定」、「取得」、「受付」、「制御」等の処理は、CPU11の処理を表している。CPU11による処理は、OS21のAPIを用いたハードウェア制御も含む。本明細書では、OS21の詳細な記載を省略して各プログラムの動作を説明する。すなわち、以下の説明において、「プログラムBがハードウェアCを制御する」という趣旨の記載は、「プログラムBがOS21のAPIを用いてハードウェアCを制御する」ことを指してもよい。また、プログラムに記述された命令に従ったCPU11の処理を、省略した文言で記載することがある。例えば、「CPU11が行う」のようにプログラムを省略して記載することがある。また、プログラムに記述された命令に従ったCPU11の処理を、「プログラムAが行う」のようにCPUを省略した文言で記載することがある。
なお、「取得」は要求を必須とはしない概念で用いる。すなわち、CPU11が要求することなくデータを受信するという処理も、「CPU11がデータを取得する」という概念に含まれる。また、本明細書中の「データ」とは、コンピュータに読取可能なビット列で表される。そして、実質的な意味内容が同じでフォーマットが異なるデータは、同一のデータとして扱われるものとする。本明細書中の「情報」についても同様である。また、「要求する」、「指示する」とは、要求していることを示す情報や、指示していることを示す情報を相手に出力することを示す概念である。また、要求していることを示す情報や指示していることを示す情報のことを、単に、「要求」、「指示」とも記載する。
また、CPU11による、情報Aは事柄Bであることを示しているか否かを判断する処理を、「情報Aから、事柄Bであるか否かを判断する」のように概念的に記載することがある。CPU11による、情報Aが事柄Bであることを示しているか、事柄Cであることを示しているか、を判断する処理を、「情報Aから、事柄Bであるか事柄Cであるかを判断する」のように概念的に記載することがある。
続いて、ブックレット印刷について説明する。ブックレット印刷は、用紙の両面に各2ページ分の印刷を行い、印刷後の用紙を複数枚重ね合わせて2つ折りすることにより小冊子を形成できる印刷態様である。つまり、ブックレット印刷は、2in1印刷の機能と両面印刷の機能を組み合わせて実現される印刷態様である。
この2in1印刷は、1枚の用紙の1面に画像データの2ページ分の画像を並べたものを印刷する集約印刷である。用紙のサイズに応じて1枚の用紙の1面に画像データの2ページ分の画像を縮小して並べて印刷する。
両面印刷は、用紙の表面と裏面との2面に印刷する印刷態様である。プリンタ2は、自動で両面印刷を行う場合、給紙トレイから引き出した用紙を印刷経路に沿って搬送し、印刷部により用紙の裏面(給紙トレイに収納されていたときの下面)に画像を印刷する。プリンタは、裏面に印刷済みの用紙が排紙トレイに排紙される前に、用紙の搬送方向を反転し、用紙の表面に画像を印刷する。排紙トレイに排出された用紙は、搬送方向が反転されることにより、用紙の上下を反転させた状態で両面印刷されるので、表面に印刷される画像が裏面に印刷される画像に対して180°反転した状態になる。
続いて、上述した1枚搬送方式、2枚同時搬送方式、インターリーブ方式について説明する。1枚搬送方式は、1枚目の用紙の両面への印刷後に、次の用紙への印刷を開始する印刷手順にて用いられる搬送方式である。1枚搬送方式では、プリンタは、1枚目の用紙の両面への印刷が完了した後、次の用紙を給紙する。つまり、1枚搬送方式では、プリンタは、1枚の用紙を搬送している間に、他の用紙を印刷経路にて搬送しない。また、プリンタは、用紙の裏面から先に印刷し、表面を印刷する。よって、1枚搬送方式を採用するプリンタは、1枚目の用紙の裏面→1枚目の表面→2枚目の裏面→2枚目の表面の順で両面印刷を実行する。
2枚同時搬送方式は、用紙の一方の面(裏面)への印刷後であって他方の面(表面)への印刷開始前に、次の用紙への印刷を開始する印刷手順にて用いられる搬送方式である。2枚同時搬送方式による両面印刷では、プリンタは、1枚目の用紙を印刷経路に搬送して、用紙の裏面を印刷する。そして、プリンタは、1枚目の用紙の搬送方向を反転し、1枚目の用紙の表面を印刷する前に、2枚目の用紙の裏面を印刷する。それから、プリンタは、1枚目の用紙の表面を印刷し、1枚目の用紙を排紙トレイに排紙する。その後、プリンタは、2枚目の用紙の表面を印刷し、1枚目と同様にして2枚目の用紙を排紙トレイに排紙する。よって2枚同時搬送方式では、印刷が終了していない用紙が2枚同時に搬送されるタイミングがある。
2枚同時搬送方式では、プリンタは、1枚目の用紙と2枚目の用紙との両方への両面印刷が終了した後、次の3枚目の用紙への印刷を行う。具体的には、プリンタは、2枚同時搬送方式での搬送によって両面印刷を行う場合、1枚目の裏面→2枚目の裏面→1枚目の表面→2枚目の表面→3枚目の裏面の順で、印刷を実行する。
なお、インターリーブ方式は、搬送方向を反転させて2枚目の用紙を搬送する間に、1枚目の用紙と3枚目の用紙とを印刷経路にて搬送する点を除き、2枚同時搬送方式と同様に用紙を搬送する。インターリーブ方式での搬送によって両面印刷を行う場合、プリンタは、例えば、1枚目の裏面→2枚目の裏面→1枚目の表面→3枚目の裏面→2枚目の表面→4枚目の裏面→3枚目の表面の順で、印刷を実行する。
次に、本形態の補助プログラム42の動作を含む印刷手順の一例について、図3~図7を参照して説明する。本形態のPC1は、補助プログラム42を使用することで、プリンタ2にブックレット印刷を実現させることができる。本形態の汎用印刷プログラム41は、ブックレット印刷に対応していなくても良い。
まず図3に示すように、編集アプリ43は、UI20を介して、印刷対象の画像の指定と、印刷実行の指示入力を受け付ける(矢印A)。印刷対象の画像は、複数ページある画像である。編集アプリ43は、例えば、編集アプリ43にて編集された文書や編集アプリ43にて読み込んだ写真などを、印刷対象の画像とする指示を受け付ける。そして、印刷指示を受け付けた編集アプリ43は、受け付けた印刷指示の内容を示す印刷実行通知をOS21に渡す。なお、図3では、OS21の動作を省略して示している。
OS21は、汎用印刷プログラム41を使用する印刷実行通知を受け付けた場合、汎用印刷プログラム41を実行させ、汎用印刷プログラム41に印刷実行通知を渡す(矢印B)。汎用印刷プログラム41は、印刷実行通知にて、印刷指示に含まれる各種の情報、例えば、印刷させるプリンタを示す情報、編集アプリ43にて設定された印刷設定を示す情報、印刷対象となる画像データを示す情報を、取得できる。
汎用印刷プログラム41は、印刷実行通知に含まれる情報に基づいて、印刷を実行させる装置として指定されているプリンタを特定する。指定されているプリンタがプリンタ2であれば、プリンタ2に対応する補助プログラム42がメモリ12に記憶されていることから、汎用印刷プログラム41は、補助プログラム42の処理の実行命令を出力し、補助プログラム42を動作させる(矢印C)。すなわち、汎用印刷プログラム41が印刷実行通知を検知したことを契機に、補助プログラム42への実行命令が汎用印刷プログラム41から出力される。
補助プログラム42は、汎用印刷プログラム41からの実行命令の内容に基づいて各種の処理を実行する。矢印Cの実行命令では、汎用印刷プログラム41は、編集アプリ43にて受け付けた印刷設定を補助プログラム42に渡し、印刷設定の検証を要求する。
補助プログラム42は、矢印Cの実行命令に基づいて、印刷設定の検証を行う(矢印D)。補助プログラム42は、受け付けた印刷設定がプリンタ2の機能に適合しているか否かを判断し、例えば、プリンタ2にセットされていないサイズの用紙が選択されているなど適合していない印刷設定が含まれている場合、その印刷設定を無効にする。
本形態の補助プログラム42は、矢印Dでの処理の実行中に印刷設定の変更や追加での設定を受け付けることができる。以下では、矢印Dにて補助プログラム42がブックレット印刷の設定を受け付けた場合について説明する。つまり、矢印Cにて渡される印刷設定には、ブックレット印刷の設定が含まれておらず、矢印Dの処理の終了時における印刷設定には、ブックレット印刷の設定が含まれる。
なお、編集アプリ43にてブックレット印刷の設定を受け付けることができる場合には、矢印Cの処理にて補助プログラム42に渡される印刷設定にブックレット印刷の設定が含まれていても良い。例えば、汎用印刷プログラム41がブックレット印刷に対応している場合には、矢印Cにてブックレット印刷の設定を含む印刷設定が補助プログラム42に渡されてもよい。あるいは、汎用印刷プログラム41がブックレット印刷に対応していない場合であっても、例えば、編集アプリ43と補助プログラム42とで共通して使用できる記憶領域を介して、編集アプリ43から補助プログラム42へブックレット印刷の設定が渡されてもよい。
例えば、補助プログラム42は、UI20を用いて、プリンタ2の機能に応じた印刷設定画面を表示する。補助プログラム42は、この印刷設定画面を介して、ブックレット印刷に関する設定を受け付ける。例えば、印刷設定画面には、基本設定項目として、用紙種類、用紙サイズ、印刷の向き、両面印刷の選択、ブックレット印刷の選択などが含まれる。
ブックレット印刷が選択されると、補助プログラム42は、さらに、綴じ方を設定する項目と、綴じ代を設定する項目と、分冊に関する設定項目を、UI20を用いて表示する。プリンタ2に後処理装置が組み込まれている場合、当該装置を使用して小冊子を作成するか否かの設定を、UI20に表示してもよい。
分冊に関する設定項目は、分冊せずに用紙をすべて重ねて小冊子にするか、分冊して小冊子にするかを選択する項目を含む。また、分冊に関する設定項目では、1冊分のページ数を設定することができる。なお、プリンタ2が、1冊の枚数が均等になるように自動で分冊する機能を有する場合、自動分冊するか否かを、分冊に関する設定項目で設定できるようにしてもよい。補助プログラム42は、UI20を用いて、ブックレット印刷に関する各種設定が入力された状態でOKボタンが操作されると、ブックレット印刷に関する設定を受け付ける。
図3に示すように、補助プログラム42は、印刷設定の検証を終了したら、終了通知を汎用印刷プログラム41に渡す(矢印E)。終了通知には、ブックレット印刷の設定を含む編集済み印刷設定が付されている。終了通知を受け取った汎用印刷プログラム41は、印刷実行通知に含まれる画像データの形式を中間データの形式に変換することで中間データを生成し、中間データを含む印刷ジョブを生成する(矢印F)。編集アプリ43に含まれる画像データは種々のタイプのものであり、汎用印刷プログラム41は、受け取った画像データを、印刷データの生成に適した中間データに変換する。なお、印刷実行通知に含まれる画像データが印刷データの生成に適したデータであれば、中間データの生成を省略し、そのまま中間データとしても良い。中間データは、例えば、XPSデータである。なお、例えば図7(a)に示すように、矢印Fの処理で生成された中間データのページ順は、印刷実行指示に付された画像データのページ順と同じである。
汎用印刷プログラム41は中間データの編集を実行させる実行命令を補助プログラム42に渡す(矢印G)。実行命令には、編集済み印刷設定と、矢印Fの処理にて生成された中間データが付されている。矢印Gの処理にて補助プログラム42が受け取る中間データは、印刷用データ、印刷用中間データの一例である。
図4に示すように、補助プログラム42は、汎用印刷プログラム41から複数ページある画像に対する中間画像データを受け取ると、モデル名を取得する(矢印H)。例えば、補助プログラム42は、プリンタ2のモデル名をOS21に問い合わせ、OS21からプリンタ2のモデル名を取得する。モデル名はプリンタ2に直接問い合わせて取得してもよい。なお、モデル名は、後述する矢印Kや矢印bに示す並び順を変更する処理の直前に、取得してもよい。
補助プログラム42は、モデル名を取得したら、モデル名に基づいて並び順を変更する必要があるかを判断する(矢印I)。例えば図2に示すように、取得したモデル名が「M1」又は「M2」である場合、並べ替え要否情報には「要」が記憶されている。この場合、補助プログラム42は、並び順を変更する必要があると判断し、図4に示す矢印J~矢印S、或いは、図5に示す矢印a~矢印oの処理を実行する。一方、例えば図2に示したように、取得したモデル名が「M3」である場合、並べ替え要否情報には「不要」が記憶されている。この場合、補助プログラム42は、並び順を変更する必要がないと判断し、図5に示す矢印t~矢印vの処理を実行する。
すなわち、補助プログラム42は、図4の矢印Iの処理にて、並び順を変更する必要があると判断した場合、分冊するか否かを判断する(矢印J)。補助プログラム42は、図3の矢印Dの処理において、分冊せずに用紙を全て重ねて小冊子にする設定を受け付けた場合、分冊しないと判断する。一方、補助プログラム42は、矢印Dの処理にて、分冊して小冊子にする設定を受け付けた場合、分冊すると判断する。
補助プログラム42は、矢印Jの処理にて分冊すると判断した場合、矢印Gの処理にて汎用印刷プログラム41から受け取った中間データに基づき、ページ数に合わせて画像の並び順を決定する(矢印K)。中間データは、複数ページある画像に対応したデータであり、補助プログラム42は、中間データの全ページについて並び順を決定する。
補助プログラム42は、並び順を決定したページの画像をそれぞれ縮小した中間データを生成し(矢印L)、縮小した画像を2in1印刷に適した位置に配置することにより合成画像を形成する(矢印M)。つまり、補助プログラム42は、矢印Kの処理で決定した並び順に基づき、対象となる2ページ分の画像を各用紙の1面に収まるように配置した合成画像を生成する。縮小と配置は逆順でもよい。また、画像の縮小は、用紙サイズの設定によって対応できるため、補助プログラム42によって行わず、汎用印刷プログラム41によって行ってもよい。
図6(a)に示す8ページ分の原稿51について、図6(c)(d)に示すように左綴じの小冊子71を形成する場合を例にして、矢印K~矢印Mの処理を説明する。この場合、図3に示す矢印Dの処理では、綴じ方として、印刷方向「縦」、綴じ方向「左綴じ」が設定される。
図7(a)に示すように、補助プログラム42は、1ページから8ページまでの画像が順番に並んだ中間データを、汎用印刷プログラム41から受け取る。原稿51をブックレット印刷する場合、図6(b)に示すように、1枚目の用紙61Aは、片面に1ページと8ページが印刷され、反対の面に2ページと7ページが印刷される。また、2枚目の用紙61Bは、片面に3ページと6ページが印刷され、反対の面に4ページと5ページが印刷される。そこで、補助プログラム42は、図7(b)に示すように、汎用印刷プログラム41から受け取った中間データのページ順を、8ページ→1ページ→2ページ→7ページ→6ページ→3ページ→4ページ→5ページに並べ替える。
そして、補助プログラム42は、図7(c)に示すように、用紙の長手方向の半分の領域に1ページ分の画像が収まるように、各ページの画像を縮小する。そして、補助プログラム42は、図7(d)に示すように、縮小済みの画像をそれぞれ90°回転させる。さらに、補助プログラム42は、図7(e)に示すように、90°回転させた画像を1面内の2箇所にそれぞれ並べて合成する。これにより、各面に印刷される合成画像の中間データが生成される。
なお、例えば、画像を90°回転させる処理は、必要に応じて行えば良い。例えば、原稿51をブックレット印刷する場合に、綴じ方が、印刷方向「横」、綴じ方向「左綴じ」に設定されている場合、画像を縮小した後、縮小済みの画像を回転させずに、2ページ分の画像を1面内の2箇所に配置すればよい。
その後、図4に示すように、補助プログラム42は、必要に応じて裏面に印刷する合成画像を180°回転し(矢印N)、合成画像の処理順を並べ替える(矢印O)。すなわち、補助プログラム42は、補助DB44を参照し、矢印Hの処理で取得したモデル名に基づいて搬送方式を特定し、特定した搬送方式と用紙のサイズ(タテ向き、ヨコ向きの区別を含む)に従って、用紙の各面に形成する合成画像の処理順を並べ替える。
例えば、補助プログラム42は、矢印Hの処理で取得したモデル名が「M1」である場合、図2に示す補助DB44から、モデル名「M1」に関連付けられた「1枚搬送方式」を抽出する。上述したように、1枚搬送方式のプリンタは、1枚目の裏面→1枚目の表面→2枚目の裏面→2枚目の表面…の順に印刷を行う。そして、用紙がタテ向きである場合、補助プログラム42は、図7(f)に示すように、1枚目の用紙の裏面に形成する2ページと7ページの合成画像を、1枚目の用紙の表面に形成する8ページと1ページの合成画像の前に並べ替え、2枚目の用紙の裏面に形成する4ページと5ページの合成画像を、2枚目の用紙の表面に形成する6ページと3ページの合成画像の前に並べ替える。
なお、特定された搬送方式が「2枚同時搬送方式」である場合、2枚同時搬送方式のプリンタは、1枚目の裏面→2枚目の裏面→1枚目の表面→2枚目の表面…の順に印刷を行う。そして、用紙がタテ向きである場合、補助プログラム42は、図7(g)に示すように、1枚目の用紙の裏面に形成する2ページと7ページの合成画像→2枚目の裏面に形成する4ページと5ページの合成画像→1枚目の用紙の表面に形成する8ページと1ページの合成画像→2枚目の用紙の表面に形成する6ページと3ページの合成画像の順に並べ替える。
更なる例として、補助プログラム42は、矢印Hの処理で取得したモデル名が「M1」である場合、図2に示す補助DB44から、モデル名「M1」に関連付けられた「1枚搬送方式」を抽出する。1枚搬送方式のプリンタは、1枚目の裏面、1枚目の表面、2枚目の裏面、2枚目の表面…の順に印刷を行う。そして、用紙がヨコ向きである場合、補助プログラム42は、図7(h)に示すように、1枚目の用紙の裏面に形成する2ページと7ページの合成画像を、1枚目の用紙の表面に形成する180°回転した8ページと1ページの合成画像の前に並べ替え、2枚目の用紙の裏面に形成する4ページと5ページの合成画像を、2枚目の用紙の表面に形成する180°回転した6ページと3ページの合成画像の前に並べ替える。
図4に示す矢印Oの処理後、補助プログラム42は、編集済み印刷設定と、合成画像を含む編集済み中間データを付した終了通知を出力する(矢印P)。編集済み中間データは、合成中間データの一例である。終了通知を受け付けた汎用印刷プログラム41は、編集済み中間データをラスタライズして印刷データを生成する(矢印Q)。印刷データは、矢印I~矢印Oの処理によって、対象となる2ページ分の画像を各用紙の1面に収まるように配置された合成画像についてラスタライズされたデータである。汎用印刷プログラム41によって生成される印刷データは、各種のプリンタにて印刷に使用できる形式の印刷データである。印刷データは、例えば、PWGRasterデータまたはPDFデータである。
汎用印刷プログラム41は、生成した印刷データを付した印刷命令をプリンタ2に出力する(矢印R)。この出力される印刷データは合成印刷データの一例である。
矢印Rの処理にて印刷命令を受け付けたプリンタ2は、その印刷データを印刷する。すなわち、プリンタ2は、印刷データの画像を受信順に印刷するのであって、プリンタ2自身で画像を印刷順に並べ替えない。プリンタ2は、汎用印刷プログラム41は、プリンタ2から応答通知を受信する(矢印S)。この場合、汎用印刷プログラム41は、応答通知に応じて編集アプリ43に印刷結果を通知してもよい。
上記に対して、補助プログラム42は、矢印Iの処理にて並び順を変更する必要があると判断し、かつ、矢印Jの処理にて分冊すると判断した場合、図5に示すように、1冊のページ数単位で並び順の決定や印刷データの出力を行う。
すなわち、補助プログラム42は、矢印Gの処理にて汎用印刷プログラム41から取得した複数ページある画像の中間データの先頭から、1冊分に対応するページの中間データを取得する(矢印a)。取得する中間データのページ数は、例えば、矢印Dの処理にて受け付けた1冊分のページ数によって特定される。
補助プログラム42は、矢印aにて取得した中間データについて、1冊分に対応するページ数に合わせて画像の並び順を決定する(矢印b)。例えば、補助プログラム42が、汎用印刷プログラム41から100ページ分の中間データを受け取り、矢印Dの処理にて分冊して小冊子にする設定を受け付け、1冊分のページ数が8ページに設定された場合、先頭の1ページから8ページの画像を、図7(b)に示すように並べ替える。
そして、補助プログラム42は、上述した矢印L~矢印Oの処理と同様にして、並び順を決定したページの中間データに対して、縮小処理(矢印c)や合成画像形成処理(矢印d)や必要時の180°回転処理(矢印e)や合成画像の並べ替え処理(矢印f)を行う。
補助プログラム42は、1冊分のページの中間データについて編集が終わると(矢印g)、汎用印刷プログラム41に終了通知を出力する(矢印j)。この場合、補助プログラム42は、矢印a~矢印fの処理によって、決定された並び順に基づいて生成された合成画像の中間データを、編集済み中間データとして汎用印刷プログラム41に渡す。また、補助プログラム42は、次の1冊分のページを処理するための実行命令を補助プログラム42に出力することを要求する実行命令出力要求を、汎用印刷プログラム41に渡す。
汎用印刷プログラム41は、編集済み中間データをラスタライズして印刷データを生成する(矢印k)。汎用印刷プログラム41は、生成した1冊分の印刷データを含む印刷命令をプリンタ2に送信する(矢印l)。このプリンタ2に出力される印刷データは合成印刷データの一例である。プリンタ2は、印刷命令に従って、1冊分のページの画像を、1冊分のページ数に合わせて集約した合成画像の画像データを、用紙の各面に印刷する。プリンタ2は、印刷命令の受信や、印刷の成否などを示す応答通知をPC1に送信する(矢印m)。プリンタ2は、1冊子分の印刷データの受信順に印刷を行い、画像の並べ替えを行わない。
汎用印刷プログラム41は、プリンタ2から送信された応答通知を受信すると、矢印jの処理にて補助プログラム42から受け取った実行命令出力要求に応じて、実行命令を汎用印刷プログラム41に出力する(矢印n)。実行命令を受け取った補助プログラム42は、矢印Gにて汎用印刷プログラム41から受け取った全ページ分の中間データから、次の1冊分のページに対応する画像を取得する(矢印a)。例えば、100ページ分の中間データについて、8ページ単位で分冊する場合、9ページから16ページまでの画像を取得する。そして、補助プログラム42が取得した画像について、矢印b~矢印nの処理が実行される。
矢印a~矢印nの処理が、汎用印刷プログラム41から受け取った中間データの全ページ数を、1冊子のページ数で割った数の回数だけ、実行されると、補助プログラム42が並び順を決定すべき中間データが、なくなる。この場合、補助プログラム42は、矢印a~矢印gの処理を行わずに、終了通知を汎用印刷プログラム41に渡す(矢印o)。このとき、補助プログラム42は、編集済みの中間データを渡さない。これにより、汎用印刷プログラム41は、印刷ジョブにかかる印刷の完了を検知できる。
このように、補助プログラム42は、矢印Dの処理にて分冊する設定を受け付けた場合い、冊子単位で画像の並べ替えおよび送信を行う。これにより、補助プログラム42は、図4の矢印I~矢印Rに示すように、全ページまとめて画像を取得し、全ページの並べ替えが終わってから送信を開始する場合と比較して、印刷実行通知が出力されてからプリンタ2が印刷を開始するまでの初期動作時間が短くなる。例えば、プリンタ2は、2枚同時搬送方式で用紙を搬送しながら、100ページの原稿をブックレット印刷する場合、8ページ分の印刷データを受信すれば、ブックレット印刷を開始できる。
上記に対して、補助プログラム42は、矢印Hの処理にて、並び順を変更する必要がないと判断した場合、図5に示すように、終了通知を出力する。このとき、補助プログラム42は、並び順が変更されていない編集済み中間データを汎用印刷プログラム41に渡す(矢印t)。
汎用印刷プログラム41は、補助プログラム42から受け取った編集済み中間データに基づいて、編集アプリ43が出力した印刷指示に含まれる画像と同じページ順の中間データをラスタライズして印刷データを生成する(矢印u)。この印刷データには、矢印Dにて設定されたブックレット印刷の設定、つまり、ブックレット印刷の実行指示が含まれている。
汎用印刷プログラム41は、生成した印刷データを付した印刷命令をプリンタ2に送信する(矢印v)。プリンタ2は、印刷命令に含まれる印刷データをメモリに記憶する。プリンタ2は、印刷データに含まれるブックレット印刷の実行指示に従って、印刷データに含まれる画像の並び順を決定し、合成画像を生成する。そして、プリンタ2は、生成した合成画像の印刷データに基づいて用紙の各面に印刷を実行する。
このように、補助プログラム42は、画像の並べ替えや合成(2ページ分の画像を用紙の1面分に配置する印刷処理)が不要なモデルの場合には、画像を並べ替える処理や画像を合成する処理を行わずに、PC1からプリンタ2に印刷データを出力させる。よって、補助プログラム42は処理がシンプルになる。
なお、図4のシーケンス図において、矢印Jと矢印Oの処理は、決定処理の一例であり、矢印P~矢印Rの処理は、合成画像出力制御処理の一例であり、矢印Hの処理は、モデル取得処理の一例である。図5の矢印bと矢印fの処理は、決定処理の一例であり、矢印j~矢印lの処理は、合成画像出力制御処理の一例である。
以上説明したように、本形態の補助プログラム42は、汎用印刷プログラム41(OS21)に印刷指示があり、その印刷指示に基づく印刷ジョブにおいてブックレット印刷をプリンタ2に実行させる場合に、補助プログラム42によって、複数ページある画像の並び順をブックレット印刷における1冊分のページ数に合わせて並べ替える(矢印K、矢印O、矢印b、矢印f)。そして、補助プログラム42は、プリンタ2のシートの搬送態様に合わせた印刷順序となる合成画像の印刷データが出力されるようにPC1を制御する(矢印P~矢印R、矢印j~矢印l)。これにより、補助プログラム42は、汎用印刷プログラム41がブックレット印刷をサポートしていない場合であっても、ブックレット印刷をサポートできる。
また、補助プログラム42は、サポートプログラムがモデル名を取得し(図4の矢印H)、モデルごとに画像の並び順を決定する(図4の矢印O、図5の矢印f)。これにより、補助プログラム42は、複数のモデルに対応でき、使い勝手が向上する。
なお、図8に示すように、汎用印刷プログラム41は、中間データを生成した後(矢印F)、印刷データを生成し(矢印Xa)、その印刷データを補助プログラム42に渡してもよい。つまり、補助プログラム42は、複数ページの並び順が決定されていない画像に対応する印刷データを汎用印刷プログラム41から受け取る。この印刷データは、印刷用データの一例である。
補助プログラム42は、受け取った印刷データに対して、上述した矢印H以降の処理を実行する。この場合、図4に示す矢印P及び矢印Qの処理、図5に示す矢印j及び矢印kの処理を省略して、代わりに、補助プログラム42は終了通知にて編集済みの印刷データを汎用印刷プログラム41に渡す。この編集済みの印刷データは、合成印刷データの一例である。
また、補助プログラム42は、プリンタ2に編集済みの印刷データを直接出力する処理を実行してもよい。この場合、補助プログラム42は、編集済みの印刷データの送信後、印刷データの送信成否やプリンタ2からの応答(正常終了やエラー信号)を受け取ってOS21に受け渡してもよい。
次に、第2の形態の補助プログラム42の動作を含む印刷手順について、図9、図10のシーケンス図を参照して説明する。本形態は、補助プログラムが印刷データを生成する点が第1の形態と異なる。図9、図10および以下の説明では、第1の形態と同じ処理については、同じ符号を付して説明を適宜省略する。また、第1の形態の処理と同様であって、異なる処理については、小文字の添え字を付けた符号として、第1の形態との違いを説明する。
図9に示すように、補助プログラム42は、図中矢印K~矢印Oに示すように、汎用印刷プログラム41から受け取った中間データの画像の並び順を変更し、変更後の並び順に基づいて、合成画像の中間データを生成すると、その合成画像の中間データをラスタライズして印刷データを生成する(矢印Xb)。なお、図中矢印K~矢印Oの処理にて生成される中間データは、合成中間データの一例である。なお、図9では省略された矢印Gの処理にて、補助プログラム42が汎用印刷プログラム41から受け取った中間データは、印刷用中間データの一例である。
矢印Xbにて生成される印刷データは、プリンタ2にて印刷できる形式のデータであり、例えば、プリンタ2のモデルに専用のPDLデータである。補助プログラム42にてラスタライズすることで、汎用印刷プログラム41にてラスタライズする場合に比較して自由度が大きく、プリンタ2での印刷に適した印刷データが生成される可能性が高い。なお、矢印Xbにて生成される印刷データは、プリンタ2のモデル以外のプリンタでの印刷にも使用できる形式のデータであっても良い。なお、印刷データは、合成印刷データの一例である。
補助プログラム42は、自身が生成して並び順を決定した印刷データについて、終了通知とともに汎用印刷プログラム41に渡す(矢印b1)。汎用印刷プログラム41は、受け取った印刷データを印刷命令に付してプリンタ2に出力する(矢印Rb)。
なお、図10に示すように、補助プログラム42は、矢印a~矢印hの処理により、1冊分のページに対応して生成された合成画像の中間データを、ラスタライズして、印刷データを生成してもよい(矢印Xc)。この中間データは、合成中間データの一例である。補助プログラム42は、自身が生成した1冊分の印刷データについて、終了通知とともに汎用印刷プログラム41に渡す(矢印c1)。このとき、補助プログラム42は、実行命令出力要求を汎用印刷プログラム41に渡す。汎用印刷プログラム41は、受け取った1冊分の印刷データを印刷命令に付してプリンタ2に出力する(矢印lc)。つまり、補助プログラム42は、印刷指示に含まれる画像と並び順が異なる印刷データを、PC1からプリンタ2に送信させる。この印刷データは、合成印刷データの一例である。
第2形態の補助プログラム42は、並び順を変更した印刷データをPC1からプリンタ2へ送信させるので、プリンタ2が、印刷データの画像の並べ替えを行わずに、印刷データの受信順に従って画像を印刷できる。よって、第2形態の補助プログラム42も、第1形態の補助プログラム42と同様、汎用印刷プログラム41がブックレット印刷に対応しない場合でも、プリンタ2にブックレット印刷を行わせることができる。
なお、本実施の形態は単なる例示にすぎず、本発明を何ら限定するものではない。したがって本発明は当然に、その要旨を逸脱しない範囲内で種々の改良、変形が可能である。例えば、PC1に接続される装置は、プリンタに限らず、複合機、複写機、FAX装置、等印刷機能を有する装置であればよい。また、PC1に接続されるプリンタは2台以上でもよい。
また、補助プログラム42が1種類のモデルに対応する場合、補助DB44を省略し、また、図4の矢印Hや矢印Iの処理を省略してもよい。これによれば、メモリ負荷を軽減したり、補助プログラム42の処理をシンプルにしたりすることができる。
また、例えば図4の矢印J、図5の矢印a~矢印oの処理を省略し、補助プログラム42が分冊印刷の際に1冊分のページ単位で画像を並べ替えたり、データを送信したりしないようにしてもよい。
また、上記各形態では、補助プログラム42の動作として、ブックレット印刷に関する処理のみを記載しているが、補助プログラム42は、さらに他の役割を有していても良い。例えば、ブックレット印刷以外の印刷設定については、汎用印刷プログラム41にて処理可能な印刷設定については汎用印刷プログラム41にて処理を行い、汎用印刷プログラム41にて処理できない印刷設定については補助プログラム42にて処理を行うとしてもよい。
また、汎用印刷プログラム41が中間データを介さず、印刷実行通知に含まれる画像データから印刷データを生成できる場合には、例えば、図3に示す矢印Fの処理を省略し、印刷データを汎用印刷プログラム41から補助プログラム42に渡してもよい。また、合成画像形成(矢印M、矢印d)においては、印刷設定の検証(矢印D)において綴じ代の設定を可能とし、この設定値に基づいて2ページ分の画像を用紙中央から離して配置するようにしてもよい。つまり、用紙の1面分に2ページ分の画像を並べて配置する際、補助プログラム42は、隣り合う画像の間、例えば、8ページの画像と1ページの画像との間に、オフセット領域を設けてもよい。この場合、用紙を2つに折り畳んで小冊子71を形成した際に、見開き2ページ分の画像が見やすくなる。
また、補助プログラム42は、汎用印刷プログラム41を用いた印刷を行う際に、OS21または汎用印刷プログラム41から指示を受け付けるプログラムであればよい。例えば、マイクロソフト社が仕様公開した印刷ワークフローアプリ(Print Workflow)でも良い。
また、上記各形態では、汎用印刷プログラム41から補助プログラム42に実行命令が出力されることで、補助プログラム42が実行されるとしているが、補助プログラム42の実行タイミングはこれに限らない。例えば、補助プログラム42は、OS21から直接実行命令を受け付けて実行されてもよく、または、常駐される補助プログラム42であってもよい。常駐される場合は、補助プログラム42は、実行命令を受けて前述した動作を行うとすれば良い。
また、実施の形態に開示されている任意のフローチャートにおいて、任意の複数のステップにおける複数の処理は、処理内容に矛盾が生じない範囲で、任意に実行順序を変更できる、または並列に実行できる。
また、実施の形態に開示されている処理は、単一のCPU、複数のCPU、ASICなどのハードウェア、またはそれらの組み合わせで実行されてもよい。また、実施の形態に開示されている処理は、その処理を実行するためのプログラムを記録した記録媒体、または方法等の種々の態様で実現することができる。
1 PC
2 プリンタ
11 CPU
21 OS
41 汎用印刷プログラム
42 補助プログラム
43 編集アプリ

Claims (12)

  1. 情報処理装置のコンピュータによって実行可能であり、前記情報処理装置と接続するプリンタに対応するサポートプログラムであって、
    前記コンピュータに、
    前記情報処理装置に組み込まれているアプリケーションプログラムから出力された印刷指示であって、前記情報処理装置のオペレーティングシステムにあらかじめ組み込まれた汎用印刷プログラムに対して、画像の印刷を前記プリンタに行わせる前記印刷指示があり、前記印刷指示に基づくジョブにおいて、用紙の両面に各2ページ分の印刷を行い、印刷後の前記用紙を複数枚重ね合わせて2つ折りすることにより小冊子を形成できるブックレット印刷を前記プリンタに実行させる場合、
    前記汎用印刷プログラムから複数ページある前記画像に対応する印刷用データを受け取り、受け取った前記印刷用データに基づき、前記ブックレット印刷における1冊分のページ数に合わせて前記画像の並び順を決定する決定処理と、
    前記決定処理にて決定した並び順に基づき、対象となる2ページ分の画像を各用紙の1面に収まるように配置された合成画像についてラスタライズされた合成印刷データを、前記プリンタを送信先として前記情報処理装置から送信されるように、制御する合成画像出力制御処理と、
    を実行させ、
    プリンタのモデルを示すモデル情報とそのプリンタのシートの搬送態様とを関連付けたデータベースを含み、
    前記コンピュータに、
    前記情報処理装置と接続する前記プリンタのモデル情報を取得するモデル取得処理を実行させ、
    前記決定処理では、
    前記データベースを参照し、前記モデル取得処理にて取得した前記モデル情報に基づいて前記シートの搬送形態を特定し、特定された前記シートの搬送態様に従って、前記画像の並び順を決定し、
    前記データベースには、さらに前記モデル情報と、前記画像の並び順の変更の要否を示す情報とが関連付けられており、
    前記コンピュータに、
    前記データベースを参照し、前記モデル取得処理にて取得した前記モデル情報に基づいて前記合成印刷データの生成の要否を特定し、
    前記合成印刷データの生成が必要なモデルの場合、前記決定処理および前記合成画像出力制御処理を実行させ、
    前記合成印刷データの生成が不要なモデルの場合、前記決定処理および前記合成画像出力制御処理を実行させず、前記画像に基づく印刷データであって前記ブックレット印刷の実行指示を含む前記印刷データを、前記プリンタを送信先として出力させ、前記印刷データを受信した前記プリンタは、受信した前記印刷データに基づき前記画像の並び順を決定し、前記合成印刷データを生成させる、
    ことを特徴とするサポートプログラム。
  2. 請求項1に記載するサポートプログラムにおいて、
    前記合成画像出力制御処理では、
    前記決定処理にて決定した並び順に基づき、前記ブックレット印刷における1冊分のページ数の前記画像に対する準備が完了するごとに、前記ブックレット印刷における1冊分のページ数の前記画像のページ順を並べ替える、
    ことを特徴とするサポートプログラム。
  3. 請求項1または請求項2に記載するサポートプログラムにおいて、
    前記合成画像出力制御処理では、
    前記決定処理にて決定した並び順に基づいて前記合成画像となる合成中間データを生成し、生成した前記合成中間データをラスタライズして前記合成印刷データを生成し、生成された前記合成印刷データを前記プリンタに送信する、
    ことを特徴とするサポートプログラム。
  4. 情報処理装置のコンピュータによって実行可能であり、前記情報処理装置と接続するプリンタに対応するサポートプログラムであって、
    前記コンピュータに、
    前記情報処理装置に組み込まれているアプリケーションプログラムから出力された印刷指示であって、前記情報処理装置のオペレーティングシステムにあらかじめ組み込まれた汎用印刷プログラムに対して、画像の印刷を前記プリンタに行わせる前記印刷指示があり、前記印刷指示に基づくジョブにおいて、用紙の両面に各2ページ分の印刷を行い、印刷後の前記用紙を複数枚重ね合わせて2つ折りすることにより小冊子を形成できるブックレット印刷を前記プリンタに実行させる場合、
    前記汎用印刷プログラムから複数ページある前記画像に対応する印刷用データを受け取り、受け取った前記印刷用データに基づき、前記ブックレット印刷における1冊分のページ数に合わせて前記画像の並び順を決定する決定処理と、
    前記決定処理にて決定した並び順に基づき、対象となる2ページ分の画像を各用紙の1面に収まるように配置された合成画像についてラスタライズされた合成印刷データを、前記プリンタを送信先として前記情報処理装置から送信されるように、制御する合成画像出力制御処理と、
    を実行させ、
    前記決定処理では、
    前記汎用印刷プログラムから前記印刷用データとして印刷用中間データを受け取り、受け取った前記印刷用中間データに基づき並び順を決定し、
    前記合成画像出力制御処理では、
    前記決定処理にて決定した並び順に基づいて前記合成画像となる合成中間データを生成し、生成した前記合成中間データを前記汎用印刷プログラムに渡してラスタライズを指示し、前記汎用印刷プログラムによるラスタライズによって生成された前記合成印刷データを、前記プリンタを送信先として前記情報処理装置から送信されるように、制御する、
    ことを特徴とするサポートプログラム。
  5. 情報処理装置のコンピュータによって実行可能であり、前記情報処理装置と接続するプリンタに対応するサポートプログラムであって、
    前記コンピュータに、
    前記情報処理装置に組み込まれているアプリケーションプログラムから出力された印刷指示であって、前記情報処理装置のオペレーティングシステムにあらかじめ組み込まれた汎用印刷プログラムに対して、画像の印刷を前記プリンタに行わせる前記印刷指示があり、前記印刷指示に基づくジョブにおいて、用紙の両面に各2ページ分の印刷を行い、印刷後の前記用紙を複数枚重ね合わせて2つ折りすることにより小冊子を形成できるブックレット印刷を前記プリンタに実行させる場合、
    前記汎用印刷プログラムから複数ページある前記画像に対応する印刷用データを受け取り、受け取った前記印刷用データに基づき、前記ブックレット印刷における1冊分のページ数に合わせて前記画像の並び順を決定する決定処理と、
    前記決定処理にて決定した並び順に基づき、対象となる2ページ分の画像を各用紙の1面に収まるように配置された合成画像についてラスタライズされた合成印刷データを、前記プリンタを送信先として前記情報処理装置から送信されるように、制御する合成画像出力制御処理と、
    を実行させ、
    前記決定処理では、
    前記汎用印刷プログラムから前記印刷用データとしてラスタライズされた印刷データを受け取り、受け取った前記印刷データに基づき並び順を決定し、
    前記合成画像出力制御処理では、
    前記決定処理にて決定した並び順に基づき、前記印刷データから前記合成印刷データを生成し、生成した前記合成印刷データを、前記プリンタを送信先として前記情報処理装置から送信されるように、制御する、
    ことを特徴とするサポートプログラム。
  6. 請求項または請求項に記載するサポートプログラムにおいて、
    前記合成画像出力制御処理では、
    前記ジョブにかかる前記合成印刷データを、前記汎用印刷プログラムに渡し、前記汎用印刷プログラムは、渡された前記合成印刷データを、前記プリンタに送信する、
    ことを特徴とするサポートプログラム。
  7. 請求項または請求項に記載するサポートプログラムにおいて、
    前記合成画像出力制御処理では、
    前記ジョブにかかる前記合成印刷データを、前記プリンタに送信する、
    ことを特徴とするサポートプログラム。
  8. 請求項1から請求項のいずれか1つに記載するサポートプログラムにおいて、
    前記合成画像出力制御処理では、
    用紙の1面分に2ページ分の前記画像を並べて配置する際、隣り合う前記画像の間にオフセット領域を設ける、
    ことを特徴とするサポートプログラム。
  9. コンピュータを備える情報処理装置であって、
    前記情報処理装置のオペレーティングシステムは、あらかじめ組み込まれたプログラムである汎用印刷プログラムを有しており、
    前記情報処理装置には、前記情報処理装置と接続するプリンタに対応するサポートプログラムと、前記汎用印刷プログラムを介して前記プリンタに画像の印刷を行わせる印刷指示の入力が可能なアプリケーションプログラムと、が組み込まれており、
    前記コンピュータは、
    前記アプリケーションプログラムから出力された前記印刷指示があり、前記印刷指示に基づくジョブにおいて、用紙の両面に各2ページ分の印刷を行い、印刷後の前記用紙を複数枚重ね合わせて2つ折りすることにより小冊子を形成できるブックレット印刷を前記プリンタに実行させる場合、
    前記サポートプログラムによって、前記汎用印刷プログラムから複数ページある前記画像に対応する印刷用データを受け取り、受け取った前記印刷用データに基づき、前記ブックレット印刷における1冊分のページ数に合わせて前記画像の並び順を決定する決定処理と、
    前記サポートプログラムによって、前記決定処理にて決定した並び順に基づき、対象となる2ページ分の画像を各用紙の1面に収まるように配置した合成画像についてラスタライズされた合成印刷データを、前記プリンタを送信先として前記情報処理装置から送信されるように、制御する合成画像出力制御処理と、
    を実行し、
    前記決定処理では、
    前記汎用印刷プログラムから前記印刷用データとして印刷用中間データを受け取り、受け取った前記印刷用中間データに基づき並び順を決定し、
    前記合成画像出力制御処理では、
    前記決定処理にて決定した並び順に基づいて前記合成画像となる合成中間データを生成し、生成した前記合成中間データを前記汎用印刷プログラムに渡してラスタライズを指示し、前記汎用印刷プログラムによるラスタライズによって生成された前記合成印刷データを、前記プリンタを送信先として前記情報処理装置から送信されるように、制御する、
    ことを特徴とする情報処理装置。
  10. コンピュータを備える情報処理装置であって、
    前記情報処理装置のオペレーティングシステムは、あらかじめ組み込まれたプログラムである汎用印刷プログラムを有しており、
    前記情報処理装置には、前記情報処理装置と接続するプリンタに対応するサポートプログラムと、前記汎用印刷プログラムを介して前記プリンタに画像の印刷を行わせる印刷指示の入力が可能なアプリケーションプログラムと、が組み込まれており、
    前記コンピュータは、
    前記アプリケーションプログラムから出力された前記印刷指示があり、前記印刷指示に基づくジョブにおいて、用紙の両面に各2ページ分の印刷を行い、印刷後の前記用紙を複数枚重ね合わせて2つ折りすることにより小冊子を形成できるブックレット印刷を前記プリンタに実行させる場合、
    前記サポートプログラムによって、前記汎用印刷プログラムから複数ページある前記画像に対応する印刷用データを受け取り、受け取った前記印刷用データに基づき、前記ブックレット印刷における1冊分のページ数に合わせて前記画像の並び順を決定する決定処理と、
    前記サポートプログラムによって、前記決定処理にて決定した並び順に基づき、対象となる2ページ分の画像を各用紙の1面に収まるように配置した合成画像についてラスタライズされた合成印刷データを、前記プリンタを送信先として前記情報処理装置から送信されるように、制御する合成画像出力制御処理と、
    を実行し、
    前記決定処理では、
    前記汎用印刷プログラムから前記印刷用データとしてラスタライズされた印刷データを受け取り、受け取った前記印刷データに基づき並び順を決定し、
    前記合成画像出力制御処理では、
    前記決定処理にて決定した並び順に基づき、前記印刷データから前記合成印刷データを生成し、生成した前記合成印刷データを、前記プリンタを送信先として前記情報処理装置から送信されるように、制御する、
    ことを特徴とする情報処理装置。
  11. 情報処理装置にプリンタが接続され、
    前記情報処理装置のオペレーティングシステムは、あらかじめ組み込まれたプログラムである汎用印刷プログラムを有しており、
    前記情報処理装置には、前記情報処理装置と接続する前記プリンタに対応するサポートプログラムと、前記汎用印刷プログラムを介して前記プリンタに画像の印刷を行わせる印刷指示の入力が可能なアプリケーションプログラムと、が組み込まれており、
    前記情報処理装置で生成された印刷データに基づく印刷を、前記プリンタに実行させる印刷方法において、
    前記アプリケーションプログラムから出力された前記印刷指示があり、前記印刷指示に基づくジョブにおいて、用紙の両面に各2ページ分の印刷を行い、印刷後の前記用紙を複数枚重ね合わせて2つ折りすることにより小冊子を形成できるブックレット印刷を前記プリンタに実行させる場合、
    前記サポートプログラムによって、前記汎用印刷プログラムから複数ページある前記画像に対応する印刷用データを受け取り、受け取った前記印刷用データに基づき、前記ブックレット印刷における1冊分のページ数に合わせて前記画像の並び順を決定する決定ステップと
    前記サポートプログラムによって、決定した並び順に基づき、対象となる2ページ分の画像を各用紙の1面に収まるように配置した合成画像についてラスタライズされた合成印刷データを、前記プリンタを送信先として前記情報処理装置から送信されるように、制御する合成画像出力制御ステップと、
    を行い、
    前記決定ステップでは、
    前記汎用印刷プログラムから前記印刷用データとして印刷用中間データを受け取り、受け取った前記印刷用中間データに基づき並び順を決定し、
    前記合成画像出力制御ステップでは、
    前記決定ステップにて決定した並び順に基づいて前記合成画像となる合成中間データを生成し、生成した前記合成中間データを前記汎用印刷プログラムに渡してラスタライズを指示し、前記汎用印刷プログラムによるラスタライズによって生成された前記合成印刷データを、前記プリンタを送信先として前記情報処理装置から送信されるように、制御する、
    ことを特徴とする印刷方法。
  12. 情報処理装置にプリンタが接続され、
    前記情報処理装置のオペレーティングシステムは、あらかじめ組み込まれたプログラムである汎用印刷プログラムを有しており、
    前記情報処理装置には、前記情報処理装置と接続する前記プリンタに対応するサポートプログラムと、前記汎用印刷プログラムを介して前記プリンタに画像の印刷を行わせる印刷指示の入力が可能なアプリケーションプログラムと、が組み込まれており、
    前記情報処理装置で生成された印刷データに基づく印刷を、前記プリンタに実行させる印刷方法において、
    前記アプリケーションプログラムから出力された前記印刷指示があり、前記印刷指示に基づくジョブにおいて、用紙の両面に各2ページ分の印刷を行い、印刷後の前記用紙を複数枚重ね合わせて2つ折りすることにより小冊子を形成できるブックレット印刷を前記プリンタに実行させる場合、
    前記サポートプログラムによって、前記汎用印刷プログラムから複数ページある前記画像に対応する印刷用データを受け取り、受け取った前記印刷用データに基づき、前記ブックレット印刷における1冊分のページ数に合わせて前記画像の並び順を決定する決定ステップと、
    前記サポートプログラムによって、決定した並び順に基づき、対象となる2ページ分の画像を各用紙の1面に収まるように配置した合成画像についてラスタライズされた合成印刷データを、前記プリンタを送信先として前記情報処理装置から送信されるように、制御する合成画像出力制御ステップと、
    を行い、
    前記決定ステップでは、
    前記汎用印刷プログラムから前記印刷用データとしてラスタライズされた印刷データを受け取り、受け取った前記印刷データに基づき並び順を決定し、
    前記合成画像出力制御ステップでは、
    前記決定ステップにて決定した並び順に基づき、前記印刷データから前記合成印刷データを生成し、生成した前記合成印刷データを、前記プリンタを送信先として前記情報処理装置から送信されるように、制御する、
    ことを特徴とする印刷方法。
JP2019179039A 2019-09-30 2019-09-30 サポートプログラム、情報処理装置、および印刷方法 Active JP7490935B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2019179039A JP7490935B2 (ja) 2019-09-30 2019-09-30 サポートプログラム、情報処理装置、および印刷方法
PCT/JP2020/025800 WO2021065124A1 (ja) 2019-09-30 2020-07-01 サポートプログラム、情報処理装置、および印刷方法
US17/212,407 US11733937B2 (en) 2019-09-30 2021-03-25 Support program, information processing device, and printing method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2019179039A JP7490935B2 (ja) 2019-09-30 2019-09-30 サポートプログラム、情報処理装置、および印刷方法

Publications (2)

Publication Number Publication Date
JP2021056754A JP2021056754A (ja) 2021-04-08
JP7490935B2 true JP7490935B2 (ja) 2024-05-28

Family

ID=75270801

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019179039A Active JP7490935B2 (ja) 2019-09-30 2019-09-30 サポートプログラム、情報処理装置、および印刷方法

Country Status (3)

Country Link
US (1) US11733937B2 (ja)
JP (1) JP7490935B2 (ja)
WO (1) WO2021065124A1 (ja)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002079716A (ja) 2000-09-04 2002-03-19 Canon Inc 印刷制御システム、印刷制御方法、記憶媒体
JP2007133756A (ja) 2005-11-11 2007-05-31 Riso Kagaku Corp 画像形成装置及び画像形成用プログラム
JP2012113356A (ja) 2010-11-19 2012-06-14 Canon Inc 印刷制御装置、印刷制御方法、及びコンピュータプログラム
JP2017045260A (ja) 2015-08-26 2017-03-02 株式会社沖データ 画像処理装置およびプログラム

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7031001B2 (en) * 2000-07-31 2006-04-18 Canon Kabushiki Kaisha Print control apparatus and control method
JP2011095912A (ja) 2009-10-28 2011-05-12 Konica Minolta Business Technologies Inc 画像形成装置及びプリンタドライバ

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002079716A (ja) 2000-09-04 2002-03-19 Canon Inc 印刷制御システム、印刷制御方法、記憶媒体
JP2007133756A (ja) 2005-11-11 2007-05-31 Riso Kagaku Corp 画像形成装置及び画像形成用プログラム
JP2012113356A (ja) 2010-11-19 2012-06-14 Canon Inc 印刷制御装置、印刷制御方法、及びコンピュータプログラム
JP2017045260A (ja) 2015-08-26 2017-03-02 株式会社沖データ 画像処理装置およびプログラム

Also Published As

Publication number Publication date
JP2021056754A (ja) 2021-04-08
US20210232350A1 (en) 2021-07-29
US11733937B2 (en) 2023-08-22
WO2021065124A1 (ja) 2021-04-08

Similar Documents

Publication Publication Date Title
JP5473237B2 (ja) 印刷装置、印刷装置の制御方法、及びコンピュータプログラム
JP6051722B2 (ja) プログラムおよび情報処理装置
JP6391472B2 (ja) 画像処理装置、画像処理装置の制御方法、及びプログラム
US8553241B2 (en) Information processing apparatus, information processing method, and storage medium for generating print data according to an instruction
JP2013162422A (ja) 画像形成装置、その制御方法、及びプログラム
US20200249881A1 (en) Non-transitory computer-readable recording medium, information processing apparatus and printing method
JP2016052766A (ja) 印刷装置、印刷方法およびプログラム、並びに、印刷システム
US10353647B2 (en) Printing control apparatus, printing control method, and storage medium
JP6341811B2 (ja) 印刷システム、画像処理装置、印刷制御方法、およびコンピュータプログラム
US11687751B2 (en) Non-transitory computer readable storage medium, information processing device and printing method storing program to support duplex printing
JP6425536B2 (ja) 画像形成装置、画像形成装置の制御方法及びプログラム
WO2021065126A1 (ja) サポートプログラム、情報処理装置、および印刷方法
JP7490935B2 (ja) サポートプログラム、情報処理装置、および印刷方法
JP4983235B2 (ja) 画像処理装置、画像処理システム及び画像処理プログラム
JPH11165455A (ja) コンピュータによるプリント制御方法およびプリント制御プログラムを記録したコンピュータ読み取り可能な記録媒体、ならびにプリント制御装置
US11604613B2 (en) Support program for driverless general-purpose print program, information processing device, and printing method for aggregate printing
JP2015168235A (ja) シート処理装置、情報処理装置及びその制御方法とプログラム
US9165228B2 (en) Printing apparatus allowing user change of operational control of job, control method thereof, and storage medium
JP2010117780A (ja) 情報処理装置、ならびに情報処理プログラム
JP2016084184A (ja) 画像形成装置と画像形成装置に接続される後処理装置で構成された画像形成システムの制御方法、プログラム
JP2023034953A (ja) 情報処理装置、情報処理装置の制御方法およびプログラム
JP5705193B2 (ja) 画像形成装置、画像形成装置の制御方法及びプログラム
JP5678425B2 (ja) 画像形成装置とデータ処理方法とプログラム
JP2009119722A (ja) 画像形成装置およびプログラム
JP2020066502A (ja) 画像形成システム及びプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220913

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20231128

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20240125

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20240416

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20240429

R150 Certificate of patent or registration of utility model

Ref document number: 7490935

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150