WO2023053934A1 - サポートプログラム - Google Patents
サポートプログラム Download PDFInfo
- Publication number
- WO2023053934A1 WO2023053934A1 PCT/JP2022/034172 JP2022034172W WO2023053934A1 WO 2023053934 A1 WO2023053934 A1 WO 2023053934A1 JP 2022034172 W JP2022034172 W JP 2022034172W WO 2023053934 A1 WO2023053934 A1 WO 2023053934A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- printer
- compression
- program
- image data
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06K—GRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
- G06K15/00—Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers
- G06K15/02—Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers using printers
- G06K15/18—Conditioning data for presenting it to the physical printing elements
- G06K15/1848—Generation of the printable image
- G06K15/1856—Generation of the printable image characterized by its workflow
- G06K15/1861—Generation of the printable image characterized by its workflow taking account of a limited available memory space or rasterization time
- G06K15/1865—Generation of the printable image characterized by its workflow taking account of a limited available memory space or rasterization time by compressing the rasterized print data
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/12—Digital output to print unit, e.g. line printer, chain printer
- G06F3/1201—Dedicated interfaces to print systems
- G06F3/1202—Dedicated interfaces to print systems specifically adapted to achieve a particular effect
- G06F3/1203—Improving or facilitating administration, e.g. print management
- G06F3/1206—Improving or facilitating administration, e.g. print management resulting in increased flexibility in input data format or job format or job type
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/12—Digital output to print unit, e.g. line printer, chain printer
- G06F3/1201—Dedicated interfaces to print systems
- G06F3/1223—Dedicated interfaces to print systems specifically adapted to use a particular technique
- G06F3/1224—Client or server resources management
- G06F3/1228—Printing driverless or using generic drivers
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/12—Digital output to print unit, e.g. line printer, chain printer
- G06F3/1201—Dedicated interfaces to print systems
- G06F3/1223—Dedicated interfaces to print systems specifically adapted to use a particular technique
- G06F3/1237—Print job management
- G06F3/1244—Job translation or job parsing, e.g. page banding
- G06F3/1245—Job translation or job parsing, e.g. page banding by conversion to intermediate or common format
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/12—Digital output to print unit, e.g. line printer, chain printer
- G06F3/1201—Dedicated interfaces to print systems
- G06F3/1278—Dedicated interfaces to print systems specifically adapted to adopt a particular infrastructure
- G06F3/1285—Remote printer device, e.g. being remote from client or server
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06K—GRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
- G06K15/00—Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers
- G06K15/02—Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers using printers
- G06K15/18—Conditioning data for presenting it to the physical printing elements
- G06K15/1835—Transforming generic data
- G06K15/1836—Rasterization
Abstract
OS標準の汎用印刷プログラムが組み込まれた情報処理装置について、OS標準の汎用印刷プログラムを経由したとしても、印刷開始の遅れを抑制できる技術を提供すること。補助プログラム42によって、PC1は、汎用印刷プログラム41に対して画像の印刷をプリンタ2に行わせる印刷指示があった場合に、汎用印刷プログラム41から印刷対象の画像を示す中間画像データを取得する。そして、取得された中間画像データに基づいてラスタライズしたラスタデータを生成し、生成されたラスタデータを圧縮する。その後、圧縮されたラスタデータに基づく印刷データを生成して、生成された印刷データをプリンタに送信する。
Description
本明細書に開示される技術分野は、プリンタの制御をサポートするサポートプログラムに関する。
従来、プリンタに送信されるデータをプリンタドライバが圧縮する技術が知られている。例えば特許文献1には、印刷データの生成とその印刷データのプリンタへの送信とをコンピュータに実行させるプリンタドライバであって、プリンタドライバがサイズの大きいイメージデータを圧縮する技術が開示されている。
近年、プリンタドライバを利用せず、オペレーティングシステム(OS)に標準に組み込まれている印刷プログラムによってプリンタを制御する技術が実用化されている。この技術では、OSがプリンタとOS標準の印刷プログラムとの関連付けを行い、以後、そのプリンタに対する印刷指示を受け付けた場合に、プリンタドライバを用いずに、OS標準の印刷プログラムによる印刷が可能になる。
しかしながら、前述したOS標準の汎用印刷プログラムでは、従来のプリンタドライバで実装されている機能の一部をサポートしていない場合がある。例えば、OS標準の汎用印刷プログラムでは、特許文献1に開示されているようなイメージデータを圧縮する機能を備えていない場合があり、プリンタへのデータ送信に時間がかかり、印刷開始が遅れることがある。
本明細書は、OS標準の汎用印刷プログラムが組み込まれた情報処理装置について、OS標準の汎用印刷プログラムを経由したとしても、印刷開始の遅れを抑制できる技術を開示する。
上述した課題の解決を目的としてなされたサポートプログラムは、
情報処理装置のコンピュータによって実行可能であり、前記情報処理装置と接続するプリンタに対応し、前記情報処理装置のオペレーティングシステムにあらかじめ組み込まれた汎用印刷プログラムをサポートするサポートプログラムであって、
前記コンピュータに、
前記情報処理装置に組み込まれているアプリケーションプログラムから出力された印刷指示であって、前記汎用印刷プログラムに対して印刷を前記プリンタに行わせる前記印刷指示があった場合に、
前記オペレーティングシステムから前記印刷指示に応じた中間画像データを取得する取得処理と、
前記取得処理によって前記オペレーティングシステムから取得された前記中間画像データに基づいてラスタライズしたラスタデータを生成する生成処理と、
前記生成処理にて生成された前記ラスタデータを圧縮する圧縮処理と、
前記圧縮処理にて圧縮された前記ラスタデータに基づく印刷データを前記プリンタに送信する送信処理と、
を実行させる、
ことを特徴としている。
情報処理装置のコンピュータによって実行可能であり、前記情報処理装置と接続するプリンタに対応し、前記情報処理装置のオペレーティングシステムにあらかじめ組み込まれた汎用印刷プログラムをサポートするサポートプログラムであって、
前記コンピュータに、
前記情報処理装置に組み込まれているアプリケーションプログラムから出力された印刷指示であって、前記汎用印刷プログラムに対して印刷を前記プリンタに行わせる前記印刷指示があった場合に、
前記オペレーティングシステムから前記印刷指示に応じた中間画像データを取得する取得処理と、
前記取得処理によって前記オペレーティングシステムから取得された前記中間画像データに基づいてラスタライズしたラスタデータを生成する生成処理と、
前記生成処理にて生成された前記ラスタデータを圧縮する圧縮処理と、
前記圧縮処理にて圧縮された前記ラスタデータに基づく印刷データを前記プリンタに送信する送信処理と、
を実行させる、
ことを特徴としている。
本明細書に開示されるサポートプログラムによれば、情報処理装置は、汎用印刷プログラムに対して印刷指示があった場合に、サポートプログラムによって、印刷対象の画像を示すラスタデータを圧縮し、その圧縮後のラスタデータに基づく印刷データをプリンタに送信する。これにより、圧縮されていないラスタデータに基づく印刷データをプリンタに送信する場合と比較して、小サイズの印刷データがプリンタに送信される。従って、印刷データの送受信に遅延が生じ難く、オペレーティングシステムの汎用印刷プログラムがデータの圧縮機能をサポートしていなくても、印刷開始の遅れを抑制できる。
上記プログラムを実現するための制御方法およびプログラムを格納するコンピュータにて読取可能な記憶媒体も、新規で有用である。
本明細書に開示される技術によれば、OS標準の汎用印刷プログラムが組み込まれた情報処理装置について、OS標準の汎用印刷プログラムを経由したとしても、印刷開始の遅れを抑制できる技術が実現される。
以下、本実施の形態のサポートプログラムを利用するパーソナルコンピュータ(以下、「PC」とする)について、添付図面を参照しつつ詳細に説明する。本明細書は、印刷機能を有するプリンタに接続されるPCにて実行されるサポートプログラムを開示する。
[全体構成]
本実施の形態のPC1は、図1に示すように、CPU11と、メモリ12と、を含むコントローラ10を備えている。PC1は、情報処理装置の一例である。CPU11は、コンピュータの一例である。また、PC1は、ユーザインタフェース(以下、「ユーザIF」とする)13と、通信インタフェース(以下、「通信IF」とする)14と、を備え、これらがコントローラ10に電気的に接続されている。なお、図1中のコントローラ10は、PC1の制御に利用されるハードウェアやソフトウェアを纏めた総称であって、実際にPC1に存在する単一のハードウェアを表すとは限らない。
本実施の形態のPC1は、図1に示すように、CPU11と、メモリ12と、を含むコントローラ10を備えている。PC1は、情報処理装置の一例である。CPU11は、コンピュータの一例である。また、PC1は、ユーザインタフェース(以下、「ユーザIF」とする)13と、通信インタフェース(以下、「通信IF」とする)14と、を備え、これらがコントローラ10に電気的に接続されている。なお、図1中のコントローラ10は、PC1の制御に利用されるハードウェアやソフトウェアを纏めた総称であって、実際にPC1に存在する単一のハードウェアを表すとは限らない。
CPU11は、メモリ12から読み出したプログラムに従って、また、ユーザの操作に基づいて、各種の処理を実行する。メモリ12には、各種のアプリケーションプログラム(以下、「アプリ」とする)を含む、各種のプログラムや各種のデータが記憶されている。メモリ12は、各種の処理が実行される際の作業領域としても利用される。CPU11が備えるバッファも、メモリの一例である。なお、メモリ12の一例は、PC1に内蔵されるROM、RAM、HDD等に限らず、CPU11が読み取り可能かつ書き込み可能なストレージ媒体、例えば、CD-ROM、DVD-ROM等の記録媒体であっても良い。
ユーザIF13は、ユーザに情報を報知するための画面を表示するハードウェアと、ユーザによる操作を受け付けるハードウェアと、を含む。なお、ユーザIF13は、情報を表示可能なディスプレイと、入力受付機能を有するマウスやキーボード等と、の組であっても良いし、表示機能と入力受付機能とを備えるタッチパネルであっても良い。
通信IF14は、プリンタ2等の外部装置と通信を行うためのハードウェアを含む。通信IF14の通信規格は、イーサネット(登録商標)、Wi-Fi(登録商標)、USBなどである。PC1は、複数の通信規格に対応する複数の通信IF14を備えていてもよい。
PC1のメモリ12には、図1に示すように、汎用印刷プログラム41を含むオペレーティングシステム(以下、「OS」とする)21と、補助プログラム42と、編集アプリ43と、が記憶されている。補助プログラム42は、サポートプログラムの一例である。
編集アプリ43は、アプリケーションプログラムの一例である。OS21は、例えば、Windows(登録商標)、macOS(登録商標)、Linux(登録商標)、iOS(登録商標)、Android(登録商標)である。
編集アプリ43は、アプリケーションプログラムの一例である。OS21は、例えば、Windows(登録商標)、macOS(登録商標)、Linux(登録商標)、iOS(登録商標)、Android(登録商標)である。
汎用印刷プログラム41は、ユーザの指示に基づいて、プリンタ2等の各種のプリンタに印刷を実行させるためのOS標準のプログラムである。本実施の形態の汎用印刷プログラム41は、印刷対象の画像データに基づいて、中間画像データを生成する機能を含むプログラムである。
汎用印刷プログラム41は、各種のプリンタのベンダによって提供される複数種類のモデルのプリンタが共通に利用できる機能をサポートしている。汎用印刷プログラム41は、各種のプリンタが固有に備える機能の全てに対応するものではなく、サポートする機能は汎用的なものに限られる。
補助プログラム42は、汎用印刷プログラム41の処理に付随してOS21からの指示に基づいて処理を実行するプログラムまたはプログラム群であり、対象のハードウェアの制御をサポートするアプリである。本実施の形態の補助プログラム42は、PC1に接続されているプリンタ2のモデルに対応するものであり、例えば、汎用印刷プログラム41を使用してプリンタ2に印刷を実行させる指示を受け付けた場合に、汎用印刷プログラム41から起動される。補助プログラム42は、例えば、プリントサポートアプリ(略称、PSA)と呼ばれる。
補助プログラム42は、汎用印刷プログラム41から複数種の命令を受け付け可能であり、受け付けた命令に基づいて、各種の処理を実行する。なお、補助プログラム42は、それぞれが実行命令を受け付ける複数のプログラムの組み合わせであっても良いし、1つのプログラムであって命令に応じてそれぞれ異なる処理を実行できるプログラムであっても良い。
補助プログラムは、プリンタのベンダによってプリンタのタイプごとに用意されるプログラムであっても良い。例えば、インクジェットプリンタ用の補助プログラムやレーザプリンタ用の補助プログラムが、それぞれ用意されても良い。PC1のOS21は、例えば、新たなプリンタがPC1に接続された場合、接続されたプリンタのタイプに応じて、適切な補助プログラムをサーバ等からダウンロードして自装置に組み込む。そして、OS21は、組み込んだ補助プログラムの識別情報を新たに接続されたプリンタのプリンタ情報に対応付けて、メモリ12に記憶させる。なお、プリンタのタイプごとに限らず、プリンタのモデルごとやプリンタのモデルのシリーズごとに用意される補助プログラムが有っても良い。
編集アプリ43は、例えば、画像データや文書データの作成や編集を行うためのアプリである。編集アプリ43は、例えば、マイクロソフト(登録商標)製のワードやパワーポイントなどであっても良いし、プリンタ2のベンダから提供されるアプリであっても良い。編集アプリ43は、プリンタ2に所定の動作を行わせる指示を含むユーザ操作を受け付ける。具体的には、編集アプリ43は、ユーザIF13を介して、例えば、プリンタ2に印刷を実行させる印刷実行指示を受け付ける。
本実施の形態のプリンタ2は、印刷機能を有する装置である。PC1は、通信IF14を介して、プリンタ2と通信可能である。プリンタ2は、例えば、PC1等から印刷データを受信して、受信した印刷データに基づく印刷を実行する。
[印刷の手順]
続いて、本実施の形態の補助プログラム42の動作を含む印刷の手順について、図2のシーケンス図を参照しつつ説明する。本実施の形態の汎用印刷プログラム41は、ラスタデータを圧縮する機能をサポートしていない。そこで、以下に説明する手順には、汎用印刷プログラム41を経由してプリンタ2に印刷を行わせる手順であって、その手順には、補助プログラム42によって、印刷対象の画像を示すラスタデータを圧縮する処理が含まれている。
続いて、本実施の形態の補助プログラム42の動作を含む印刷の手順について、図2のシーケンス図を参照しつつ説明する。本実施の形態の汎用印刷プログラム41は、ラスタデータを圧縮する機能をサポートしていない。そこで、以下に説明する手順には、汎用印刷プログラム41を経由してプリンタ2に印刷を行わせる手順であって、その手順には、補助プログラム42によって、印刷対象の画像を示すラスタデータを圧縮する処理が含まれている。
図2は、編集アプリ43等の印刷指示を受け付けるアプリにて、汎用印刷プログラム41を使用してプリンタ2に印刷させる印刷実行指示を受け付けた場合であって、プリンタ2に対応する補助プログラム42がPC1に組み込まれている場合の動作について示している。
なお、本実施の形態における各処理ステップは、基本的に、補助プログラム42などのプログラムに記述された命令に従ったCPU11の処理を示す。CPU11による処理は、OS21のAPIを用いたハードウェア制御も含む。本明細書では、OS21の詳細な記載を省略して各プログラムの動作を説明する。また、「取得」は要求を必須とはしない概念で用いる。
編集アプリ43は、ユーザの指示に基づいて、文章や図表等の作成や編集を受け付ける。編集アプリ43は、選択中の文章等の印刷に関する指示を受け付けると(A01)、ユーザによる指示を受け付けるための印刷画面をユーザIF13に表示する(A02)。編集アプリ43は、印刷画面にて、例えば、印刷実行指示、基本的な印刷設定の指示、詳細な印刷設定の受け付け開始の指示を受け付ける。
編集アプリ43は、表示中の印刷画面にてプリンタ2が選択された状態で、詳細な印刷設定の受け付け開始の指示を受け付けた場合(A03)、受け付けた詳細設定指示の情報をOS21に渡す。OS21は、汎用印刷プログラム41を使用する印刷に関する詳細設定の指示を受け付けた場合、汎用印刷プログラム41を実行させ、汎用印刷プログラム41に詳細な印刷設定の受け付け開始指示を渡す(A04)。汎用印刷プログラム41は、詳細な印刷設定の受け付け開始指示を受け付けると、選択中のプリンタであるプリンタ2に対応する補助プログラム42に詳細な印刷設定の受け付け実行指示を渡す(A05)。
補助プログラム42は、汎用印刷プログラム41からの実行指示に基づいて動作を開始し、詳細な印刷設定の入力操作を受け付けるための設定画面をユーザIF13に表示する(A06)。補助プログラム42は、例えば、プリンタ2のモデル情報に基づいて、対応可能な詳細設定を受け付ける設定画面を表示し、ユーザの操作を受け付ける。
また、補助プログラム42は、A06にて設定画面の表示を開始した後に、通信IF14を介して、プリンタ2に対して機能情報を要求し(A11)、プリンタ2から機能情報を受け取る(A12)。機能情報には、プリンタ2のモデルを示す情報や、プリンタ2の機能の有無を示す情報が含まれる。プリンタ2の機能の有無を示す情報としては、例えば圧縮データの解凍機能を有するか否かの情報があり、この場合、解凍機能として対応可能な圧縮方式の種類を示す情報も含まれる。補助プログラム42は、プリンタ2の機能情報をメモリ12に保持する。A12は、能力取得処理の一例である。
補助プログラム42とプリンタ2との通信は、例えば、OS21を介して行っても良いし、MIB(Management Information Baseの略)を使って、補助プログラム42が直接プリンタ2と通信しても良い。OS21を介して行う場合、補助プログラム42とプリンタ2とは、例えば、IPP(internet printing protocolの略)等のOS21の通信規約に応じた通信を行う。
その後、詳細設定を終了する指示を受け付けた場合には、補助プログラム42は、設定画面の表示を終了して、選択された印刷設定および終了通知を汎用印刷プログラム41に渡す。補助プログラム42からの終了通知を受けて、汎用印刷プログラム41は、編集アプリ43に終了通知を渡す。
次に、編集アプリ43は、印刷画面にてユーザによる印刷実行指示を受け付けると(A31)、印刷指示を汎用印刷プログラム41に渡す(A32)。汎用印刷プログラム41は、印刷指示にて、印刷対象となる画像データを示す情報と、印刷設定を示す情報と、を取得する。
汎用印刷プログラム41は、受け取った印刷指示に含まれる画像データの形式を中間画像データの形式に変換することで中間画像データを生成し(A33)、中間画像データを含む印刷ジョブを生成する。編集アプリ43に含まれる画像データは種々のタイプのものであり、汎用印刷プログラム41は、受け取った画像データを、印刷データの生成に適した中間画像データに変換する。なお、印刷指示に含まれる画像データが印刷データの生成に適したデータであれば、中間画像データの生成を省略し、そのまま中間画像データとしても良い。中間画像データは、例えば、XPSデータである。
汎用印刷プログラム41は、さらに、補助プログラム42に実行指示を出力し(A34)、補助プログラム42を動作させる。実行指示では、生成された中間画像データと印刷設定の情報とが補助プログラム42に渡される。A34によって、補助プログラム42は、印刷対象の画像を示す中間画像データを、OS21に含まれる汎用印刷プログラム41から取得することから、A34は、取得処理の一例である。
補助プログラム42は、印刷設定に基づいて、中間画像データを編集する(A35)。
例えば印刷設定に合成指示が含まれる場合、A34にて受け取った中間画像データと合成に関する情報とに基づいて、中間画像データに示される画像に合成に関する情報に示されるコンテンツを合成した、合成画像を生成する。合成対象となるコンテンツは、画像であっても図形であっても文字であってもよい。また、印刷設定に複数ページの画像を1枚のシートに集約する集約設定、いわゆるNin1の設定がある場合には、中間画像データに示される各ページの画像を縮小して、Nページ分の画像を1枚のシートに収まるように並べた、すなわちNページ分の画像を1ページの画像に集約した、集約画像を生成する。
例えば印刷設定に合成指示が含まれる場合、A34にて受け取った中間画像データと合成に関する情報とに基づいて、中間画像データに示される画像に合成に関する情報に示されるコンテンツを合成した、合成画像を生成する。合成対象となるコンテンツは、画像であっても図形であっても文字であってもよい。また、印刷設定に複数ページの画像を1枚のシートに集約する集約設定、いわゆるNin1の設定がある場合には、中間画像データに示される各ページの画像を縮小して、Nページ分の画像を1枚のシートに収まるように並べた、すなわちNページ分の画像を1ページの画像に集約した、集約画像を生成する。
その後、補助プログラム42は、A35での編集後の中間画像データに基づいてラスタライズを実行してラスタデータを生成する(A36)。補助プログラム42にてラスタライズすることで、汎用印刷プログラム41にてラスタライズする場合に比較して自由度が大きく、プリンタ2での印刷に適した印刷データが生成される可能性が高まる。A36は、生成処理の一例である。
補助プログラム42は、さらに、A36にて生成されたラスタデータについて、圧縮が必要か否かを判断する(A37)。本実施の形態では、圧縮が必要か否かの判断は、プリンタの能力と、印刷対象の画像と、印刷設定と、の少なくとも1つの要件によって判断する。
プリンタの能力に基づいて圧縮の要否を判断する場合、補助プログラム42は、例えばプリンタ2に圧縮データの解凍機能がなければ、圧縮が不要と判断する。また、プリンタ2に圧縮データの解凍機能があったとしても、プリンタ2で解凍可能な圧縮形式を補助プログラム42がサポートしていなければ、圧縮が不要と判断する。プリンタ2の能力は、A12によって取得した機能情報を用いる。機能情報のうち、解凍機能を有するか否かを示す情報やサポートする圧縮形式を示す情報は、それらを直接示す情報であってもよいし、モデルを示すような情報であって、間接的にそれらを示す情報であってもよい。A37を実行する段階で、プリンタ2の能力を取得していなかった場合には、A37を実行する前にプリンタ2の能力を取得してもよい。補助プログラム42で圧縮した画像をプリンタ2で解凍できなければ、圧縮した画像を送信できないため、圧縮が不要となる。
印刷対象の画像に基づいて圧縮の要否を判断する場合、補助プログラム42は、例えば、中間画像データのサイズが閾値よりも小さい場合や、中間画像データに示される画像がモノクロの場合に、圧縮が不要と判断する。中間画像データのサイズが閾値よりも小さい場合、ラスタライズ後のラスタデータに基づく印刷データも小さくなることが想定され、圧縮しなくても通信の負荷は小さく、印刷データのサイズも圧縮前後で差が少ない。画像がモノクロの場合も印刷データのサイズが小さいことが想定される。このことから、圧縮が不要と判断する。
印刷設定に基づいて圧縮の要否を判断する場合、補助プログラム42は、例えば、原稿サイズが小さい場合や、解像度が低い場合に、圧縮が不要と判断する。原稿サイズが小さい場合や、解像度が低い場合、ラスタライズ後のラスタデータに基づく印刷データも小さくなることが想定され、圧縮しなくても通信の負荷は小さく、印刷データのサイズも圧縮前後で差が少ない。このことから、圧縮が不要と判断する。
A37では、これらの要件のうち1つでも圧縮が不要と判断されれば、圧縮が不要と判断し、全ての要件で圧縮が不要と判断されなければ、圧縮が必要と判断する。なお、A37での判断条件は、前述したものに限るものではない。例えば前述した要件のうち複数で圧縮が不要と判断された場合に、圧縮が不要と判断し、前述した要件のうち1つで圧縮が不要と判断された場合、あるいは全ての要件で圧縮が不要と判断された場合に、圧縮が必要と判断するとしてもよい。あるいは、前述した要件のうち全てで圧縮が不要と判断された場合に、圧縮が不要と判断し、前述した要件のうち1つでも圧縮が不要と判断されなかった場合、圧縮が必要と判断するとしてもよい。また、前述した要件を全て判断する必要はなく、少なくとも1つの要件を判断するとしてもよい。
圧縮が必要と判断された場合(Alt:圧縮要)、補助プログラム42は、ラスタデータを圧縮するための圧縮方式を選択する(A41)。補助プログラム42は、gzip、gif、tiff、png等、複数の圧縮方式をサポートしている。そのため、その複数の圧縮方式の中から、プリンタ2がサポートする圧縮方式と合致する圧縮方式を選択する。補助プログラム42が複数の圧縮方式をサポートし、印刷データの送信先となるプリンタに適した圧縮方式を選択することで、プリンタごとに適切な圧縮画像を送信できる。
その後、補助プログラム42は、選択された圧縮方式で、ラスタデータを圧縮する(A42)。A42は、圧縮処理を一例である。なお、画像をカラーからモノクロに変換する必要がある場合には、補助プログラム42は、ラスタデータに示される画像をカラーからモノクロに変換した後、その変換後のラスタデータを圧縮してもよい。
A42の後、あるいは圧縮が不要と判断された場合、補助プログラム42は、ラスタデータに基づいて印刷データを生成する(A43)。このときのラスタデータは、A42を経由していれば圧縮されたラスタデータであり、A42を経由していなければ圧縮されていないラスタデータになる。A43にて生成される印刷データは、プリンタ2にて印刷に使用できる形式のデータであり、例えば、プリンタ2のモデルに専用のPDLデータである。なお、補助プログラム42によって生成される印刷データは、プリンタ2のモデル以外のプリンタでの印刷にも使用できる形式のデータであっても良い。
補助プログラム42は、A43にて生成された印刷データを、印刷の実行を指示する印刷コマンドとともにプリンタ2に送信する(A44)。圧縮されたラスタデータに基づく印刷データを送信する場合のA44は、送信処理の一例である。
補助プログラム42から印刷データと印刷コマンドとを受信したプリンタ2は、受信した印刷コマンドに基づいて、印刷データに含まれるラスタデータが圧縮済みであれば(Alt:圧縮済)、印刷データに含まれるラスタデータを解凍する(A61)。そして、受信した印刷データに示される画像の印刷を実行し(A62)、印刷の手順が終了する。
また、補助プログラム42は、印刷データをプリンタ2に送信した場合、印刷データの送信を終了させたことを示す送信済みコードを汎用印刷プログラム41に応答する。送信済みを示すコードを受け取った汎用印刷プログラム41は、印刷データをプリンタ2に送信するための処理を行わず、印刷の手順が終了する。
以上、詳細に説明したように、PC1は、汎用印刷プログラム41に対して印刷指示があり、印刷対象の画像を示すラスタデータについて圧縮が必要な場合に、補助プログラム42によって、そのラスタデータを圧縮し、その圧縮後のラスタデータに基づく印刷データをプリンタ2に送信する。これにより、圧縮されていないラスタデータに基づく印刷データをプリンタ2に送信する場合と比較して、小サイズの印刷データをプリンタ2に送信することになる。従って、印刷データの送受信に遅延が生じ難く、汎用印刷プログラム41がデータの圧縮機能をサポートしていなくても、印刷開始の遅れを抑制できる。
一方で、PC1は、圧縮が不要な場合、補助プログラム42がラスタデータを圧縮せずに印刷データを送信するため、プリンタ2でのラスタデータの解凍が不要であり、補助プログラム42がラスタデータを圧縮してプリンタ2に送信する場合と比較して、プリンタ2は、データの受信後、直ぐに印刷を開始できる。
[応用形態]
続いて、前述した印刷の手順の応用形態について、図3のシーケンス図を参照しつつ説明する。図3では、図2に示した手順と同じ処理については、同じ番号を付して説明を省略する。また、応用形態では、補助プログラム42において、中間画像データを取得し、その中間画像データを編集した後の処理が、図2に示した手順と異なる。そのため、図3では、図2に示したA01からA12までの図示を省略し、応用形態の処理の説明では、A35までを省略する。
続いて、前述した印刷の手順の応用形態について、図3のシーケンス図を参照しつつ説明する。図3では、図2に示した手順と同じ処理については、同じ番号を付して説明を省略する。また、応用形態では、補助プログラム42において、中間画像データを取得し、その中間画像データを編集した後の処理が、図2に示した手順と異なる。そのため、図3では、図2に示したA01からA12までの図示を省略し、応用形態の処理の説明では、A35までを省略する。
応用形態では、A36の後、中間画像データのラスタライズを行う前に、ラスタデータについて圧縮が必要か否かを判断する(A37)。この判断は、図2に示したA37と同じでよい。
圧縮が必要と判断された場合(Alt:圧縮要)、補助プログラム42は、A35での編集後の中間画像データに基づいてラスタライズを実行してラスタデータを生成する(A36)。このときのラスタライズも、図2に示したA36と同じでよい。応用形態では、圧縮が必要と判断された場合にラスタライズを実行する。この点、圧縮の要否にかかわらず補助プログラム42がラスタライズを行う実施の形態と異なる。
その後、補助プログラム42は、ラスタデータを圧縮するための圧縮方式を選択し(A41)、選択された圧縮方式で、ラスタデータを圧縮する(A42)。さらに、圧縮されたラスタデータに基づいて印刷データを生成し(A43)、生成された印刷データを、印刷の実行を指示する印刷コマンドとともにプリンタ2に送信する(A44)。
一方、圧縮が不要と判断された場合(Alt:圧縮不要)、補助プログラム42は、A35での編集後の中間画像データを、ラスタライズを実行せずに、汎用印刷プログラム41に渡す(A51)。補助プログラム42から中間画像データを受け取った汎用印刷プログラム41は、補助プログラム42から受け取った中間画像データに基づくラスタライズを行ってラスタデータを生成し、そのラスタデータに基づいて印刷データを生成する(A52)。
汎用印刷プログラム41によって生成される印刷データは、各種のプリンタにて印刷に使用できる形式の印刷データであり、例えば、PWGRasterデータ、または、PDFデータである。汎用印刷プログラム41によってラスタライズするとすれば、補助プログラム42の処理が少なく、補助プログラム42の処理時間増大の回避が見込まれる。
そして、汎用印刷プログラム41は、A52にて生成された印刷データを印刷コマンドとともにプリンタ2に送信する(A53)。汎用印刷プログラム41から印刷データと印刷コマンドとを受信したプリンタ2は、受信した印刷コマンドに基づいて、印刷データに示される画像の印刷を実行する(A63)。これにより、印刷の手順が終了する。
図3に示した応用形態では、ラスタデータについての圧縮が不要な場合、補助プログラム42がラスタライズを行わず、汎用印刷プログラム41がラスタライズを行って印刷データの送信まで行う。そのため、補助プログラム42に基づく負荷が軽減される。
なお、本明細書に開示される実施の形態は単なる例示にすぎず、本発明を何ら限定するものではない。従って、本明細書に開示される技術は当然に、その要旨を逸脱しない範囲内で種々の改良、変形が可能である。例えば、PC1に接続される装置は、プリンタに限らず、複合機、複写機、FAX装置、等印刷機能を有する装置であればよい。また、PC1に接続されるプリンタの数は、図示の例に限らず、2台以上でも良い。
また、図示の表示画面はいずれも一例であり、これに限らない。例えば、各画像や各ボタンの配置や表現は、図示の例に限らない。
また、実施の形態では、補助プログラム42が複数の圧縮方式をサポートしているが、サポート可能な圧縮方式が1つだけであり、その圧縮方式で常にラスタデータを圧縮してもよい。
また、実施の形態では、補助プログラム42の動作として、印刷動作のみを詳細に記載しているが、補助プログラム42は、さらに他の役割を有していても良い。また、本実施の形態の処理を実行するプログラムは、補助プログラム42に限らず、汎用印刷プログラム41を用いた印刷を行う際に、OS21または汎用印刷プログラム41から指示を受け付けるプログラムであればよい。例えば、マイクロソフト社が仕様公開した印刷ワークフローアプリ(Print workflow)でも良い。
また、補助プログラム42の実行タイミングは、実施の形態の例に限らない。例えば、OS21から直接実行指示されて実行されても良く、または、常駐される補助プログラム42であっても良い。常駐される場合には、補助プログラム42は、実行命令を受けて前述した動作を行うとすれば良い。
また、実施の形態に開示されている任意のフローチャートにおいて、任意の複数のステップにおける複数の処理は、処理内容に矛盾が生じない範囲で、任意に実行順序を変更できる、または並列に実行できる。
また、実施の形態に開示されている処理は、単一のCPU、複数のCPU、ASICなどのハードウェア、またはそれらの組み合わせで実行されてもよい。また、実施の形態に開示されている処理は、その処理を実行するためのプログラムを記録した記録媒体、または方法等の種々の態様で実現することができる。
1 PC
2 プリンタ
11 CPU
13 ユーザIF
41 汎用印刷プログラム
42 補助プログラム
2 プリンタ
11 CPU
13 ユーザIF
41 汎用印刷プログラム
42 補助プログラム
Claims (7)
- 情報処理装置のコンピュータによって実行可能であり、前記情報処理装置と接続するプリンタに対応し、前記情報処理装置のオペレーティングシステムにあらかじめ組み込まれた汎用印刷プログラムをサポートするサポートプログラムであって、
前記コンピュータに、
前記情報処理装置に組み込まれているアプリケーションプログラムから出力された印刷指示であって、前記汎用印刷プログラムに対して印刷を前記プリンタに行わせる前記印刷指示があった場合に、
前記オペレーティングシステムから前記印刷指示に応じた中間画像データを取得する取得処理と、
前記取得処理によって前記オペレーティングシステムから取得された前記中間画像データに基づいてラスタライズしたラスタデータを生成する生成処理と、
前記生成処理にて生成された前記ラスタデータを圧縮する圧縮処理と、
前記圧縮処理にて圧縮された前記ラスタデータに基づく印刷データを前記プリンタに送信する送信処理と、
を実行させる、
ことを特徴とするサポートプログラム。 - 請求項1に記載するサポートプログラムにおいて、
前記コンピュータに、
前記プリンタの能力を示す能力情報を前記プリンタから取得する能力取得処理を実行させ、前記能力情報には、前記プリンタが前記圧縮処理を経た印刷データを解凍する解凍機能を有するか否かを示す情報が含まれ、
さらに前記コンピュータに、
前記能力取得処理によって前記解凍機能を有することを示す前記能力情報を取得した場合、前記圧縮処理を実行させ、
前記能力取得処理によって前記解凍機能を有することを示す前記能力情報を取得しなかった場合、前記圧縮処理を実行させず、前記取得処理によって前記オペレーティングシステムから取得された前記中間画像データに応じた印刷を前記プリンタに行わせるための処理を実行させる、
ことを特徴とするサポートプログラム。 - 請求項1に記載するサポートプログラムにおいて、
前記コンピュータに、
前記取得処理によって前記オペレーティングシステムから取得された前記中間画像データが所定条件を満たさない場合、前記圧縮処理を実行させ、
前記取得処理によって前記オペレーティングシステムから取得された前記中間画像データが前記所定条件を満たす場合、前記圧縮処理を実行させず、前記取得処理によって前記オペレーティングシステムから取得された前記中間画像データに応じた印刷を前記プリンタに行わせるための処理を実行させる、
ことを特徴とするサポートプログラム。 - 請求項1に記載するサポートプログラムにおいて、
前記コンピュータに、
前記印刷指示に基づく印刷設定が所定条件を満たさない場合、前記圧縮処理を実行させ、
前記印刷指示に基づく印刷設定が前記所定条件を満たす場合、前記圧縮処理を実行させず、前記取得処理によって前記オペレーティングシステムから取得された前記中間画像データに応じた印刷を前記プリンタに行わせるための処理を実行させる、
ことを特徴とするサポートプログラム。 - 請求項2から請求項4のいずれか1つに記載するサポートプログラムにおいて、
前記コンピュータに、
前記中間画像データに応じた印刷を前記プリンタに行わせるための前記処理として、圧縮されていない前記ラスタデータに基づく印刷データを前記プリンタに送信させる、
ことを特徴とするサポートプログラム。 - 請求項2から請求項4のいずれか1つに記載するサポートプログラムにおいて、
前記コンピュータに、
前記中間画像データに応じた印刷を前記プリンタに行わせるための前記処理として、前記取得処理によって前記オペレーティングシステムから取得された前記中間画像データを、前記オペレーティングシステムに戻させ、前記中間画像データが戻された前記オペレーティングシステムは、前記中間画像データに基づく印刷データを前記プリンタに送信する、
ことを特徴とするサポートプログラム。 - 請求項1から請求項6のいずれか1つに記載するサポートプログラムにおいて、
前記コンピュータに、
前記プリンタの能力を示す能力情報を前記プリンタから取得する能力取得処理を実行させ、前記能力情報には、前記プリンタが解凍可能な圧縮方式を示す情報が含まれ、
前記圧縮処理にて圧縮可能な複数の圧縮方式が有り、
前記圧縮処理では、圧縮可能な前記複数の圧縮方式の中から前記能力情報に示される解凍可能な圧縮方式と合致する圧縮方式を選択し、選択された前記圧縮方式にて前記生成処理にて生成された前記ラスタデータを圧縮する、
ことを特徴とするサポートプログラム。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2021159239A JP2023049478A (ja) | 2021-09-29 | 2021-09-29 | サポートプログラム |
JP2021-159239 | 2021-09-29 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2023053934A1 true WO2023053934A1 (ja) | 2023-04-06 |
Family
ID=85705869
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2022/034172 WO2023053934A1 (ja) | 2021-09-29 | 2022-09-13 | サポートプログラム |
Country Status (3)
Country | Link |
---|---|
US (2) | US11886945B2 (ja) |
JP (1) | JP2023049478A (ja) |
WO (1) | WO2023053934A1 (ja) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002248817A (ja) * | 2001-02-27 | 2002-09-03 | Ricoh Co Ltd | 印刷処理装置 |
JP2005182486A (ja) * | 2003-12-19 | 2005-07-07 | Nec Soft Ltd | 印刷管理システム、印刷管理方法および印刷管理用プログラム |
JP2008276531A (ja) * | 2007-04-27 | 2008-11-13 | Canon Inc | 画像処理装置、画像処理方法及びプログラム |
Family Cites Families (4)
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 |
US8619310B2 (en) * | 2007-05-25 | 2013-12-31 | Kyocera Document Solutions, Inc. | Image forming apparatus |
JP6551054B2 (ja) | 2015-08-26 | 2019-07-31 | セイコーエプソン株式会社 | ドライバープログラム、及び、制御方法 |
JP2023049476A (ja) * | 2021-09-29 | 2023-04-10 | ブラザー工業株式会社 | サポートプログラム |
-
2021
- 2021-09-29 JP JP2021159239A patent/JP2023049478A/ja active Pending
-
2022
- 2022-09-13 WO PCT/JP2022/034172 patent/WO2023053934A1/ja unknown
- 2022-09-20 US US17/933,539 patent/US11886945B2/en active Active
-
2023
- 2023-12-20 US US18/389,931 patent/US20240127020A1/en active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002248817A (ja) * | 2001-02-27 | 2002-09-03 | Ricoh Co Ltd | 印刷処理装置 |
JP2005182486A (ja) * | 2003-12-19 | 2005-07-07 | Nec Soft Ltd | 印刷管理システム、印刷管理方法および印刷管理用プログラム |
JP2008276531A (ja) * | 2007-04-27 | 2008-11-13 | Canon Inc | 画像処理装置、画像処理方法及びプログラム |
Also Published As
Publication number | Publication date |
---|---|
US11886945B2 (en) | 2024-01-30 |
US20240127020A1 (en) | 2024-04-18 |
US20230100715A1 (en) | 2023-03-30 |
JP2023049478A (ja) | 2023-04-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5763904B2 (ja) | プリントシステム、印刷方法、プリントサーバおよびその制御方法、並びにプログラム | |
JP6454213B2 (ja) | 画像出力システム、画像処理装置、画像出力装置、これらにおける方法及びプログラム | |
WO2021117278A1 (ja) | サポートプログラム、情報処理装置、および印刷方法 | |
US20210216254A1 (en) | Non-transitory computer readable storage medium, information processing device and printing method | |
WO2023053933A1 (ja) | サポートプログラム | |
US8498005B2 (en) | Initiating a conversion function of an information processing device through operation of an image forming device | |
WO2021065126A1 (ja) | サポートプログラム、情報処理装置、および印刷方法 | |
WO2023053934A1 (ja) | サポートプログラム | |
US10175916B2 (en) | Image forming apparatus, information processing method, and storage medium | |
US20230086590A1 (en) | Information processing apparatus, method for controlling information processing apparatus, and storage medium | |
US8213032B2 (en) | Information processing apparatus and method and computer-readable storage medium thereof | |
US9552332B2 (en) | Information processing apparatus having improved preview function | |
JP2009053789A (ja) | 情報処理装置とプログラムとコンピュータ読み取り可能な記録媒体 | |
JP2003114778A (ja) | 印刷システム、印刷制御装置、印刷装置、圧縮方法選択方法、及び記憶媒体 | |
US9025175B2 (en) | Storage medium, information processing apparatus, and control method | |
WO2022163427A1 (ja) | サポートプログラム | |
WO2022163428A1 (ja) | サポートプログラム | |
WO2022163429A1 (ja) | サポートプログラム | |
WO2022163430A1 (ja) | サポートプログラム | |
WO2023145532A1 (ja) | サポートプログラム | |
JP5576033B2 (ja) | データ処理装置 | |
WO2023176579A1 (ja) | サポートプログラム | |
JP2012221198A (ja) | プリントシステム | |
JP2012218227A (ja) | 画像形成装置 | |
JP2022025925A (ja) | 制御プログラム、画像形成装置、情報処理装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 22875806 Country of ref document: EP Kind code of ref document: A1 |