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

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

Info

Publication number
JP7490936B2
JP7490936B2 JP2019179043A JP2019179043A JP7490936B2 JP 7490936 B2 JP7490936 B2 JP 7490936B2 JP 2019179043 A JP2019179043 A JP 2019179043A JP 2019179043 A JP2019179043 A JP 2019179043A JP 7490936 B2 JP7490936 B2 JP 7490936B2
Authority
JP
Japan
Prior art keywords
program
image data
print
pages
printer
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
JP2019179043A
Other languages
English (en)
Other versions
JP2021056755A (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 JP2019179043A priority Critical patent/JP7490936B2/ja
Priority to CN202080066605.4A priority patent/CN114424159A/zh
Priority to PCT/JP2020/025801 priority patent/WO2021065125A1/ja
Priority to US17/215,073 priority patent/US11604613B2/en
Publication of JP2021056755A publication Critical patent/JP2021056755A/ja
Application granted granted Critical
Publication of JP7490936B2 publication Critical patent/JP7490936B2/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/1218Reducing or saving of used resources, e.g. avoiding waste of consumables or improving usage of hardware resources
    • G06F3/122Reducing or saving of used resources, e.g. avoiding waste of consumables or improving usage of hardware resources with regard to computing resources, e.g. memory, CPU
    • 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/125Page layout or assigning input pages onto output media, e.g. imposition
    • 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/1244Job translation or job parsing, e.g. page banding
    • G06F3/1247Job translation or job parsing, e.g. page banding by conversion to printer ready 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/1224Client or server resources management
    • G06F3/1228Printing driverless or using generic drivers
    • 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/1278Dedicated interfaces to print systems specifically adapted to adopt a particular infrastructure
    • G06F3/1285Remote printer device, e.g. being remote from client or server
    • 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)
  • Mathematical Physics (AREA)
  • Accessory Devices And Overall Control Thereof (AREA)

Description

本明細書に開示される技術分野は、プリンタの制御をサポートするサポートプログラム、情報処理装置、および印刷方法に関する。
パーソナルコンピュータ等の情報処理装置からプリンタを制御する技術として、例えば特許文献1に開示されているように、プリンタドライバによって、複数ページの画像を1枚の用紙に印刷する集約印刷が設定されたジョブを、プリンタに入力する構成が広く知られている。
特開2017-121695号公報
近年、前述したプリンタドライバを利用せず、オペレーティングシステム(以下、「OS」とする)に標準に組み込まれている印刷プログラムによってプリンタを制御する技術が実用化されている。この技術では、OSがプリンタとOS標準の印刷プログラムとの関連付けを行い、以後、そのプリンタに対する印刷指示を受け付けた場合に、プリンタドライバを用いずに、OS標準の印刷プログラムによる印刷が可能になる。
しかしながら、OS標準の汎用印刷プログラムによる印刷では、印刷パラメータの選択の際、選択可能な設定項目がOS標準の印刷プログラムに登録されている一般的なものになる。そのため、集約印刷がサポートされない可能性があり、ユーザに不便を強いる。また、プリンタ側の処理にて集約印刷を行うことも可能ではあるが、その場合には、プリンタに搭載するメモリ量が増加するなどプリンタに負荷がかかる。
本明細書は、OS標準の印刷プログラムが組み込まれた情報処理装置において、プリンタに負荷をかけることのない方式にて、集約印刷をプリンタに行わせる技術を開示する。
上述した課題の解決を目的としてなされたサポートプログラムは、情報処理装置のコンピュータによって実行可能であり、前記情報処理装置と接続するプリンタに対応するサポートプログラムであって、前記コンピュータに、前記情報処理装置に組み込まれているアプリケーションプログラムから出力された印刷指示であって、前記情報処理装置のオペレーティングシステムにあらかじめ組み込まれた汎用印刷プログラムに対して、画像の印刷を前記プリンタに行わせる前記印刷指示があり、前記印刷指示に基づくジョブにおいて、N(Nは2以上の自然数)ページ分の画像を用紙の1面分に印刷する集約印刷を前記プリンタに実行させる場合、複数ページの画像についての画像データを前記汎用印刷プログラムから受け取る画像データ受け取り処理と、前記画像データ受け取り処理にて受け取った画像データについて、前記複数ページの画像を縮小し、前記Nページ分の画像を用紙の1面に収まるように配置した合成画像を示す合成画像データを生成する合成処理と、前記合成画像データに基づいてラスタライズされた印刷データを、前記プリンタを送信先として前記情報処理装置に送信させるための出力処理と、を実行させる、ことを特徴としている。
本明細書に開示されるサポートプログラムは、アプリケーションプログラムから汎用印刷プログラムに印刷指示が出力され、その印刷指示に基づくジョブにおいて画像の集約印刷をプリンタに行わせる場合、複数ページの画像についての画像データを汎用印刷プログラム41から受け取って、Nページ分の画像を用紙の1面に収まるように配置した合成画像データを生成する。さらに、サポートプログラムは、情報処理装置に、合成画像データに基づく印刷データをプリンタに送信させる。これにより、汎用印刷プログラムが集約印刷をサポートしていない場合でも、プリンタに集約印刷を行わせることができる。
上記プログラムが組み込まれた情報処理装置、プログラムを格納するコンピュータにて読取可能な記憶媒体、及びプログラムの機能を実現するための制御方法も、新規で有用である。
本明細書に開示される技術によれば、OS標準の印刷プログラムが組み込まれた情報処理装置において、プリンタに負荷をかけることのない方式にて、集約印刷をプリンタに行わせる技術が実現される。
PCの電気的構成を示すブロック図である。 第1の形態の動作の順序の例を示すシーケンス図である。 第1の形態の動作の順序の別の例を示すシーケンス図である。 第1の形態の動作の順序の別の例を示すシーケンス図である。 第1の形態の動作の順序の別の例を示すシーケンス図である。 第2の形態の動作の順序の例を示すシーケンス図である。 第2の形態の動作の順序の別の例を示すシーケンス図である。 第2の形態の動作の順序の別の例を示すシーケンス図である。 第2の形態の動作の順序の別の例を示すシーケンス図である。 第3の形態の動作の順序の例を示すシーケンス図である。
以下、第1の形態のプログラムを利用するパーソナルコンピュータ(以下、「PC」とする)について、添付図面を参照しつつ詳細に説明する。本形態は、印刷機能を有するプリンタに接続されるPCにて実行されるプログラムを具体化した実施の形態を開示するものである。
本形態のPC1は、例えば、図1に示すように、コントローラ10と、ユーザインタフェース(以下、「UI」とする)20と、通信インタフェース(以下、「通信IF」とする)30と、を備えている。UI20及び通信IF30は、コントローラ10に電気的に接続されている。PC1は、情報処理装置の一例である。プリンタ2は、印刷機能を有する装置であり、ローカル通信またはネットワーク通信を介してPC1と接続されている。
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に記憶させる。プリンタのタイプごとに限らず、プリンタのモデルごとやプリンタのモデルのシリーズごとに用意される補助プログラムが有っても良い。
編集アプリ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であるかを判断する」のように概念的に記載することがある。
次に、本形態の補助プログラム42の動作を含む印刷手順について、図2のシーケンス図を参照して説明する。本形態のPC1は、補助プログラム42を使用することで、プリンタ2にNin1印刷を実現させることができる。Nin1印刷は、1枚の用紙の1面に画像データのNページ分の画像を縮小して並べたものを印刷する集約印刷である。Nは、2以上の自然数である。本形態の汎用印刷プログラム41は、Nin1印刷の印刷設定に対応していなくても良い。また、本形態のプリンタ2は、自装置でNin1印刷の処理を行う機能を有していなくても良い。
まず、編集アプリ43は、UI20を介して、印刷対象の画像の指定と、印刷実行の指示入力を受け付ける(矢印A)。編集アプリ43は、例えば、編集アプリ43にて編集された文書や編集アプリ43にて読み込んだ写真などを、印刷対象の画像とする指示を受け付ける。そして、印刷指示を受け付けた編集アプリ43は、受け付けた印刷指示の内容を示す印刷実行通知をOS21に渡す。なお、図2では、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がNin1印刷の設定を受け付けた場合について説明する。つまり、矢印Cにて渡される印刷設定には、Nin1印刷の設定が含まれておらず、矢印Dの処理の終了時における印刷設定には、Nin1印刷の設定が含まれる。補助プログラム42は、Nin1印刷の設定に加えて、1面内でのNページの画像の配置順の指示を受け付けても良い。
なお、編集アプリ43にてNin1印刷の設定を受け付けることができる場合には、矢印Cにて補助プログラム42に渡される印刷設定にNin1印刷の設定が含まれていても良い。例えば、汎用印刷プログラム41がNin1印刷に対応している場合には、矢印CにてNin1印刷の設定を含む印刷設定が渡されても良い。あるいは、汎用印刷プログラム41がNin1印刷に対応していない場合であっても、例えば、編集アプリ43と補助プログラム42とで共通して使用できる記憶領域を介して、編集アプリ43から補助プログラム42へNin1印刷の設定が渡されても良い。
補助プログラム42は、印刷設定の検証処理を終了したら、終了通知を汎用印刷プログラム41に渡す。本形態の補助プログラム42は、印刷設定にNin1印刷の設定が含まれていることから、終了通知の前にNページ分の画像データを要求する情報を汎用印刷プログラム41に渡し(矢印E)、その後、終了通知を渡す(矢印F)。
なお、矢印Cで受け取った印刷設定にNin1印刷の設定が含まれていた場合、補助プログラム42は、そのNin1印刷の設定を無効にする。そして、矢印Fにて補助プログラム42から汎用印刷プログラム41に渡される印刷設定には、Nin1印刷の設定は含まれない。本形態では、汎用印刷プログラム41がNin1印刷に対応していたとしても、汎用印刷プログラム41は、Nin1印刷のための処理を行わない。
汎用印刷プログラム41は、補助プログラム42から印刷設定の検証終了を示す終了通知を受け取ったことに応じて、矢印Bの印刷実行通知に含まれる画像データの形式を中間データの形式に変換することで中間データを作成し、中間データを含む印刷ジョブを生成する(矢印G)。編集アプリ43にて指定される画像データは種々のタイプのものであり、汎用印刷プログラム41は、受け取った画像データを、印刷データの生成に適した中間データに変換する。なお、印刷実行通知に含まれる画像データが印刷データの生成に適したデータであれば、中間データの生成を省略し、画像データをそのまま中間データとしても良い。中間データは、例えば、XPSデータである。
さらに、汎用印刷プログラム41は、矢印Eにて受け付けた要求に応えて、生成した中間データの先頭ページから順に、Nページ分と印刷設定とを補助プログラム42に渡して、補助プログラム42の処理の実行命令を出力し、補助プログラム42を動作させる(矢印H)。矢印Hの処理によって、補助プログラム42は中間データを受け取る。矢印Hの処理は、画像データ受け取り処理の一例である。補助プログラム42は、画像をNページ単位で受け取ることで、1ページずつ画像を受け取る場合と比較して、汎用印刷プログラム41とのやり取りが少なく、補助プログラム42の処理がシンプルになる。
補助プログラム42は、受け取ったNページ分の中間データに基づいて、それぞれの画像を縮小した中間データを生成し(矢印I)、Nin1印刷となる適切な位置に配置して合成する(矢印J)。矢印Jの処理は、合成処理の一例である。補助プログラム42は、矢印Iと矢印JをN回繰り返すことで、シート1面分の中間データを生成する。
補助プログラム42は、例えば、Nが4であれば、4ページ分の中間データを各辺が1/2のサイズとなるようにそれぞれ縮小し、縮小済み4つの中間データを1面内の4箇所に並べて合成し、1つの中間データを生成する。縮小と配置とは逆順でも良い。なお、補助プログラム42は、配置の際に必要に応じて、画像の90度あるいは270度の回転を行う。補助プログラム42は、シート1面分の中間データの生成が終了したら、汎用印刷プログラム41に終了通知を渡す(矢印K)。
汎用印刷プログラム41は、補助プログラム42からの終了通知を受けて、補助プログラム42に実行命令を渡す(矢印L)。矢印Lの実行命令は、生成済みの中間データに基づく印刷データの生成を要求する命令である。補助プログラム42は、生成したシート1面分の中間データを用いて、シート1面分の印刷データを生成する(矢印M)。矢印Mの処理は、第1のラスタライズ処理の一例である。矢印Kの処理と矢印Lの処理は、汎用印刷プログラム41と補助プログラム42との間での取り決めにより省略されても良い。
矢印Mでは、補助プログラム42は、中間データをラスタライズして印刷データを生成する。矢印Mにて生成される印刷データは、プリンタ2にて印刷に使用できる形式のデータであり、例えば、プリンタ2のモデルに専用のPDLデータである。補助プログラム42にてラスタライズすることで、汎用印刷プログラム41にてラスタライズする場合に比較して自由度が大きく、プリンタ2での印刷に適した印刷データが生成される可能性が高い。なお、矢印Mにて生成される印刷データは、プリンタ2のモデル以外のプリンタでの印刷にも使用できる形式のデータであっても良い。
なお、中間データは、矢印Kの終了通知と共に補助プログラム42から一旦汎用印刷プログラム41に渡され、その後、汎用印刷プログラム41から補助プログラム42に渡されても良いし、矢印Kの終了通知の後も補助プログラム42にて保持されて、補助プログラム42での印刷データの生成に使用されても良い。
補助プログラム42は、生成したシート1面分の印刷データとプリンタ2を送信先とした印刷データの送信要求とを汎用印刷プログラム41に渡す(矢印N)。汎用印刷プログラム41は、矢印Nの要求に基づいて、受け取った印刷データと印刷命令とをプリンタ2に送信する(矢印O)。矢印Nの処理によって印刷データがプリンタ2に送信されることから、矢印Nの処理は、出力処理の一例である。これにより、印刷命令を受信したプリンタ2では、印刷命令に付された印刷データに従って、印刷データの画像の印刷が実行される。シート1面分の印刷データが生成されるごとにプリンタ2に送信することで、全ページ分の印刷データの生成を待って送信する場合と比較して、1枚目が印刷されるまでの待ち時間が短くなる。
なお、汎用印刷プログラム41は、矢印Fにて受け取る印刷設定にNin1印刷の設定が含まれていないことから、矢印Oでの印刷データの送信時には、Nin1印刷の設定を含まない印刷設定を付与して送信する。これにより、プリンタ2が自装置でNin1印刷の処理が可能な装置であっても、プリンタ2にてさらにNin1の処理が行われる可能性は無い。
補助プログラム42は、例えば、矢印Nでの送信要求を汎用印刷プログラム41に渡した後、プリンタ2に状況を問い合わせる信号を定期的に送信する。プリンタ2は、問い合わせに応じて状況を応答し、印刷データの受信が完了した場合には、受信完了したことを示す受信完了通知を補助プログラム42に送信する(矢印P)。受信完了通知は、受信が完了したことを示す通知であり、印刷は完了していなくても良い。なお、受信完了通知は、汎用印刷プログラム41を介して補助プログラム42に渡されても良い。
補助プログラム42は、プリンタ2から送信された受信完了通知を受け取ると、次のNページ分の中間データと補助プログラム42の実行命令との送信を汎用印刷プログラム41に要求する(矢印Q)。これにより、汎用印刷プログラム41は、次のNページ分の中間データとともに、矢印Hの実行命令を補助プログラム42に渡す。なお、2回目以降の矢印Hでは、汎用印刷プログラム41は、印刷設定を含まない実行命令を渡しても良い。
汎用印刷プログラム41は、印刷指示にて指定された画像のうち、残りのページ数が1以上N未満であった場合、矢印Hの実行命令にて、残りのページ数を示す情報と残りのページの中間データとを補助プログラム42に渡す。または、汎用印刷プログラム41は、画像の最終ページであることを示す情報を渡しても良い。補助プログラム42は、残りのページについて前述したように、画像の縮小(矢印I)と配置(矢印J)とを行い、Nページに満たない部分に空白の画像を配置して合成する。
汎用印刷プログラム41は、印刷指示の対象である全ての中間データを補助プログラム42に渡した後に、矢印Qによる実行命令の要求を受け付けた場合、全ての中間データを渡し終わっていることを示す情報を補助プログラム42に渡す(矢印R)。矢印Rで渡される情報は、例えば、中間データを添付しない実行命令であっても良い。補助プログラム42は、矢印Rの情報を受けて、終了通知を汎用印刷プログラム41に渡す(矢印S)。これにより、汎用印刷プログラム41は、編集アプリ43から矢印Bにて受け付けた印刷実行通知の処理を終了する。
なお、補助プログラム42が複数のプログラムの組み合わせであって、各プログラムからそれぞれ終了通知を行う必要がある場合には、汎用印刷プログラム41は各プログラムに対して矢印Rの通知を行っても良い。そして、補助プログラム42の各プログラムは、それぞれ汎用印刷プログラム41に矢印Sの通知を行うとよい。
以上、詳細に説明したように、本形態の補助プログラム42によれば、PC1は、Nin1印刷の印刷設定を含む印刷指示を受け付けた場合、汎用印刷プログラム41からNページ分ずつの中間データを受け取って、補助プログラム42にて画像の縮小および配置を行って、Nページ分の画像がシートの1面に収まった合成画像を生成する。これにより、汎用印刷プログラム41やプリンタ2がNin1印刷に対応していなくても、Nin1印刷による印刷物を得ることができる。さらに、補助プログラム42にて印刷データの生成を行うことから、プリンタ2の性能を活かした印刷データの生成が可能であり、1面分ずつ印刷データを送信することから、印刷指示を受け付けてから1枚目の印刷物が出力されるまでの経過時間を短くできる。
なお、第1の形態では、矢印Nにて、補助プログラム42が汎用印刷プログラム41に印刷データと送信要求を渡して、汎用印刷プログラム41がプリンタ2に送信するとしたが、例えば、図3に示すように、補助プログラム42がプリンタ2に送信しても良い。つまり、図2の矢印Nと矢印Oとに代えて、図3の例では、印刷データの生成が終了したら、補助プログラム42が、生成した1面分の印刷データをプリンタ2に送信する(矢印Oa)。矢印Oaの処理は、出力処理の一例である。このようにしても、1面分の印刷データが生成されるごとに送信されるので、1枚目の印刷までの経過時間が短い。
図3に示すように、補助プログラム42がプリンタ2に印刷データを送信する場合、補助プログラム42は、プリンタ2に状況を問い合わせる信号を定期的に送信する必要はなく、送信終了後に1度問い合わせるだけでよい。さらに、補助プログラム42は、印刷データの送信後、印刷データの送信成否の情報だけでなく、プリンタ2のステータスに関する情報を受け取って、OS21に渡してもよい。
また、印刷データの生成は、汎用印刷プログラム41が行っても良い。例えば、図4に示すように、終了通知にて合成後の中間データを汎用印刷プログラム41に渡し(矢印Ka)、図2の矢印Lと矢印Mに代えて、汎用印刷プログラム41が受け取った中間データに基づいて印刷データを生成する(矢印T)としても良い。矢印Tの処理は、図2の矢印Mとは異なる処理である。汎用印刷プログラム41によって生成される印刷データは、プリンタ2を含む各種のプリンタにて印刷に使用できる形式のデータであり、例えば、PWGRasterデータ、PDFデータである。汎用印刷プログラム41によってラスタライズするとすれば、補助プログラム42の処理が少なく、補助プログラム42の設計工数が抑えられる。
図4の例では、さらに、汎用印刷プログラム41は、印刷データの生成が終了した後、補助プログラム42に実行命令を渡す(矢印La)。補助プログラム42は、実行命令を受けて、汎用印刷プログラム41に送信要求を渡し(矢印Na)、汎用印刷プログラム41は、生成した印刷データをプリンタ2に送信する(矢印O)。矢印Naの送信要求では、図2の矢印Nとは異なり、補助プログラム42は、印刷データを渡さない。このようにしても、プリンタ2にてNin1印刷が実現される。
また、印刷データの生成を汎用印刷プログラム41が行い、補助プログラム42が印刷データをプリンタ2に送信しても良い。例えば、図5に示すように、汎用印刷プログラム41は、印刷データの生成が終了したら、実行命令と生成した1面分の印刷データとを補助プログラム42に渡し(矢印Lb)ても良い。この場合、図4の矢印Naと矢印Oとに代えて、補助プログラム42が、受け取った1面分の印刷データをプリンタ2に送信する(矢印Oa)。このようにしても、プリンタ2にてNin1印刷が実現される。
次に、第2の形態の補助プログラム42の動作を含む印刷手順について、図6のシーケンス図を参照して説明する。本形態は、印刷データの生成や送信の手順が第1の形態とは異なる。図6および以下の説明では、第1の形態と同じ処理については、同じ符号を付して説明を省略する。また、第1の形態の処理と同様であって異なる処理には、小文字の添え字を付けた符号として、第1の形態との違いを説明する。
本形態では、まず、矢印A~Gの処理を実行する。ただし、本形態の補助プログラム42は、Nページ分の画像データを要求する通知(図2の矢印E)に代えて、印刷対象の全てのページの画像データを要求する通知(矢印Ea)を行う。そして、汎用印刷プログラム41は、中間データを生成(矢印G)した後、全ページの中間データと印刷設定とを添付して補助プログラム42に実行命令を渡す(矢印Ha)。矢印Haの処理によって、補助プログラム42は中間データを受け取る。矢印Haの処理は、画像データ受け取り処理の一例である。
補助プログラム42は、受け取った全ページ分の中間データに対して、先頭ページからNページ分ごとに、画像の縮小(矢印I)と配置(矢印J)とを行って、シート1面分の中間データを生成する。補助プログラム42は、縮小と配置とによって合成した中間データを生成する処理を繰り返して行い、受け取った全ページ分の中間データに基づいて、全シート分の中間データを生成する。本形態でも矢印Jの処理は、合成処理の一例である。
補助プログラム42は、全シート分の中間データの生成が終了したら、汎用印刷プログラム41に終了通知を渡す(矢印Kb)。矢印Kbの終了通知では、補助プログラム42は、生成した全シート分の中間データを汎用印刷プログラム41に渡す。矢印Kbの終了通知を受けて、汎用印刷プログラム41は、受け取った中間データに基づいて全シート分の印刷データを生成する(矢印Ta)。
印刷データの生成が終了したら、汎用印刷プログラム41は、補助プログラム42に実行命令を渡す(矢印Lc)。矢印Lcの実行命令は、全シート分の印刷データの生成が終了したことを通知する情報であり、次の送信要求(矢印Na)を要求する情報である。補助プログラム42は、矢印Lcの実行命令を受けて、プリンタ2を送信先とした送信要求を渡す(矢印Na)。矢印Naの送信要求では、補助プログラム42は、印刷データを渡さない。また、矢印Kbの終了通知にて、印刷データの生成と送信とを纏めて要求できる場合には、矢印Lcと矢印Naの処理を省略しても良い。
汎用印刷プログラム41は、矢印Naの送信要求を受けて、矢印Taで生成した全シート分の印刷データをプリンタ2に送信する(矢印Ob)。矢印Obの処理は、出力処理の一例である。本形態では、全ページの画像分の印刷データの生成を待って送信するため、1面分の印刷データの生成完了の度に送信する第1の形態と比較して最終ページの把握が容易であり、プリンタ2との通信回数が少なくて済むことから、処理がシンプルになる。
プリンタ2は、印刷データを受信すると、受信完了したことを示す通知を補助プログラム42に送信する(矢印P)。補助プログラム42は、矢印Pの通知を受けて、終了通知を汎用印刷プログラム41に渡す(矢印S)。なお、本形態では、矢印Pと矢印Sの通知は、無くても良い。
以上、詳細に説明したように、本形態の補助プログラム42によれば、PC1は、Nin1印刷の印刷設定を含む印刷指示を受け付けた場合、補助プログラム42は、汎用印刷プログラム41から全ページの中間データを受け取って、全シート分の中間データを生成して汎用印刷プログラム41に渡す。これにより、汎用印刷プログラム41やプリンタ2がNin1印刷に対応していなくても、Nin1印刷による印刷物を得ることができる。さらに、本形態の補助プログラム42は、印刷対象の複数ページの画像を全てまとめて受け取り、全ページ分の画像に対する合成画像の生成が完了した後、汎用印刷プログラム41に応答するため、汎用印刷プログラム41とのやり取りが少なく、処理がシンプルになる。
本形態でも、第1の形態と同様に、複数のバリエーションがある。例えば、図7に示すように、補助プログラム42が印刷データの送信を行っても良い。汎用印刷プログラム41は、矢印Taにて印刷データの生成が終了したら、生成した全シート分の印刷データを含む実行命令を補助プログラム42に渡す(矢印Ld)。補助プログラム42は、受け取った印刷データをプリンタ2に送信する(矢印Oc)。矢印Ocの処理は、出力処理の一例である。このようにしても、全ページの画像分の印刷データの生成を待って送信するため、プリンタ2との通信回数が少ない。
また、補助プログラム42が印刷データの生成を行っても良い。例えば、図8に示すように、補助プログラム42は、合成画像の生成後、合成した中間データを含まない終了通知を渡す(矢印Kc)。汎用印刷プログラム41は、矢印Kcの終了通知を受けて、補助プログラム42に実行命令を渡す(矢印Le)。補助プログラム42は、矢印Leの実行命令を受けて、生成した全シート分の中間データに基づいて、全シート分の印刷データを生成する(矢印Ma)。矢印Maの処理は、第2のラスタライズ処理の一例である。
そして、補助プログラム42は、生成した全シート分の印刷データとともに送信要求を汎用印刷プログラム41に渡し(矢印Nb)、汎用印刷プログラム41がプリンタ2に全シート分の印刷データを送信する(矢印Ob)。このようにすれば、補助プログラム42がラスタライズすることから、プリンタ2に適した印刷データを生成できる。
また、補助プログラム42が印刷データの生成とプリンタ2への送信とを行っても良い。例えば、図9に示すように、汎用印刷プログラム41は、矢印Kcの終了通知を受けて、補助プログラム42に実行命令を渡す(矢印Le)。補助プログラム42は、矢印Leの実行命令を受けて、全シート分の印刷データを生成する(矢印Ma)。さらに、補助プログラム42は、生成した印刷データをプリンタ2へ送信する(矢印Oc)。このようにすれば、プリンタ2に適した印刷データを生成でき、通信回数が少ない。
次に、第3の形態の補助プログラム42の動作を含む印刷手順について、図10のシーケンス図を参照して説明する。本形態は、印刷データの生成手順が第1の形態や第2の形態とは異なる。図10および以下の説明では、第1の形態と同じ処理については、同じ符号を付して説明を省略する。また、第1の形態や第2の形態の処理と同様であって異なる処理には、小文字の添え字を付けた符号を付して、各形態との違いを説明する。
本形態では、まず、矢印A~Gの処理を実行する。ただし、本形態の補助プログラム42は、Nページ分の画像データを要求する通知(図2の矢印E)は行わない。そして、汎用印刷プログラム41は、中間データを生成した後、補助プログラム42に実行命令と印刷設定とを渡す(矢印Hb)。中間データの要求が行われていないことから、矢印Hbの実行命令では、第1の形態の矢印Hや第2の形態の矢印Haとは異なり、中間データは添付されない。
補助プログラム42は、矢印Hbの実行命令を受けて、まず1ページ分の中間データを汎用印刷プログラム41に要求する(矢印Eb)。汎用印刷プログラム41は、補助プログラム42からの要求に応えて、1ページ分の中間データを渡す(矢印Hc)。矢印Hcの処理によって、補助プログラム42は中間データを受け取る。矢印Hcの処理は、画像データ受け取り処理の一例である。なお、汎用印刷プログラム41が、要求しなくても1ページ分ずつ中間データを渡す構成であれば、矢印Ebの要求は行わなくても良い。
補助プログラム42は、受け取った1ページ分の中間データの画像を縮小し(矢印I)、適切な位置に配置して合成する(矢印J)。補助プログラム42は、矢印Eb、Hc、I、Jの各処理をN回繰り返し、シート1面分の中間データを生成する。この後は、第1の形態と同様に、4種類の方法がある。この図10では、第1の形態の図4に示したように、汎用印刷プログラム41が印刷データの生成と送信とを行う場合を示している(矢印Ka~P)。第1の形態で説明したように、印刷データの生成や送信の少なくとも一方を補助プログラム42が行っても良い。
補助プログラム42は、プリンタ2から送信された受信完了通知を受け取ると、補助プログラム42の実行命令の送信を汎用印刷プログラム41に要求する(矢印Qa)。本形態では、補助プログラム42は、矢印Qaにて中間データの要求を行わない。
汎用印刷プログラム41は、全ての中間データを補助プログラム42に渡した後に、矢印Qaによる実行命令の要求を受け付けた場合、全ての中間データを渡し終わっていることを示す情報を補助プログラム42に渡す(矢印R)。補助プログラム42は、矢印Rの情報を受けて、終了通知を汎用印刷プログラム41に渡す(矢印S)。これにより、汎用印刷プログラム41は、編集アプリ43から矢印Bにて受け付けた印刷実行通知の処理を終了する。
以上、詳細に説明したように、第3の形態の補助プログラム42によっても、Nin1印刷による印刷物を得ることができる。本形態によれば、汎用印刷プログラム41が、中間データを1ページ分ずつ補助プログラム42に渡す構成であって、Nページ分または全ページ分をまとめて渡す要求を受け付けない場合であっても、Nin1印刷を実現できる。さらに、汎用印刷プログラム41にて印刷データの生成を行えば、補助プログラム42を簡素なものとでき、印刷データを1面分ごとにプリンタ2に送信すれば、印刷指示を受け付けてから1枚目の印刷物が出力されるまでの経過時間を短くできる。
なお、本明細書に開示される実施の形態は単なる例示にすぎず、本発明を何ら限定するものではない。したがって本明細書に開示される技術は当然に、その要旨を逸脱しない範囲内で種々の改良、変形が可能である。例えば、PC1に接続される装置は、プリンタに限らず、複合機、複写機、FAX装置、等印刷機能を有する装置であればよい。また、PC1に接続されるプリンタは、2台以上でもよい。
また、各実施の形態では、補助プログラム42の動作として、Nin1印刷に関する処理のみを記載しているが、補助プログラム42は、さらに他の役割を有していても良い。例えば、Nin1印刷以外の印刷設定については、汎用印刷プログラム41にて処理可能な印刷設定については汎用印刷プログラム41にて処理を行い、汎用印刷プログラム41にて処理できない印刷設定については補助プログラム42にて処理を行うとしても良い。
また、補助プログラム42は、汎用印刷プログラム41を用いた印刷を行う際に、OS21または汎用印刷プログラム41から指示を受け付けるプログラムであればよい。例えば、マイクロソフト社が仕様公開した印刷ワークフロー アプリ(Print workflow)でも良い。
また、実施の形態では、汎用印刷プログラム41から補助プログラム42の実行命令が出力されることで、補助プログラム42が実行されるとしているが、補助プログラム42の実行タイミングはこれに限らない。例えば、OS21から直接に実行命令を受け付けて実行されても良く、または、常駐される補助プログラム42であっても良い。常駐される場合には、補助プログラム42は、実行命令を受けて前述した動作を行うとすれば良い。
また、実施の形態に開示されている任意のフローチャートにおいて、任意の複数のステップにおける複数の処理は、処理内容に矛盾が生じない範囲で、任意に実行順序を変更できる、または並列に実行できる。
また、実施の形態に開示されている処理は、単一のCPU、複数のCPU、ASICなどのハードウェア、またはそれらの組み合わせで実行されてもよい。また、実施の形態に開示されている処理は、その処理を実行するためのプログラムを記録した記録媒体、または方法等の種々の態様で実現することができる。
1 PC
2 プリンタ
11 CPU
21 OS
41 汎用印刷プログラム
42 補助プログラム
43 編集アプリ

Claims (13)

  1. 情報処理装置のコンピュータによって実行可能であり、前記情報処理装置と接続するプリンタに対応するサポートプログラムであって、
    前記コンピュータに、
    前記情報処理装置に組み込まれているアプリケーションプログラムから出力された印刷指示であって、前記情報処理装置のオペレーティングシステムにあらかじめ組み込まれた汎用印刷プログラムに対して、画像の印刷を前記プリンタに行わせる前記印刷指示があり、前記印刷指示に基づくジョブにおいて、N(Nは2以上の自然数)ページ分の画像を用紙の1面分に印刷する集約印刷を前記プリンタに実行させる場合、
    複数ページの画像についての画像データを前記汎用印刷プログラムから受け取る画像データ受け取り処理と、
    前記画像データ受け取り処理にて受け取った画像データについて、前記複数ページの画像を縮小し、前記Nページ分の画像を用紙の1面に収まるように配置した合成画像を示す合成画像データを生成する合成処理と、
    前記合成画像データに基づいてラスタライズされた印刷データを、前記プリンタを送信先として前記情報処理装置に送信させるための出力処理と、
    を実行させ、
    前記コンピュータに、さらに、
    前記合成処理によって用紙1面分の前記合成画像データが生成される度に、生成された前記合成画像データをラスタライズして前記印刷データを生成する第1のラスタライズ処理を実行させ、
    前記出力処理では、
    前記第1のラスタライズ処理にて用紙1面分の前記印刷データが生成される度に、生成された用紙1面分の前記印刷データを、前記汎用印刷プログラムに渡し、前記汎用印刷プログラムは、渡された前記印刷データを、前記プリンタに送信する、
    ことを特徴とするサポートプログラム。
  2. 情報処理装置のコンピュータによって実行可能であり、前記情報処理装置と接続するプリンタに対応するサポートプログラムであって、
    前記コンピュータに、
    前記情報処理装置に組み込まれているアプリケーションプログラムから出力された印刷指示であって、前記情報処理装置のオペレーティングシステムにあらかじめ組み込まれた汎用印刷プログラムに対して、画像の印刷を前記プリンタに行わせる前記印刷指示があり、前記印刷指示に基づくジョブにおいて、N(Nは2以上の自然数)ページ分の画像を用紙の1面分に印刷する集約印刷を前記プリンタに実行させる場合、
    複数ページの画像についての画像データを前記汎用印刷プログラムから受け取る画像データ受け取り処理と、
    前記画像データ受け取り処理にて受け取った画像データについて、前記複数ページの画像を縮小し、前記Nページ分の画像を用紙の1面に収まるように配置した合成画像を示す合成画像データを生成する合成処理と、
    前記合成画像データに基づいてラスタライズされた印刷データを、前記プリンタを送信先として前記情報処理装置に送信させるための出力処理と、
    を実行させ、
    前記出力処理では、
    前記合成処理によって用紙1面分の前記合成画像データが生成される度に、生成された前記合成画像データを前記汎用印刷プログラムに渡し、前記汎用印刷プログラムは、渡された前記合成画像データをラスタライズして前記印刷データを生成し、生成した前記印刷データを、前記プリンタに送信する、
    ことを特徴とするサポートプログラム。
  3. 情報処理装置のコンピュータによって実行可能であり、前記情報処理装置と接続するプリンタに対応するサポートプログラムであって、
    前記コンピュータに、
    前記情報処理装置に組み込まれているアプリケーションプログラムから出力された印刷指示であって、前記情報処理装置のオペレーティングシステムにあらかじめ組み込まれた汎用印刷プログラムに対して、画像の印刷を前記プリンタに行わせる前記印刷指示があり、前記印刷指示に基づくジョブにおいて、N(Nは2以上の自然数)ページ分の画像を用紙の1面分に印刷する集約印刷を前記プリンタに実行させる場合、
    複数ページの画像についての画像データを前記汎用印刷プログラムから受け取る画像データ受け取り処理と、
    前記画像データ受け取り処理にて受け取った画像データについて、前記複数ページの画像を縮小し、前記Nページ分の画像を用紙の1面に収まるように配置した合成画像を示す合成画像データを生成する合成処理と、
    前記合成画像データに基づいてラスタライズされた印刷データを、前記プリンタを送信先として前記情報処理装置に送信させるための出力処理と、
    を実行させ、
    前記出力処理では、
    前記合成処理によって用紙1面分の前記合成画像データが生成される度に、生成された前記合成画像データを前記汎用印刷プログラムに渡し、さらに前記汎用印刷プログラムによって前記合成画像データがラスタライズされた前記印刷データを受け取り、受け取った前記印刷データを、前記プリンタに送信する、
    ことを特徴とするサポートプログラム。
  4. 請求項1から請求項3のいずれか1つに記載するサポートプログラムにおいて、
    前記画像データ受け取り処理では、
    前記汎用印刷プログラムに対して前記Nページごとの画像についての画像データの入力を要求し、前記汎用印刷プログラムから前記Nページごとに画像データを受け取る、
    ことを特徴とするサポートプログラム。
  5. 情報処理装置のコンピュータによって実行可能であり、前記情報処理装置と接続するプリンタに対応するサポートプログラムであって、
    前記コンピュータに、
    前記情報処理装置に組み込まれているアプリケーションプログラムから出力された印刷指示であって、前記情報処理装置のオペレーティングシステムにあらかじめ組み込まれた汎用印刷プログラムに対して、画像の印刷を前記プリンタに行わせる前記印刷指示があり、前記印刷指示に基づくジョブにおいて、N(Nは2以上の自然数)ページ分の画像を用紙の1面分に印刷する集約印刷を前記プリンタに実行させる場合、
    複数ページの画像についての画像データを前記汎用印刷プログラムから受け取る画像データ受け取り処理と、
    前記画像データ受け取り処理にて受け取った画像データについて、前記複数ページの画像を縮小し、前記Nページ分の画像を用紙の1面に収まるように配置した合成画像を示す合成画像データを生成する合成処理と、
    前記合成画像データに基づいてラスタライズされた印刷データを、前記プリンタを送信先として前記情報処理装置に送信させるための出力処理と、
    を実行させ、
    前記出力処理では、
    前記合成処理によって生成された前記複数ページの画像分の前記合成画像データを取得し、取得した前記複数ページの画像分の前記合成画像データを前記汎用印刷プログラムに渡し、前記汎用印刷プログラムは、渡された前記複数ページの画像分の前記合成画像データをラスタライズして前記印刷データを生成し、前記複数ページの画像分の前記印刷データの生成が完了した後、生成された前記複数ページの画像分の前記印刷データを前記プリンタに送信する、
    ことを特徴とするサポートプログラム。
  6. 情報処理装置のコンピュータによって実行可能であり、前記情報処理装置と接続するプリンタに対応するサポートプログラムであって、
    前記コンピュータに、
    前記情報処理装置に組み込まれているアプリケーションプログラムから出力された印刷指示であって、前記情報処理装置のオペレーティングシステムにあらかじめ組み込まれた汎用印刷プログラムに対して、画像の印刷を前記プリンタに行わせる前記印刷指示があり、前記印刷指示に基づくジョブにおいて、N(Nは2以上の自然数)ページ分の画像を用紙の1面分に印刷する集約印刷を前記プリンタに実行させる場合、
    複数ページの画像についての画像データを前記汎用印刷プログラムから受け取る画像データ受け取り処理と、
    前記画像データ受け取り処理にて受け取った画像データについて、前記複数ページの画像を縮小し、前記Nページ分の画像を用紙の1面に収まるように配置した合成画像を示す合成画像データを生成する合成処理と、
    前記合成画像データに基づいてラスタライズされた印刷データを、前記プリンタを送信先として前記情報処理装置に送信させるための出力処理と、
    を実行させ、
    前記出力処理では、
    前記合成処理によって生成された前記複数ページの画像分の前記合成画像データを取得し、取得した前記複数ページの画像分の前記合成画像データを前記汎用印刷プログラムに渡し、さらに前記汎用印刷プログラムによって前記合成画像データがラスタライズされた前記印刷データを受け取り、前記複数ページの画像分の前記印刷データを受け取った後、受け取った前記複数ページの画像分の前記印刷データを前記プリンタに送信する、
    ことを特徴とするサポートプログラム。
  7. 情報処理装置のコンピュータによって実行可能であり、前記情報処理装置と接続するプリンタに対応するサポートプログラムであって、
    前記コンピュータに、
    前記情報処理装置に組み込まれているアプリケーションプログラムから出力された印刷指示であって、前記情報処理装置のオペレーティングシステムにあらかじめ組み込まれた汎用印刷プログラムに対して、画像の印刷を前記プリンタに行わせる前記印刷指示があり、前記印刷指示に基づくジョブにおいて、N(Nは2以上の自然数)ページ分の画像を用紙の1面分に印刷する集約印刷を前記プリンタに実行させる場合、
    複数ページの画像についての画像データを前記汎用印刷プログラムから受け取る画像データ受け取り処理と、
    前記画像データ受け取り処理にて受け取った画像データについて、前記複数ページの画像を縮小し、前記Nページ分の画像を用紙の1面に収まるように配置した合成画像を示す合成画像データを生成する合成処理と、
    前記合成画像データに基づいてラスタライズされた印刷データを、前記プリンタを送信先として前記情報処理装置に送信させるための出力処理と、
    を実行させ、
    前記コンピュータに、さらに、
    前記合成処理によって生成された前記複数ページの画像分の前記合成画像データを取得し、取得した前記合成画像データをラスタライズして前記複数ページの画像分の前記印刷データを生成する第2のラスタライズ処理を実行させ、
    前記出力処理では、
    前記第2のラスタライズ処理にて前記複数ページの画像分の前記印刷データの生成が完了した後、生成された前記複数ページの画像分の前記印刷データを、前記汎用印刷プログラムに渡し、前記汎用印刷プログラムは、渡された前記印刷データを、前記プリンタに送信する、
    ことを特徴とするサポートプログラム。
  8. 請求項5から請求項7のいずれか1つに記載するサポートプログラムにおいて、
    前記画像データ受け取り処理では、
    前記汎用印刷プログラムに対して前記複数ページの全ての画像についての画像データの入力を要求し、
    前記コンピュータに、
    前記合成処理にて前記全ての画像に対する前記合成画像データの生成を完了させた後、前記出力処理を実行させる、
    ことを特徴とするサポートプログラム。
  9. コンピュータを備える情報処理装置であって、
    前記情報処理装置のオペレーティングシステムは、あらかじめ組み込まれたプログラムである汎用印刷プログラムを有しており、
    前記情報処理装置には、前記情報処理装置と接続するプリンタに対応するサポートプログラムと、前記汎用印刷プログラムを介して前記プリンタに画像の印刷を行わせる印刷指示の入力が可能なアプリケーションプログラムと、が組み込まれており、
    前記コンピュータは、
    前記アプリケーションプログラムから出力された前記印刷指示があり、前記印刷指示に基づくジョブにおいて、N(Nは2以上の自然数)ページ分の画像を用紙の1面分に印刷する集約印刷を前記プリンタに実行させる場合、
    前記サポートプログラムによって、複数ページの画像についての画像データを前記汎用印刷プログラムから受け取る画像データ受け取り処理と、
    前記サポートプログラムによって、前記画像データ受け取り処理にて受け取った画像データについて、前記複数ページの画像を縮小し、前記Nページ分の画像を用紙の1面に収まるように配置した合成画像を示す合成画像データを生成する合成処理と、
    前記サポートプログラムによって、前記合成画像データに基づいてラスタライズされた印刷データを、前記プリンタを送信先として前記情報処理装置に送信させるための出力処理と、
    を実行し、
    前記コンピュータは、さらに、
    前記合成処理によって用紙1面分の前記合成画像データが生成される度に、生成された前記合成画像データをラスタライズして前記印刷データを生成する第1のラスタライズ処理を実行し、
    前記出力処理では、
    前記第1のラスタライズ処理にて用紙1面分の前記印刷データが生成される度に、生成された用紙1面分の前記印刷データを、前記汎用印刷プログラムに渡し、前記汎用印刷プログラムは、渡された前記印刷データを、前記プリンタに送信する、
    ことを特徴とする情報処理装置。
  10. コンピュータを備える情報処理装置であって、
    前記情報処理装置のオペレーティングシステムは、あらかじめ組み込まれたプログラムである汎用印刷プログラムを有しており、
    前記情報処理装置には、前記情報処理装置と接続するプリンタに対応するサポートプログラムと、前記汎用印刷プログラムを介して前記プリンタに画像の印刷を行わせる印刷指示の入力が可能なアプリケーションプログラムと、が組み込まれており、
    前記コンピュータは、
    前記アプリケーションプログラムから出力された前記印刷指示があり、前記印刷指示に基づくジョブにおいて、N(Nは2以上の自然数)ページ分の画像を用紙の1面分に印刷する集約印刷を前記プリンタに実行させる場合、
    前記サポートプログラムによって、複数ページの画像についての画像データを前記汎用印刷プログラムから受け取る画像データ受け取り処理と、
    前記サポートプログラムによって、前記画像データ受け取り処理にて受け取った画像データについて、前記複数ページの画像を縮小し、前記Nページ分の画像を用紙の1面に収まるように配置した合成画像を示す合成画像データを生成する合成処理と、
    前記サポートプログラムによって、前記合成画像データに基づいてラスタライズされた印刷データを、前記プリンタを送信先として前記情報処理装置に送信させるための出力処理と、
    を実行し、
    前記出力処理では、
    前記合成処理によって用紙1面分の前記合成画像データが生成される度に、生成された前記合成画像データを前記汎用印刷プログラムに渡し、前記汎用印刷プログラムは、渡された前記合成画像データをラスタライズして前記印刷データを生成し、生成した前記印刷データを、前記プリンタに送信する、
    ことを特徴とする情報処理装置。
  11. コンピュータを備える情報処理装置であって、
    前記情報処理装置のオペレーティングシステムは、あらかじめ組み込まれたプログラムである汎用印刷プログラムを有しており、
    前記情報処理装置には、前記情報処理装置と接続するプリンタに対応するサポートプログラムと、前記汎用印刷プログラムを介して前記プリンタに画像の印刷を行わせる印刷指示の入力が可能なアプリケーションプログラムと、が組み込まれており、
    前記コンピュータは、
    前記アプリケーションプログラムから出力された前記印刷指示があり、前記印刷指示に基づくジョブにおいて、N(Nは2以上の自然数)ページ分の画像を用紙の1面分に印刷する集約印刷を前記プリンタに実行させる場合、
    前記サポートプログラムによって、複数ページの画像についての画像データを前記汎用印刷プログラムから受け取る画像データ受け取り処理と、
    前記サポートプログラムによって、前記画像データ受け取り処理にて受け取った画像データについて、前記複数ページの画像を縮小し、前記Nページ分の画像を用紙の1面に収まるように配置した合成画像を示す合成画像データを生成する合成処理と、
    前記サポートプログラムによって、前記合成画像データに基づいてラスタライズされた印刷データを、前記プリンタを送信先として前記情報処理装置に送信させるための出力処理と、
    を実行し、
    前記出力処理では、
    前記合成処理によって生成された前記複数ページの画像分の前記合成画像データを取得し、取得した前記複数ページの画像分の前記合成画像データを前記汎用印刷プログラムに渡し、前記汎用印刷プログラムは、渡された前記複数ページの画像分の前記合成画像データをラスタライズして前記印刷データを生成し、前記複数ページの画像分の前記印刷データの生成が完了した後、生成された前記複数ページの画像分の前記印刷データを前記プリンタに送信する、
    ことを特徴とする情報処理装置。
  12. コンピュータを備える情報処理装置であって、
    前記情報処理装置のオペレーティングシステムは、あらかじめ組み込まれたプログラムである汎用印刷プログラムを有しており、
    前記情報処理装置には、前記情報処理装置と接続するプリンタに対応するサポートプログラムと、前記汎用印刷プログラムを介して前記プリンタに画像の印刷を行わせる印刷指示の入力が可能なアプリケーションプログラムと、が組み込まれており、
    前記コンピュータは、
    前記アプリケーションプログラムから出力された前記印刷指示があり、前記印刷指示に基づくジョブにおいて、N(Nは2以上の自然数)ページ分の画像を用紙の1面分に印刷する集約印刷を前記プリンタに実行させる場合、
    前記サポートプログラムによって、複数ページの画像についての画像データを前記汎用印刷プログラムから受け取る画像データ受け取り処理と、
    前記サポートプログラムによって、前記画像データ受け取り処理にて受け取った画像データについて、前記複数ページの画像を縮小し、前記Nページ分の画像を用紙の1面に収まるように配置した合成画像を示す合成画像データを生成する合成処理と、
    前記サポートプログラムによって、前記合成画像データに基づいてラスタライズされた印刷データを、前記プリンタを送信先として前記情報処理装置に送信させるための出力処理と、
    を実行し、
    前記コンピュータは、さらに、
    前記合成処理によって生成された前記複数ページの画像分の前記合成画像データを取得し、取得した前記合成画像データをラスタライズして前記複数ページの画像分の前記印刷データを生成する第2のラスタライズ処理を実行し、
    前記出力処理では、
    前記第2のラスタライズ処理にて前記複数ページの画像分の前記印刷データの生成が完了した後、生成された前記複数ページの画像分の前記印刷データを、前記汎用印刷プログラムに渡し、前記汎用印刷プログラムは、渡された前記印刷データを、前記プリンタに送信する、
    ことを特徴とする情報処理装置。
  13. 情報処理装置にプリンタが接続され、
    前記情報処理装置のオペレーティングシステムは、あらかじめ組み込まれたプログラムである汎用印刷プログラムを有しており、
    前記情報処理装置には、前記情報処理装置と接続する前記プリンタに対応するサポートプログラムと、前記汎用印刷プログラムを介して前記プリンタに画像の印刷を行わせる印刷指示の入力が可能なアプリケーションプログラムと、が組み込まれており、
    前記情報処理装置で生成された印刷データに基づく印刷を、前記プリンタに実行させる印刷方法において、
    前記アプリケーションプログラムから出力された前記印刷指示があり、前記印刷指示に基づくジョブにおいて、N(Nは2以上の自然数)ページ分の画像を用紙の1面分に印刷する集約印刷を前記プリンタに実行させる場合、
    前記サポートプログラムによって、複数ページの画像についての画像データを前記汎用印刷プログラムから受け取り、
    前記サポートプログラムによって、受け取った画像データについて、前記複数ページの画像を縮小し、前記Nページ分の画像を用紙の1面に収まるように配置した合成画像を示す合成画像データを生成し、
    前記サポートプログラムによって、用紙1面分の前記合成画像データが生成される度に、生成された前記合成画像データをラスタライズして印刷データを生成し、
    前記サポートプログラムによって、用紙1面分の前記印刷データが生成される度に、生成された用紙1面分の前記印刷データを、前記汎用印刷プログラムに渡し、前記汎用印刷プログラムによって、渡された前記印刷データを、前記プリンタに送信する、
    ことを特徴とする印刷方法。
JP2019179043A 2019-09-30 2019-09-30 サポートプログラム、情報処理装置、および印刷方法 Active JP7490936B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2019179043A JP7490936B2 (ja) 2019-09-30 2019-09-30 サポートプログラム、情報処理装置、および印刷方法
CN202080066605.4A CN114424159A (zh) 2019-09-30 2020-07-01 支援程序、信息处理装置及打印方法
PCT/JP2020/025801 WO2021065125A1 (ja) 2019-09-30 2020-07-01 サポートプログラム、情報処理装置、および印刷方法
US17/215,073 US11604613B2 (en) 2019-09-30 2021-03-29 Support program for driverless general-purpose print program, information processing device, and printing method for aggregate printing

Applications Claiming Priority (1)

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

Publications (2)

Publication Number Publication Date
JP2021056755A JP2021056755A (ja) 2021-04-08
JP7490936B2 true JP7490936B2 (ja) 2024-05-28

Family

ID=75270771

Family Applications (1)

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

Country Status (4)

Country Link
US (1) US11604613B2 (ja)
JP (1) JP7490936B2 (ja)
CN (1) CN114424159A (ja)
WO (1) WO2021065125A1 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2023147323A (ja) 2022-03-30 2023-10-13 ブラザー工業株式会社 サポートプログラム

Citations (6)

* 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 画像形成装置及び画像形成用プログラム
JP2009301291A (ja) 2008-06-12 2009-12-24 Konica Minolta Business Technologies Inc 画像形成システム
JP2013041449A (ja) 2011-08-17 2013-02-28 Ricoh Co Ltd 印刷制御プログラム、情報処理装置及び記録媒体
JP2013225283A (ja) 2012-03-21 2013-10-31 Ricoh Co Ltd 印刷制御プログラム、情報処理装置及び記録媒体
JP2015170295A (ja) 2014-03-10 2015-09-28 キヤノン株式会社 画像形成出力の出力設定を行う情報処理装置およびその制御方法

Family Cites Families (7)

* 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
US7843582B2 (en) * 2005-08-31 2010-11-30 Sharp Laboratories Of America, Inc. Systems and methods for driverless N-up and duplexed imaging
JP5413077B2 (ja) * 2009-09-14 2014-02-12 株式会社リコー 情報処理システム、画像形成装置、情報処理装置、情報処理方法、及びプログラム
JP5631925B2 (ja) * 2012-04-27 2014-11-26 京セラドキュメントソリューションズ株式会社 画像形成装置
JP6225864B2 (ja) * 2014-09-30 2017-11-08 京セラドキュメントソリューションズ株式会社 携帯通信端末及び画像形成システム
JP6607042B2 (ja) 2016-01-04 2019-11-20 コニカミノルタ株式会社 画像形成装置 画像形成方法およびプログラム
JP7186528B2 (ja) * 2018-07-06 2022-12-09 キヤノン株式会社 プログラム、情報処理装置およびその制御方法

Patent Citations (6)

* 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 画像形成装置及び画像形成用プログラム
JP2009301291A (ja) 2008-06-12 2009-12-24 Konica Minolta Business Technologies Inc 画像形成システム
JP2013041449A (ja) 2011-08-17 2013-02-28 Ricoh Co Ltd 印刷制御プログラム、情報処理装置及び記録媒体
JP2013225283A (ja) 2012-03-21 2013-10-31 Ricoh Co Ltd 印刷制御プログラム、情報処理装置及び記録媒体
JP2015170295A (ja) 2014-03-10 2015-09-28 キヤノン株式会社 画像形成出力の出力設定を行う情報処理装置およびその制御方法

Also Published As

Publication number Publication date
US20210216250A1 (en) 2021-07-15
JP2021056755A (ja) 2021-04-08
WO2021065125A1 (ja) 2021-04-08
CN114424159A (zh) 2022-04-29
US11604613B2 (en) 2023-03-14

Similar Documents

Publication Publication Date Title
JP5854654B2 (ja) プリントシステム、印刷方法、プリントサーバ、制御方法、及びプログラム
JP7355147B2 (ja) アプリケーションプログラム
JP2010160617A (ja) プリンタサーバ、画像形成装置およびこれらを用いた印刷システムとその制御方法ならびにプログラムおよび記録媒体
JP7405217B2 (ja) サポートプログラム、情報処理装置、および印刷方法
JP7415521B2 (ja) サポートプログラム、情報処理装置、および印刷方法
JP7172672B2 (ja) アプリケーションプログラム、情報処理装置、および印刷方法
JP7435697B2 (ja) サポートプログラム、情報処理装置、および印刷方法
JP7456527B2 (ja) サポートプログラム、情報処理装置、および印刷方法
US11659125B2 (en) Non-transitory computer readable storage medium, information processing device and printing method for collate printing
JP2012181694A (ja) 情報処理装置、プリントシステム、制御方法、及び、プログラム
US11687751B2 (en) Non-transitory computer readable storage medium, information processing device and printing method storing program to support duplex printing
JP7490936B2 (ja) サポートプログラム、情報処理装置、および印刷方法
JP5929374B2 (ja) プログラムおよび情報処理装置
JP7479121B2 (ja) サポートプログラム、情報処理装置、および印刷方法
JP6111728B2 (ja) 画像形成出力制御システム、画像形成出力制御プログラム及び情報処理装置
JP7259373B2 (ja) サポートプログラム、情報処理装置、および印刷方法
JP2020126367A (ja) サポートプログラム、情報処理装置、および印刷方法
JP7490935B2 (ja) サポートプログラム、情報処理装置、および印刷方法
JP2012181695A (ja) 情報処理装置、プリントシステム、制御方法、及び、プログラム
JP7328405B2 (ja) 情報処理装置、情報処理装置の制御方法及び印刷設定アプリケーション
JP2012221198A (ja) プリントシステム
JP2021179912A (ja) サポートプログラム、情報処理装置、および印刷方法
JP2014029654A (ja) 画像形成システム、画像形成システムの制御方法、及び、コンピュータプログラム
JP2008282330A (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: 20240122

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: 7490936

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150