JP6432256B2 - プリンタ - Google Patents

プリンタ Download PDF

Info

Publication number
JP6432256B2
JP6432256B2 JP2014199637A JP2014199637A JP6432256B2 JP 6432256 B2 JP6432256 B2 JP 6432256B2 JP 2014199637 A JP2014199637 A JP 2014199637A JP 2014199637 A JP2014199637 A JP 2014199637A JP 6432256 B2 JP6432256 B2 JP 6432256B2
Authority
JP
Japan
Prior art keywords
printer
print data
data
print
capability
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
JP2014199637A
Other languages
English (en)
Other versions
JP2016072785A (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 JP2014199637A priority Critical patent/JP6432256B2/ja
Priority to US14/867,853 priority patent/US9491317B2/en
Publication of JP2016072785A publication Critical patent/JP2016072785A/ja
Application granted granted Critical
Publication of JP6432256B2 publication Critical patent/JP6432256B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/00127Connection or combination of a still picture apparatus with another apparatus, e.g. for storage, processing or transmission of still picture signals or of information associated with a still picture
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/387Composing, repositioning or otherwise geometrically modifying originals
    • H04N1/393Enlarging or reducing
    • H04N1/3935Enlarging or reducing with modification of image resolution, i.e. determining the values of picture elements at new relative positions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/00127Connection or combination of a still picture apparatus with another apparatus, e.g. for storage, processing or transmission of still picture signals or of information associated with a still picture
    • H04N1/00204Connection or combination of a still picture apparatus with another apparatus, e.g. for storage, processing or transmission of still picture signals or of information associated with a still picture with a digital computer or a digital computer system, e.g. an internet server
    • H04N1/00236Connection or combination of a still picture apparatus with another apparatus, e.g. for storage, processing or transmission of still picture signals or of information associated with a still picture with a digital computer or a digital computer system, e.g. an internet server using an image reading or reproducing device, e.g. a facsimile reader or printer, as a local input to or local output from a computer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/41Bandwidth or redundancy reduction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N2201/00Indexing scheme relating to scanning, transmission or reproduction of documents or the like, and to details thereof
    • H04N2201/0077Types of the still picture apparatus
    • H04N2201/0094Multifunctional device, i.e. a device capable of all of reading, reproducing, copying, facsimile transception, file transception

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • General Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • Accessory Devices And Overall Control Thereof (AREA)
  • Record Information Processing For Printing (AREA)
  • Facsimiles In General (AREA)

Description

本明細書では、能力情報を外部装置に供給して、外部装置から印刷データを取得するプリンタを開示する。
特許文献1には、プリンタとPCとを備えるシステムが開示されている。プリンタは、PCから能力情報通知要求を受信する場合に、当該プリンタのスペックを示す能力通知をPCに送信する。PCは、能力通知に応じた印刷設定画面を表示して、ユーザの印刷設定を受け付ける。PCは、印刷設定を用いて印刷ジョブを生成して、印刷ジョブをプリンタに送信する。プリンタは、印刷ジョブを用いた印刷を実行する。
特開2013−64977号公報
上記の特許文献1の技術では、プリンタからPCに送信される能力通知が常に同じスペックを示すので、印刷が適切に実行されない可能性がある。本明細書では、外部装置からプリンタに供給される印刷データを用いた印刷が適切に実行され得る技術を提供する。
本明細書によって開示されるプリンタは、印刷実行部と、制御部と、を備える。制御部は、プリンタの特定の処理能力を示す情報を含む第1の能力情報を第1の外部装置に供給する供給部と、第1の能力情報が第1の外部装置に供給されることに応じて、第1の外部装置から第1の印刷データを取得する取得部と、第1の印刷データが取得されることに応じて、第1の印刷データを用いた印刷を印刷実行部に実行させるための第1の印刷処理であって、特定の処理能力に対応する特定の処理を含む第1の印刷処理を実行する印刷処理実行部と、を備える。供給部は、さらに、第1の印刷データが第1の所定条件を満たす場合に、特定の処理能力を示す情報を含まない第2の能力情報を第2の外部装置に供給する。取得部は、さらに、第2の能力情報が第2の外部装置に供給されることに応じて、第2の外部装置から第2の印刷データを取得する。印刷処理実行部は、さらに、第2の印刷データが取得されることに応じて、第2の印刷データを用いた印刷を印刷実行部に実行させるための第2の印刷処理であって、特定の処理を含まない第2の印刷処理を実行する。
上記の構成によると、プリンタは、特定の処理能力を示す情報を含む第1の能力情報を第1の外部装置に供給し、その後、第1の印刷データが第1の所定条件を満たす場合に、特定の処理能力を示す情報を含まない第2の能力情報を第2の外部装置に供給する。このように、プリンタから外部装置に供給される能力情報の内容が変更されるので、外部装置からプリンタに供給される印刷データを用いた印刷が適切に実行され得る。
前記特定の処理能力は、前記プリンタが所定の圧縮方式を用いた圧縮済みデータを解凍する解凍能力を含み、
前記第1の印刷データは、前記第1の外部装置が第1の画像データを前記所定の圧縮方式を用いて圧縮することによって生成されるデータであり、
前記特定の処理は、前記第1の印刷データを解凍する解凍処理を含み、
前記プリンタは、さらに、
前記第1の画像データを前記第1の印刷データに圧縮する際の第1の圧縮効率が予め決められている第1の基準効率よりも低い場合に、前記第1の印刷データが前記第1の所定条件を満たすと判断する第1の判断部を備え、
前記供給部は、前記第1の印刷データが前記第1の所定条件を満たすと判断される場合に、前記特定の処理能力を示す前記情報を含まない前記第2の能力情報を前記第2の外部装置に供給し、
前記第2の印刷データは、前記第2の外部装置が第2の画像データを前記所定の圧縮方式を用いて圧縮することなく得られるデータであってもよい。
前記第1の判断部は、
前記第1の印刷データのデータサイズと前記第1の画像データのデータサイズとを利用して、前記第1の圧縮効率を示す第1の指標値を算出し、
前記第1の指標値と前記第1の基準効率を示す基準値とを比較することによって、前記第1の圧縮効率が前記第1の基準効率よりも低いのか否かを判断してもよい。
前記第1の判断部は、
前記第1の画像データを利用して、前記第1の圧縮効率を示す第2の指標値であって、前記第1の画像データを構成する特定の画素の数に関係する前記第2の指標値を算出し、
前記第2の指標値と前記第1の基準効率を示す基準値とを比較することによって、前記第1の圧縮効率が前記第1の基準効率よりも低いのか否かを判断し、
前記特定の画素は、隣接する画素が有する画素値に一致する画素値を有する画素であってもよい。
前記プリンタは、さらに、
前記第2の印刷データを前記所定の圧縮方式を用いて圧縮する場合における圧縮効率である第2の圧縮効率が予め決められている第2の基準効率よりも高い場合に、前記第2の印刷データが第2の所定条件を満たすと判断する第2の判断部を備え、
前記供給部は、さらに、前記第2の印刷データが前記第2の所定条件を満たすと判断される場合に、前記特定の処理能力を示す前記情報を含む第3の能力情報を第3の外部装置に供給してもよい。
前記特定の処理能力は、前記プリンタが所定のデータ形式を有するデータを展開する展開能力を含み、
前記第1の印刷データは、前記所定のデータ形式を有し、
前記特定の処理は、前記第1の印刷データを展開することを試行する試行処理を含み、
前記プリンタは、さらに、
前記第1の印刷データを展開不可能である場合に、前記第1の印刷データが前記第1の所定条件を満たすと判断する第3の判断部を備え、
前記供給部は、前記第1の印刷データが前記第1の所定条件を満たすと判断される場合に、前記特定の処理能力を示す前記情報を含まない前記第2の能力情報を前記第2の外部装置に供給し、
前記第2の印刷データは、前記所定のデータ方式とは異なるデータ形式を有してもよい。
前記供給部は、さらに、前記第2の印刷処理が実行された後に、前記特定の処理能力を示す前記情報を含む第3の能力情報を第3の外部装置に供給してもよい。
前記第2の外部装置は、前記第1の外部装置と同じ装置であり、
前記第1の印刷データと前記第2の印刷データとは、同じ画像データを用いて得られるデータであってもよい。
前記供給部は、
前記第1の外部装置から所定の要求が取得される場合に、前記特定の処理能力を示す前記情報を含む前記第1の能力情報を前記第1の外部装置に供給し、
前記第1の印刷データが前記第1の所定条件を満たし、かつ、前記第1の外部装置と同じ前記第2の外部装置から前記所定の要求が取得される場合に、前記特定の処理能力を示す前記情報を含まない前記第2の能力情報を前記第2の外部装置に供給し、
前記第1の印刷データが前記第1の所定条件を満たし、かつ、前記第1の外部装置及び前記第2の外部装置とは異なる第4の外部装置から前記所定の要求が取得される場合に、前記特定の処理能力を示す前記情報を含む第4の能力情報を前記第4の外部装置に供給してもよい。
上記のプリンタを実現するための制御方法、コンピュータプログラム、及び、当該コンピュータプログラムを格納するコンピュータ読取可能記録媒体も、新規で有用である。また、上記のプリンタと外部装置(例えば、第1の外部装置、第2の外部装置等)とを備える通信システムも、新規で有用である。
通信システムの構成を示す。 プリンタ及び端末装置が実行する各処理のシーケンス図を示す。 第1〜第3実施例の印刷データ取得時処理のフローチャートを示す。 第1実施例のシーケンス図を示す。 第2実施例及び第3実施例を説明するための図を示す。 第4実施例のシーケンス図を示す。 第5及び第6実施例の印刷データ取得時処理のフローチャートを示す。 第5実施例のシーケンス図を示す。 第6実施例のシーケンス図を示す。
(通信システム2の構成;図1)
図1に示されるように、通信システム2は、プリンタPRと、複数個の端末装置TE1,TE2と、を備える。各デバイスPR,TE1,TE2は、LAN(LocalArea Networkの略)4を介して、有線通信又は無線通信を相互に実行可能である。
(プリンタPRの構成)
プリンタPRは、印刷機能を実行可能な周辺機器(即ち各端末装置TE1,TE2の周辺機器)である。なお、プリンタPRは、印刷機能に加えて、スキャン機能、FAX機能等を実行可能な多機能機であってもよい。プリンタPRは、操作部12と、表示部14と、印刷実行部16と、LANインターフェイス18と、制御部20と、を備える。各部12〜20は、バス線10に接続されている。
操作部12は、複数のキーを備える。ユーザは、操作部12を操作することによって、様々な指示をプリンタPRに与えることができる。表示部14は、様々な情報を表示するためのディスプレイである。印刷実行部16は、インクジェット方式、レーザ方式等の印刷機構である。LANインターフェイス18は、LAN4に接続されている。
制御部20は、CPU22と、メモリ24と、を備える。CPU22は、メモリ24に格納されているプログラム30を用いて、様々な処理を実行するプロセッサである。メモリ24は、ROM、RAM等によって構成され、上記のプログラム30の他に、能力情報32と、履歴情報34と、を格納する。
能力情報32は、プリンタPRが実行可能な処理能力を示す情報である。能力情報32は、gzip(GNU ZIPの略)情報と、データ形式情報と、両面印刷情報と、解像度情報と、を含む。gzip情報は、プリンタPRがgzip圧縮方式を用いた圧縮済みデータを解凍する解凍能力を有するのか否かを示す。本実施例のプリンタPRは上記の解凍能力を有するので、gzip情報は、通常、プリンタPRが上記の解凍能力を有することを意味する「OK」を示す。ただし、詳しくは後述するが、プリンタPRが上記の解凍能力を有するにも関わらず、gzip情報が、プリンタPRが上記の解凍能力を有さないことを意味する「NG」を示すことがあり得る。データ形式情報は、プリンタPRが展開可能(即ち解釈可能)なデータ形式を示す情報であり、本実施例では、PDF(Portable Document Formatの略)を示す情報と、JPEG(Joint Photograph Experts Groupの略)を示す情報と、PWG(Printer Working Groupの略)を示す情報と、を含む。これは、プリンタPRが、PDF形式、JPEG形式、及び、PWG形式のいずれについても、展開能力を有することを意味する。両面印刷情報は、プリンタPRが印刷媒体の両面に画像を印刷する能力を有することを意味する「OK」を示す。解像度情報は、複数個の解像度(100dpi等)を示す。これは、プリンタPRが、上記の複数個の解像度のいずれについても、当該解像度を用いた印刷を実行する能力を有することを意味する。
履歴情報34は、プリンタPRによって取得される最新の3個の印刷データのそれぞれの圧縮効率を示す指標値を含む。具体的には、本実施例では、指標値は、解凍データサイズに対する圧縮データサイズの比率を示すサイズ率である。即ち、サイズ率は、式「(圧縮データサイズ/解凍データサイズ)×100(%)」によって表わされる。ここで、圧縮データサイズは、gzip方式を用いた圧縮済みデータのデータサイズであり、解凍データサイズは、圧縮済みデータを解凍することによって得られる解凍済みデータのデータサイズである。サイズ率の値が大きい程、圧縮効率が低くなり、サイズ率の値が小さい程、圧縮効率が高くなる。また、後述の第2及び第3実施例では、指標値として、サイズ率とは異なる連続画素率が利用される。なお、変形例では、履歴情報34に含まれる指標値の数は、最大で3個でなくてもよく、最大で1個又は2個であってもよいし、最大で4個以上であってもよい。
(各端末装置TE1,TE2の構成)
各端末装置TE1,TE2は、デスクトップPC(Personal Computerの略)、ノートPC、タブレットPC、携帯電話(例えばスマートフォン)、PDA等である。各端末装置TE1,TE2は、IPP(Internet Printing Protocol)を用いた手順でプリンタPRに印刷を実行させるためのプリンタドライバDRを備える。プリンタドライバDRは、プリンタPRのベンダ又は他の事業者によって提供されるインターネット上のサーバから各端末装置TE1,TE2にインストールされる。ただし、変形例では、プリンタドライバDRは、各端末装置TE1,TE2の出荷段階から各端末装置TE1,TE2に予め搭載されていてもよいし、プリンタPRと共に出荷されるメディアから各端末装置TE1,TE2にインストールされてもよい。
(プリンタPR及び端末装置TE1の処理;図2)
続いて、図2を参照して、プリンタPR及び端末装置TE1によって実行される各処理の内容を説明する。以下の各処理は、IPPを用いた手順でプリンタPRに印刷を実行させるための処理である。なお、端末装置TE2は、端末装置TE1と同様の処理を実行可能である。
S10では、端末装置TE1は、ユーザから登録指示を受け付ける。登録指示は、端末装置TE1と同じLAN4に接続されているプリンタPRを端末装置TE1に一時的に登録するための指示であり、プリンタドライバDRを起動する指示と、プリンタドライバDRによって表示される画面上でプリンタPRに対する「登録」を示すボタンを選択する指示と、を含む。端末装置TE1は、ユーザから登録指示を受け付ける場合(S10)に、能力情報要求IRをプリンタPRに供給する。
プリンタPRのCPU22は、端末装置TE1から能力情報要求IRを取得する場合に、S20において、メモリ24から能力情報32を取得する。そして、CPU22は、能力情報32内の現在の各情報(gzip情報、データ形式情報等)を含む能力通知CNを端末装置TE1に供給する。図2では、能力通知CN内のgzip情報が「OK」を示す例が開示されている。
端末装置TE1は、プリンタPRから能力通知CNを取得することによって、プリンタPRを一時的に登録する。そして、S30では、端末装置TE1は、設定画面SCを表示する。設定画面SCは、能力通知CN内の両面印刷情報及び解像度情報に対応する各文字列を含む。図2の例では、能力通知CN内の両面印刷情報が「OK」を示すので、設定画面SCは、両面印刷を実行することを示す「ON」と、両面印刷を実行しないことを示す「OFF」と、のうちの一方を指定するための文字列を含む。なお、能力通知CN内の両面印刷情報が「NG」を示す場合には、設定画面SCは、両面印刷「ON」を示す文字列を含まない。即ち、ユーザは、両面印刷「ON」を指定することができない。また、能力通知CN内の解像度情報が4個の解像度(100dpi等)を示すので、設定画面SCは、4個の解像度のうちのいずれかを指定するための文字列を含む。なお、設定画面SCは、能力通知CN内のgzip情報及びデータ形式情報に対応する各文字列を含まない。即ち、ユーザは、gzip圧縮方式を用いた圧縮(以下では「gzip圧縮」と呼ぶ)を実行するのか否かを指定することができず、プリンタPRに供給されるべき印刷データが有するデータ形式を指定することができない。
S32では、端末装置TE1は、ユーザから指定指示を受け付ける。指定指示は、設定画面SCにおいて、両面印刷を実行するのか否かを指定する指示と、4個の解像度のうちのいずれか1個の解像度(以下では「指定解像度」と呼ぶ)を指定する指示と、OKボタンBOを選択する指示と、を含む。指定指示は、さらに、端末装置TE1内に保存されている1個以上の画像データの中から1個の画像データ(以下では「指定画像データ」と呼ぶ)を指定する指示を含む。指定画像データは、多階調(例えば256階調)のRGBのビットマップデータを含む。以下では、ビットマップデータのことを「BMPデータ」と記載する。
端末装置TE1は、ユーザから指定指示を受け付ける場合(S32)に、S34において、指定画像データから印刷データPDを生成する。具体的には、端末装置TE1は、まず、指定画像データが有するデータ形式が、能力通知CN内のデータ形式情報によって示される各データ形式(以下では「能力データ形式」と呼ぶ)に含まれるのか否かを判断する。端末装置TE1は、指定画像データが有するデータ形式が各能力データ形式に含まれないと判断する場合には、指定画像データに対する形式変換処理を実行して、各能力データ形式のいずれかを有する形式変換済み画像データを生成する。次いで、端末装置TE1は、形式変換済み画像データに対する解像度変換処理を実行して、指定解像度を有する解像度変換済み画像データを生成する。また、端末装置TE1は、指定画像データが有するデータ形式が各能力データ形式に含まれると判断する場合には、指定画像データに対する解像度変換処理を実行して、指定解像度を有する解像度変換済み画像データを生成する。そして、端末装置TE1は、能力通知CN内のgzip情報が「NG」を示す場合には、解像度変換済み画像データに対するgzip圧縮を実行せずに、解像度変換済み画像データを印刷データPDとして決定する。一方、端末装置TE1は、能力通知CN内のgzip情報が「OK」を示す場合には、解像度変換済み画像データに対するgzip圧縮を実行して、圧縮済み画像データを印刷データPDとして決定する。
次いで、端末装置TE1は、印刷データPDと印刷設定情報SIとをプリンタPRに供給する。印刷設定情報SIは、gzip圧縮が実行されて印刷データPDが生成された場合には、gzip圧縮が実行されたことを示す文字列(即ち「gzip圧縮=ON」)を含み、gzip圧縮が実行されずに印刷データPDが生成された場合には、gzip圧縮が実行されなかったことを示す文字列(即ち「gzip圧縮=OFF」)を含む。印刷設定情報SIは、さらに、印刷データPDが有するデータ形式を示す文字列(例えば「データ形式=PDF」)を含む。また、印刷設定情報SIは、設定画面SCにおいてユーザによって両面印刷「ON」が指定された場合には、両面印刷を実行することを示す文字列(即ち「両面印刷=ON」)を含み、ユーザによって両面印刷「OFF」が指定された場合には、両面印刷を実行しないことを示す文字列(即ち「両面印刷=OFF」)を含む。印刷設定情報SIは、さらに、指定解像度を示す文字列(例えば「解像度=300dpi」)を含む。
プリンタPRのCPU22は、端末装置TE1から印刷データPDと印刷設定情報SIとを取得する場合に、S40において、印刷処理を実行する。これにより、印刷データPDを用いた印刷済み印刷媒体をユーザに提供することができる。CPU22は、印刷処理が終了する場合に、印刷が終了したことを示すメッセージを含む終了通知ENを端末装置TE1に供給する。
端末装置TE1は、プリンタPRから終了通知ENを取得する場合に、S50において、印刷処理が終了したことを示すメッセージを含む終了画面を表示する。そして、端末装置TE1は、取得済みの能力通知CNを消去する。これにより、プリンタPRが端末装置TE1に登録されている状態が解除される。従って、端末装置TE1がプリンタPRに印刷を再び実行させるためには、S10〜S32の処理を含む各処理(即ちS10〜S52の全ての処理)が再び実行される。
(印刷データ取得時処理;図3)
続いて、図3を参照して、プリンタPRによって実行される印刷データ取得時処理の内容を説明する。プリンタPRのCPU22は、端末装置(例えばTE1)から印刷データと印刷設定情報とを取得する場合(図2のPD,SI参照)に、図3の処理を開始する。以下では、印刷データの供給元の端末装置のことを「対象端末装置」と呼ぶ。なお、図3の処理は、図2のS40の印刷処理と終了通知ENの供給とを含む。
S100では、CPU22は、対象端末装置から取得された印刷設定情報内に「gzip圧縮=ON」を示す文字列が含まれるのか否かを判断する。CPU22は、印刷設定情報内に「gzip圧縮=ON」を示す文字列が含まれる場合、即ち、gzip圧縮が実行されて生成された圧縮印刷データが対象端末装置から取得された場合には、S100でYESと判断して、S110〜S114の印刷処理を実行する。一方、CPU22は、印刷設定情報内に「gzip圧縮=OFF」を示す文字列が含まれる場合、即ち、gzip圧縮が実行されずに生成された非圧縮印刷データが対象端末装置から取得された場合には、S100でNOと判断して、S152及びS154の印刷処理を実行する。なお、S110〜S114の印刷処理とS152及びS154の印刷処理とは、図2のS40の印刷処理の具体的な処理を示す。
S110では、CPU22は、圧縮印刷データを解凍する解凍処理を実行して、解凍済み印刷データを生成する。解凍済み印刷データは、多階調(例えば256階調)のRGBのBMPデータと、解凍済み印刷データが有するデータ形式(例えばPDF、JPEG等)に対応する各種のコマンドと、を含む。上記の各種のコマンドは、例えば、フォント形式を指示するコマンド、装飾(例えばグラデーション)を指示するコマンド等を含む。
S112では、CPU22は、S110で生成された解凍済み印刷データを展開する展開処理を実行して、二値データを生成する。具体的には、CPU22は、まず、解凍済み印刷データに含まれる各種のコマンドを用いて、解凍済み印刷データに含まれるBMPデータを加工して、加工済みBMPデータを生成する。例えば、CPU22は、フォント形式を指示するコマンドを用いて、当該フォント形式を有するテキストを表わす加工済みBMPデータを生成する。次いで、CPU22は、加工済みBMPデータに対する色変換処理を実行して、多階調(例えば256階調)のCMYKのBMPデータを生成する。そして、CPU22は、多階調のCMYKのBMPデータに対する二値化処理を実行して、二階調(即ちドットON又はドットOFF)のCMYKのBMPデータである二値データを生成する。なお、変形例では、CPU22は、二値データに代えて、三階調(例えば、大ドットON、小ドットON、ドットOFF)のBMPデータを生成してもよいし、四階調以上のBMPデータを生成してもよい。
S114では、CPU22は、S112で生成された二値データを印刷実行部16に供給する。これにより、印刷実行部16は、二値データによって表わされる画像を印刷媒体に印刷を実行する。この結果、印刷済みの印刷媒体をユーザに提供することができる。
CPU22は、S110〜S114の印刷処理が終了すると、S116において、終了通知を対象端末装置に供給する。
次いで、S120では、CPU22は、圧縮印刷データの圧縮効率を示す指標値を算出する。具体的には、CPU22は、数式「(圧縮データサイズ/解凍データサイズ)×100(%)」を用いて、サイズ率を算出する。ここで、圧縮データサイズは、S100で取得された圧縮印刷データのデータサイズであり、解凍データサイズは、S110で生成された解凍済み印刷データのデータサイズである。
例えば、印刷データが写真を表わすデータであれば、通常、印刷データに含まれるBMPデータを構成する複数個の画素に含まれる連続画素の数が少なくなり、この結果、サイズ率が比較的に高くなる(即ち圧縮効率が低くなる)。ここで、連続画素は、隣接する画素が有する画素値に一致する画素値を有する画素である。また、例えば、印刷データがテキストを表わすデータであれば、通常、印刷データに含まれるBMPデータを構成する複数個の画素に含まれる連続画素の数が多くなり、通常、サイズ率が比較的に低くなる(即ち圧縮効率が高くなる)。連続画素の数が多くなる理由は、テキストの背景を表わす各画素が同じ画素値を有するからである。
S122では、CPU22は、メモリ24内の履歴情報34(図1参照)に含まれる3個のサイズ率のうちの最も古いサイズ率を消去し、S120で算出されたサイズ率を履歴情報34に追加する。これにより、最新の3個のサイズ率が履歴情報34に含まれることになる。
S130では、CPU22は、履歴情報34に含まれる3個のサイズ率の全てについて、圧縮効率が予め決められている基準効率よりも低いのか否かを判断する。具体的には、CPU22は、3個のサイズ率の全ての値が基準効率を示す基準値「80%」よりも大きい場合に、圧縮効率が基準効率よりも低いと判断して(S130でYES)、S132に進む。一方、CPU22は、3個のサイズ率の少なくとも1個の値が基準値「80%」以下である場合に、圧縮効率が基準効率よりも低くないと判断して(S130でNO)、S132をスキップし、図3の処理を終了する。
S132では、CPU22は、メモリ24内の能力情報32に含まれるgzip情報を「OK」から「NG」に変更する。これにより、その後、CPU22は、対象端末装置又は他の端末装置から能力情報要求を取得する場合に、「NG」を示すgzip情報を含む能力通知を当該端末装置に供給することができ、この結果、当該端末装置から非圧縮印刷データを取得することができる。
非圧縮印刷データが取得される場合には、S152及びS154の印刷処理が実行される。S152は、解凍済み印刷データに代えて、S100で取得された非圧縮印刷データが利用される点を除くと、S112と同様である。また、S154及びS156は、S114及びS116と同様である。
S160では、CPU22は、S100で取得された非圧縮印刷データに対するgzip圧縮を実行する場合における圧縮効率を示す指標値を算出する。具体的には、CPU22は、まず、非圧縮印刷データに対するgzip圧縮を実行して、圧縮印刷データを生成する。そして、CPU22は、数式「(圧縮データサイズ/解凍データサイズ)×100(%)」を用いて、サイズ率を算出する。ここで、圧縮データサイズは、S160で生成された圧縮印刷データのデータサイズであり、解凍データサイズは、S100で取得された非圧縮印刷データのデータサイズである。S162は、S122と同様である。従って、履歴情報34に含まれる3個のサイズ率は、S120で算出されるサイズ率と、S160で算出されるサイズ率と、の双方を含み得る。
S164では、CPU22は、メモリ24内の能力情報32に含まれるgzip情報が「NG」を示すのか「OK」を示すのかを判断する。CPU22は、gzip情報が「NG」を示すと判断する場合(S164でYES)には、S170及びS172に進み、gzip情報が「OK」を示すと判断する場合(S164でNO)には、S170及びS172をスキップし、図3の処理を終了する。
S170では、CPU22は、履歴情報34に含まれる3個のサイズ率の全てについて、圧縮効率が基準効率よりも高いのか否かを判断する。具体的には、CPU22は、3個のサイズ率の全ての値が基準値「80%」よりも小さい場合に、圧縮効率が基準効率よりも高いと判断して(S170でYES)、S172に進む。一方、CPU22は、3個のサイズ率の少なくとも1個の値が基準値「80%」以上である場合に、圧縮効率が基準効率よりも高くないと判断して(S170でNO)、S172をスキップし、図3の処理を終了する。なお、本実施例では、S170で利用される基準値「80%」は、S130で利用される基準値と同じであるが、変形例では、これらの基準値が異なる値でもよい。
S172では、CPU22は、メモリ24内の能力情報32に含まれるgzip情報を「NG」から「OK」に変更する。これにより、その後、CPU22は、対象端末装置又は他の端末装置から能力情報要求を取得する場合に、「OK」を示すgzip情報を含む能力通知を当該端末装置に供給することができ、この結果、当該端末装置から圧縮印刷データを取得することができる。
(具体的なケース;図4)
続いて、図4を参照して、本実施例の具体的なケースを説明する。図4の各処理は、図2を参照して説明済みの各処理と、図3のフローチャートの各処理と、を用いて実現される。図4では、説明済みの処理のうちの一部を図示省略している。例えば、図4でも、端末装置TE1において設定画面が表示され(図2のS30)、ユーザから指定指示(S32)が与えられるが、これらの処理を図示省略している。図4の初期状態では、プリンタPRの能力情報32に含まれるgzip情報は、「OK」を示す。また、図1に示されるように、履歴情報34では、最も古いサイズ率「50%」が基準効率よりも高い圧縮効率を示し(即ち「80%」よりも小さい値を示し)、他の2個のサイズ率「87%」,「92%」が基準効率よりも低い圧縮効率を示す(即ち「80%」よりも大きい値を示す)。
端末装置TE1は、S210でユーザから登録指示を受け付ける場合に、能力情報要求IR1をプリンタPRに供給する。プリンタPRは、端末装置TE1から能力情報要求IR1を取得する場合に、能力情報32に含まれるgzip情報が「OK」を示すので、「OK」を示すgzip情報を含む能力通知CN1を端末装置TE1に供給する。
端末装置TE1は、プリンタPRから能力通知CN1を取得する場合に、S212において、指定画像データから圧縮印刷データPD1を生成する。そして、端末装置TE1は、圧縮印刷データPD1と、「gzip圧縮=ON」を示す文字列を含む印刷設定情報SI1と、をプリンタPRに供給する。プリンタPRは、端末装置TE1から圧縮印刷データPD1と印刷設定情報SI1とを取得する場合(図3の処理のトリガ)に、S220において、解凍処理を含む印刷処理を実行する(S100でYES、S110〜S114)。そして、プリンタPRは、終了通知EN1を端末装置TE1に供給する(S116)。
次いで、S222では、プリンタPRは、基準効率よりも低い圧縮効率を有するサイズ率(即ち80%よりも大きいサイズ率)を算出し(S120)、履歴情報34に含まれる最も古いサイズ率「50%」を消去して、算出済みのサイズ率を履歴情報34に追加する(S122)。この結果、履歴情報34に含まれる3個のサイズ率の全てについて、圧縮効率が基準効率よりも低くなる(S130でYES)。従って、S224では、プリンタPRは、能力情報32に含まれるgzip情報を「OK」から「NG」に変更する(S132)。
その後、端末装置TE1は、S230でユーザから登録指示を受け付ける場合に、能力情報要求IR2をプリンタPRに供給する。プリンタPRは、S224でgzip情報が「NG」に変更されたので、端末装置TE1から能力情報要求IR2を取得する場合に、「NG」を示すgzip情報を含む能力通知CN2を端末装置TE1に供給する。
端末装置TE1は、プリンタPRから能力通知CN2を取得する場合に、S232において、指定画像データから非圧縮印刷データPD2を生成する。端末装置TE1は、非圧縮印刷データPD2と、「gzip圧縮=OFF」を示す文字列を含む印刷設定情報SI2と、をプリンタPRに供給する。プリンタPRは、端末装置TE1から非圧縮印刷データPD2と印刷設定情報SI2とを取得する場合(S100でNO、図3の処理のトリガ)に、S240において、解凍処理を含まない印刷処理を実行する(S152及びS154)。そして、プリンタPRは、終了通知EN2を端末装置TE1に供給する(S156)。
ケースAは、非圧縮印刷データPD2に基づいて、基準効率よりも低い圧縮効率を有するサイズ率(即ち80%よりも大きいサイズ率)が算出されるケースである。S242Aでは、プリンタPRは、非圧縮印刷データPD2に対するgzip圧縮を実行し、基準効率よりも低い圧縮効率を有するサイズ率を算出して(S160)、当該サイズ率を履歴情報34に追加する(S162)。これにより、履歴情報34に含まれる3個のサイズ率の全てについて、圧縮効率が基準効率よりも低い状態が維持され、能力情報32に含まれるgzip情報が「NG」に維持される(S164でYES、S170でNO)。
一方、ケースBは、非圧縮印刷データPD2に基づいて、基準効率よりも高い圧縮効率を有するサイズ率(即ち80%よりも小さいサイズ率)が算出されるケースである。S242Bでは、プリンタPRは、非圧縮印刷データPD2に対するgzip圧縮を実行し、基準効率よりも高い圧縮効率を有するサイズ率を算出して(S160)、当該サイズ率を履歴情報34に追加する(S162)。これにより、履歴情報34に含まれる3個のサイズ率のうちの最新の1個のサイズ率について、圧縮効率が基準効率よりも高くなる。ただし、履歴情報34に含まれる他の2個のサイズ率について、圧縮効率が基準効率よりも低いので、能力情報32に含まれるgzip情報が「NG」に維持される(S164でYES、S170でNO)。
ケースBでは、その後、図示省略しているが、端末装置TE1からプリンタPRに複数個の非圧縮印刷データが順次供給され、複数個の非圧縮印刷データのそれぞれに対するgzip圧縮が順次実行され、それらの全ての非圧縮印刷データについて、基準効率よりも高い圧縮効率を有するサイズ率(即ち80%よりも小さいサイズ率)が算出される。この結果、履歴情報34に含まれる3個のサイズ率の全てについて、圧縮効率が基準効率よりも高くなる。従って、S244では、プリンタPRは、能力情報32に含まれるgzip情報を「NG」から「OK」に変更する(S164でYES、S170でYES、S172)。
その後、端末装置TE1は、S250でユーザから登録指示を受け付ける場合に、能力情報要求IR3をプリンタPRに供給する。プリンタPRは、S244でgzip情報が「OK」に変更されたので、端末装置TE1から能力情報要求IR3を取得する場合に、「OK」を示すgzip情報を含む能力通知CN3を端末装置TE1に供給する。この結果、図示省略しているが、プリンタPRは、端末装置TE1から圧縮印刷データを取得して(S100でYES)、解凍処理を含む印刷処理を実行する(S110〜S114)。
(本実施例の効果)
印刷データの圧縮効率が比較的に高い状況では、端末装置TE1が圧縮印刷データをプリンタPRに供給すれば、圧縮印刷データの通信時間が効果的に短くなるので、印刷済み印刷媒体をユーザに迅速に提供することができる。しかしながら、印刷データの圧縮効率が比較的に低い状況では、端末装置TE1が圧縮印刷データをプリンタPRに供給しても、圧縮印刷データの通信時間T1がそれほど短くならない。また、プリンタPRでは、圧縮印刷データに対する解凍処理を実行する処理時間T2が必要である。印刷データの圧縮効率が低い状況において、仮に、端末装置TE1が非圧縮印刷データをプリンタPRに供給するようにすれば、非圧縮印刷データの通信時間T3が上記の通信時間T1よりも長くなるが、プリンタPRが解凍処理を実行せずに済むので上記の処理時間T2が不要である。即ち、印刷データの圧縮効率が低い状況では、T3<T1+T2という関係になり得るので、非圧縮印刷データを供給する構成を採用した方が、圧縮印刷データを供給する構成と比べて、印刷済み印刷媒体をユーザに迅速に提供し得る。
上記の実情に鑑みて、本実施例では、図4に示されるように、プリンタPRは、圧縮印刷データPD1の圧縮効率が比較的に低い場合に、gzip圧縮を実行可能であるにも関わらず、能力情報32内のgzip情報を「OK」から「NG」に変更する(S224)。例えば、端末装置TE1のユーザが写真を表わす印刷データ(即ち低い圧縮効率を有する印刷データ)を用いた印刷をプリンタPRに頻繁に実行させる状況では、gzip情報が「OK」から「NG」に変更される(S224)。そして、この後も、ユーザが写真を表わす印刷データを用いた印刷をプリンタPRに実行させることが予想される。このような状況において、プリンタPRは、端末装置TE1から能力情報要求IR2を取得する場合に、「NG」を示すgzip情報を含む能力通知CN2を端末装置TE1に供給する。この結果、プリンタPRは、端末装置TE1から非圧縮印刷データPD2を取得して、解凍処理を含まない印刷処理を実行する(S240)。そして、ケースAに示されるように、プリンタPRは、低い圧縮効率を有する非圧縮印刷データPD2を取得する場合に、解凍処理を実行せずに済むので、印刷済み印刷媒体をユーザに迅速に提供し得る。このように、本実施例によると、印刷データを用いた印刷が適切に実行され得る。
また、ケースBに示されるように、例えば、端末装置TE1のユーザがテキストを表わす印刷データ(即ち高い圧縮効率を有する印刷データ)を用いた印刷をプリンタPRに頻繁に実行させる状況では、gzip情報が「NG」から「OK」に変更される(S244)。そして、この後も、ユーザがテキストを表わす印刷データを用いた印刷をプリンタPRに実行させることが予想される。このような状況において、プリンタPRは、端末装置TE1から能力情報要求IR3を取得する場合に、「OK」を示すgzip情報を含む能力通知CN3を端末装置TE1に供給する。この結果、プリンタPRは、端末装置TE1から圧縮印刷データを取得して、解凍処理を含む印刷処理を実行する。当該圧縮印刷データの圧縮効率が高い場合には、当該圧縮印刷データの通信時間が短くて済むので、印刷済み印刷媒体をユーザに迅速に提供し得る。このように、本実施例によると、印刷データを用いた印刷が適切に実行され得る。
(対応関係)
図4では、端末装置TE1が、「第1の外部装置」、「第2の外部装置」、及び、「第3の外部装置」の一例である。「OK」を示すgzip情報を含む能力通知CN1が、「特定の処理能力を示す情報を含む第1の能力情報」の一例である。能力通知CN2、能力通知CN3が、それぞれ、「第2の能力情報」、「第3の能力情報」の一例である。圧縮印刷データPD1、非圧縮印刷データPD2が、それぞれ、「第1の印刷データ」、「第2の印刷データ」の一例である。圧縮印刷データPD1の元の指定画像データ、非圧縮印刷データPD2の元の指定画像データが、それぞれ、「第1の画像データ」、「第2の画像データ」の一例である。
図3では、S110〜S114が、「第1の印刷処理」の一例であり、S152及びS154が、「第2の印刷処理」の一例である。S110の解凍処理が、「特定の処理」の一例である。S120で算出されるサイズ率、S160で算出されるサイズ率が、それぞれ、「第1の圧縮効率」、「第2の圧縮効率」の一例である。S130で利用される基準値「80%」、S170で利用される基準値「80%」が、それぞれ、「第1の基準効率」、「第2の基準効率」の一例である。S130でYESと判断されること、S170でYESと判断されることが、それぞれ、「第1の所定条件を満たす」、「第2の所定条件を満たす」の一例である。
(サイズ率の変形例)
上記の第1実施例では、S120及びS160では、数式「(圧縮データサイズ/解凍データサイズ)×100(%)」を用いてサイズ率が算出される。これに代えて、サイズ率は、例えば、数式「(解凍データサイズ/圧縮データサイズ)×100(%)」を用いて算出されてもよい。本変形例では、サイズ率の値が大きい程、圧縮効率が高くなり、サイズ率の値が小さい程、圧縮効率が低くなる。S130では、CPU22は、サイズ率が基準効率を示す基準値(例えば「125%」)よりも小さい場合に、圧縮効率が基準効率よりも低いと判断してもよい。また、S170では、CPU22は、サイズ率が基準効率を示す基準値(例えば「125%」)よりも大きい場合に、圧縮効率が基準効率よりも高いと判断してもよい。なお、本変形例は、後述の第2及び第4実施例において利用されるサイズ率にも適用可能である。
(第2実施例)
本実施例では、図3のS160、S162、及び、S170が第1実施例とは異なり、これら以外の図3の各処理は、第1実施例と同様である。S160では、CPU22は、非圧縮印刷データに含まれるBMPデータを構成する複数個の画素の連続画素率を算出する。また、図1に示されるように、メモリ24内の履歴情報34は、S122でサイズ率が追加される第1の履歴情報と、S162で連続画素率が追加される第2の履歴情報と、を含む。第1の履歴情報、第2の履歴情報は、それぞれ、最大で3個の指標値を含む。第1の履歴情報が利用されてS130の処理が実行される点は、第1実施例と同様である。
図5を参照して、連続画素率の算出方法を説明する。図5は、非圧縮印刷データに含まれるBMPデータを構成する複数個の画素の一部を示す。CPU22は、複数個の画素のうちの1個の画素を対象画素として特定する。そして、CPU22は、対象画素が有する画素値(例えば上の行の左から2番目の「255.255.255」)と、対象画素の左側に隣接する隣接画素が有する画素値(例えば上の行の最も左の「255.255.255」)と、が一致する場合に、対象画素を連続画素としてカウントする。CPU22は、対象画素が有する画素値(例えば上の行の左から3番目の「200.150.150」)と、隣接画素が有する画素値(例えば上の行の左から2番目の「255.255.255」)と、が一致しない場合に、対象画素を連続画素としてカウントしない。CPU22は、複数個の画素のそれぞれを対象画素として特定して、連続画素の合計数を算出する。なお、対象画素の特定方法は、例えば、以下のとおりである。即ち、CPU22は、まず、複数個の画素を構成する複数行のうちの最も上の行において、左から右に向かって対象画素を順次特定する。CPU22は、最も右側の対象画素を特定すると、当該対象画素の1つ下の行において、左から右に向かって対象画素を順次特定する。CPU22は、これらの処理を繰り返すことによって、複数個の画素の全てを対象画素として順次特定することができる。次いで、CPU22は、数式「(連続画素の合計数/全画素数)×100(%)」を用いて、連続画素率を算出する。ここで、全画素数は、非圧縮印刷データに含まれるBMPデータを構成する全画素数である。
上述したように、例えば、印刷データがテキストを表わすデータであれば、通常、連続画素の合計数が大きくなる。この場合、連続画素率が大きくなり、この結果、圧縮効率が高くなる。また、例えば、印刷データが写真を表わすデータであれば、通常、連続画素の合計数が小さくなる。この場合、連続画素率が小さくなり、この結果、圧縮効率が低くなる。即ち、サイズ率については、値が大きい程、圧縮効率が低くなるが、連続画素率については、値が大きい程、圧縮効率が高くなる。
図3のS162では、CPU22は、メモリ24内の第2の履歴情報に含まれる3個の連続画素率のうちの最も古い連続画素率を消去し、S160で算出された連続画素率を第2の履歴情報に追加する。これにより、最新の3個の連続画素率が第2の履歴情報に含まれることになる。
S170では、CPU22は、第2の履歴情報に含まれる3個の連続画素率の全ての値が基準値「20%」よりも大きい場合に、3個の連続画素率の全てについて、圧縮効率が基準効率よりも高いと判断して(S170でYES)、S172に進む。一方、CPU22は、3個の連続画素率の少なくとも1個の値が上記の基準値「20%」以下である場合に、圧縮効率が基準効率よりも高くないと判断する(S170でNO)。
本実施例でも、第1実施例と同様に、印刷データを用いた印刷が適切に実行され得る。また、第1実施例とは異なり、図3のS160において、プリンタPRは、非圧縮印刷データを圧縮せずに済むので、非圧縮印刷データを圧縮するためのプログラムを備えずに済む。このために、メモリ24内のプログラムの容量が少なくて済む。本実施例では、S170で利用される基準値「20%」が、「第2の基準効率」の一例である。
(連続画素率の変形例)
上記の第2実施例では、S160では、数式「(連続画素の合計数/全画素数)×100(%)」を用いて連続画素率が算出される。これに代えて、S160では、数式「(非連続画素の合計数/全画素数)×100(%)」を用いて非連続画素率が算出されてもよい。ここで、非連続画素は、隣接する画素が有する画素値に一致しない画素値を有する画素である。図5の例では、上の行の左から3番目の対象画素が有する画素値(即ち「200.150.150」)は、対象画素の左側に隣接する隣接画素が有する画素値(即ち「255.255.255」)に一致しないので、対象画素が非連続画素としてカウントされる。非連続画素率の値が大きい程、圧縮効率が低くなり、非連続画素の値が小さい程、圧縮効率が高くなる。本変形例では、S170では、CPU22は、非連続画素率が基準効率を示す基準値(例えば「80%」)よりも小さい場合に、圧縮効率が基準効率よりも高いと判断してもよい。なお、後述の第3実施例においても、連続画素率に代えて非連続画素率が適用されてもよい。
(第3実施例)
本実施例では、図3のS120、S122、S130、S160、S162、及び、S170が第1実施例とは異なり、これら以外の図3の各処理は、第1実施例と同様である。S120及びS160のそれぞれにおいて、CPU22は、第2実施例と同様の手法を利用して、連続画素率を算出する。また、図1に示されるように、メモリ24内の履歴情報34は、最大で3個の連続画素率を含む。履歴情報34に含まれる3個の連続画素率は、S120で算出される連続画素率と、S160で算出される連続画素率と、の双方を含み得る。
S122では、CPU22は、メモリ24内の履歴情報34に含まれる3個の連続画素率のうちの最も古い連続画素率を消去し、S120で算出された連続画素率を履歴情報34に追加する。これにより、最新の3個の連続画素率が履歴情報34に含まれることになる。
S130では、CPU22は、履歴情報34に含まれる3個の連続画素率の全ての値が基準値「20%」よりも小さい場合に、3個の連続画素率の全てについて、圧縮効率が基準効率よりも低いと判断して(S130でYES)、S132に進む。一方、CPU22は、3個の連続画素率の少なくとも1個の値が基準値「20%」以上である場合に、圧縮効率が基準効率よりも低くないと判断する(S130でNO)。S170は、第2実施例と同様である。
本実施例でも、第1実施例と同様に、印刷データを用いた印刷が適切に実行され得るし、第2実施例と同様に、メモリ24内のプログラムの容量が少なくて済む。本実施例では、連続画素、S120で算出される連続画素率が、それぞれ、「特定の画素」、「第1の圧縮効率」の一例である。
なお、変形例では、CPU22は、図3のS120において、第3実施例と同様に、連続画素率を算出し、S160において、第1実施例と同様に、サイズ率を算出してもよい。本変形例では、メモリ24内の履歴情報34は、S122で連続画素率が追加される第1の履歴情報と、S162でサイズ率が追加される第2の履歴情報と、を含む。
(第4実施例;図6)
本実施例では、端末装置毎のサイズ率が履歴情報34として記憶される。履歴情報34は、端末装置毎に最大で3個のサイズ率を含む。例えば、履歴情報34は、端末装置TE1のMACアドレスに対応付けて最大で3個のサイズ率を含むと共に、端末装置TE2のMACアドレスに対応付けて最大で3個のサイズ率を含む。
図3のS122では、CPU22は、S100で取得された印刷データの供給元の端末装置(即ち対象端末装置)のMACアドレスを特定し、メモリ24内の履歴情報34に含まれる当該MACアドレスに対応する3個のサイズ率のうちの最も古いサイズ率を消去し、当該MACアドレスに対応付けてS120で算出されたサイズ率を履歴情報34に追加する。S162も同様に実行される。また、本実施例では、S130、S132、S164、S170、及び、S172が実行されない。
(具体的なケース)
図6を参照して、本実施例の具体的なケースを説明する。図6の例では、履歴情報34は、端末装置TE1のMACアドレス「M1」に対応する3個のサイズ率と、端末装置TE2のMACアドレス「M2」に対応する3個のサイズ率と、を含む。より具体的には、MACアドレス「M1」に対応する3個のサイズ率では、最も古いサイズ率「53%」が基準値「80%」以下であり(即ち圧縮効率が比較的に高く)、他の2個のサイズ「90%」及び「88%」が基準値「80%」よりも大きい(即ち圧縮効率が比較的に低い)。また、MACアドレス「M2」に対応する全ての3個のサイズ率(「33%」等)は、基準値「80%」以下である(即ち圧縮効率が比較的に高い)。
端末装置TE1は、S310でユーザから登録指示を受け付ける場合に、MACアドレス「M1」を含む能力情報要求IR4をプリンタPRに供給する。プリンタPRは、端末装置TE1から能力情報要求IR4を取得する場合に、S311において、履歴情報34からMACアドレス「M1」に対応する3個のサイズ率を読み出す。そして、プリンタPRは、当該3個のサイズ率のうちの少なくとも1個のサイズ率「53%」が基準値「80%」以下であるので、即ち、端末装置TE1から過去に取得された印刷データの圧縮効率が基準効率よりも高いので、「OK」を示すgzip情報を含む能力通知CN4を端末装置TE1に供給する。
端末装置TE1は、プリンタPRから能力通知CN4を取得する場合に、S312において、指定画像データから圧縮印刷データPD4を生成する。そして、端末装置TE1は、圧縮印刷データPD4と、「gzip圧縮=ON」を示す文字列を含む印刷設定情報SI4と、をプリンタPRに供給する。プリンタPRは、端末装置TE1から圧縮印刷データPD4と印刷設定情報SI4とを取得する場合(図3の処理のトリガ)に、S320において、解凍処理を含む印刷処理を実行する(S100でYES、S110〜S114)。そして、プリンタPRは、終了通知EN4を端末装置TE1に供給する(S116)。
次いで、S322では、プリンタPRは、基準効率よりも低い圧縮効率を有するサイズ率「89%」を算出し(S120)、MACアドレス「M1」に対応する最も古いサイズ率「53%」を消去し、算出済みのサイズ率「89%」をMACアドレス「M1」に対応付けて履歴情報34に追加する(S122)。この結果、MACアドレス「M1」に対応する3個のサイズ率の全てが基準値「80%」よりも大きくなる。即ち、端末装置TE1から過去に取得された最新の3個の印刷データの全ての圧縮効率が基準効率よりも低くなる。
その後、端末装置TE1とは異なる端末装置TE2は、S330でユーザから登録指示を受け付ける場合に、MACアドレス「M2」を含む能力情報要求IR5をプリンタPRに供給する。プリンタPRは、端末装置TE2から能力情報要求IR5を取得する場合に、S331において、履歴情報34からMACアドレス「M2」に対応する3個のサイズ率を読み出す。そして、プリンタPRは、当該3個のサイズ率のうちの少なくとも1個のサイズ率が基準値「80%」以下であるので、「OK」を示すgzip情報を含む能力通知CN5を端末装置TE2に供給する。
端末装置TE2は、プリンタPRから能力通知CN5を取得する場合に、S332において、指定画像データから圧縮印刷データPD5を生成する。そして、端末装置TE2は、圧縮印刷データPD5と、「gzip圧縮=ON」を示す文字列を含む印刷設定情報SI5と、をプリンタPRに供給する。プリンタPRは、端末装置TE2から圧縮印刷データPD5と印刷設定情報SI5とを取得する場合(図3の処理のトリガ)に、S340において、解凍処理を含む印刷処理を実行する(S100でYES、S110〜S114)。そして、プリンタPRは、終了通知EN5を端末装置TE2に供給する(S116)。
次いで、S342では、プリンタPRは、比較的に高い圧縮効率を有するサイズ率「30%」を算出し(S120)、MACアドレス「M2」に対応する最も古いサイズ率「33%」を消去し、算出済みのサイズ率「30%」をMACアドレス「M2」に対応付けて履歴情報34に追加する(S122)。
その後、端末装置TE1は、S350でユーザから登録指示を受け付ける場合に、能力情報要求IR6をプリンタPRに供給する。プリンタPRは、端末装置TE1から能力情報要求IR6を取得する場合に、S351において、履歴情報34からMACアドレス「M1」に対応する3個のサイズ率を読み出す。そして、プリンタPRは、当該3個のサイズ率のうちの全てが基準値「80%」以上であるので、「NG」を示すgzip情報を含む能力通知CN6を端末装置TE1に供給する。この結果、図示省略しているが、プリンタPRは、端末装置TE1から非圧縮印刷データを取得して(S100でYES)、解凍処理を含まない印刷処理を実行する(S152及びS154)。
(本実施例の効果)
本実施例では、プリンタPRは、端末装置TE1から能力情報要求IR4を取得する場合に、「OK」を示すgzip情報を含む能力通知CN4を端末装置TE1に供給する。プリンタPRは、圧縮印刷データPD4の圧縮効率が基準効率よりも低く、かつ、端末装置TE1から能力情報要求IR6を取得する場合に、「NG」を示すgzip情報を含む能力通知CN6を端末装置TE1に供給する。このために、端末装置TE1からプリンタPRに比較的に低い圧縮効率を有する圧縮印刷データPD6が供給される場合に、プリンタPRが解凍処理を実行せずに済み、この結果、印刷済み印刷媒体をユーザに迅速に提供し得る。
一方、プリンタPRは、圧縮印刷データPD4の圧縮効率が基準効率よりも低く、かつ、端末装置TE1とは異なる端末装置TE2から能力情報要求IR5を取得する場合に、「OK」を示すgzip情報を含む能力通知CN5を端末装置TE2に供給する。このように、本実施例によると、プリンタPRは、端末装置TE1のMACアドレス「M1」に対応付けられている3個のサイズ率の全てが基準効率よりも低い場合でも、端末装置TE2から能力情報要求IR5を取得する場合に、「OK」を示すgzip情報を含む能力通知CN5を端末装置TE2に供給する。このために、端末装置TE2からプリンタPRに比較的に高い圧縮効率を有する圧縮印刷データPD5が供給される場合に、圧縮印刷データPD5の通信時間が短くて済むので、印刷済み印刷媒体をユーザに迅速に提供し得る。このために、端末装置TE1,TE2に応じて、印刷データを用いた印刷が適切に実行され得る。
(対応関係)
本実施例では、端末装置TE1が、「第1の外部装置」及び「第2の外部装置」の一例であり、端末装置TE2が、「第4の外部装置」の一例である。能力情報要求IR4〜IR6が、「所定の要求」の一例である。能力通知CN4、能力通知CN6、能力通知CN5が、それぞれ、「第1の能力情報」、「第2の能力情報」、「第4の能力情報」の一例である。
(第5実施例)
上記の第1実施例〜第4実施例では、プリンタPRは、印刷データの圧縮効率に注目して、「OK」を示すgzip情報を含む能力通知を供給するのか、「NG」を示すgzip情報を含む能力通知を供給するのか、を変える。これに対し、本実施例では、プリンタPRは、PDF形式を有する印刷データに対する展開処理が成功するのか失敗するのかに応じて、「PDF」を示すデータ形式情報を含む能力通知を供給するのか、「PDF」を示さないデータ形式情報を含む能力通知を供給するのか、を変える。
(印刷データ取得時処理;図7)
プリンタPRのCPU22は、図3の処理に代えて、図7の印刷データ取得時処理を実行する。CPU22は、対象端末装置から印刷データと印刷設定情報とを取得する場合に、図7の処理を開始する。なお、図7の処理は、図2のS40の印刷処理と終了通知ENの供給とを含む。
S400では、CPU22は、印刷設定情報内に「データ形式=PDF」を示す文字列が含まれるのか否かを判断する。CPU22は、印刷設定情報内に「データ形式=PDF」を示す文字列が含まれる場合、即ち、PDF形式を有する印刷データが取得された場合には、S400でYESと判断して、S412〜S414の印刷処理を実行する。一方、CPU22は、印刷設定情報内に「データ形式=PDF」を示す文字列が含まれない場合、即ち、JPEG形式又はPWG形式を有する印刷データが取得された場合には、S452及びS454の印刷処理を実行する。なお、S412〜S414の印刷処理とS452及びS454の印刷処理とは、図2のS40の印刷処理の具体的な処理を示す。
S412では、CPU22は、PDF形式を有する印刷データを展開する展開処理を実行して、二値データを生成する。S412の処理は、図3のS112と同様である。ただし、本実施例では、プリンタPRがPDF形式を有する印刷データを展開することができない状況が起こり得ることを想定している。例えば、PDFでは、様々な種類のコマンドが利用され得るが、本実施例のプリンタPRは、PDFで利用される全てのコマンドをサポートしていない。即ち、プリンタPRは、特殊なフォント形式を指示するコマンド、特殊なグラデーションを指示するコマンド、JEPG2000を用いたコマンド、JPEG2を用いたコマンド等をサポートしていない。従って、このような特殊なコマンドを含むPDF形式の印刷データが取得される場合には、CPU22は、当該印刷データを展開することができず、この結果、二値データを生成することができない。このように、S412では、CPU22は、PDF形式を有する印刷データを展開することを試行する試行処理を実行する。
S413では、CPU22は、S412の展開処理が成功したのか否かを判断する。CPU22は、展開処理が成功して二値データが生成された場合には、S413でYESと判断して、S414及びS416を実行する。S414及びS416は、図3のS114及びS116と同様である。S416が終了すると、図7の処理が終了する。一方、CPU22は、展開処理が成功せずに二値データが生成されなかった場合には、S413でNOと判断して、S420に進む。
S420では、CPU22は、メモリ24内の能力情報32に含まれるデータ形式情報から「PDF」を消去する。これにより、その後、CPU22は、対象端末装置又は他の端末装置から能力情報要求を取得する場合に、「PDF」を示さないデータ形式情報を含む能力通知を当該端末装置に供給することができ、この結果、当該端末装置からPDF形式とは異なるデータ形式を有する印刷データを取得することができる。
S422では、CPU22は、印刷データを展開不可能であることを示すメッセージ、即ち、印刷を実行不可能であることを示すメッセージを含むエラー通知を対象端末装置に供給する。これにより、対象端末装置で当該メッセージが表示されるので、ユーザは、印刷を実行不可能であることを知ることができる。S422が終了すると、図7の処理が終了する。
一方、JPEG形式又はPWG形式を有する印刷データが取得された場合には、CPU22は、S452〜S456を順次実行する。S452〜S456は、図3のS112〜S116(即ちS152〜S156)と同様である。
S460では、CPU22は、メモリ24内の能力情報32に含まれるデータ形式情報に「PDF」が記述されているのか否かを判断する。CPU22は、データ形式情報に「PDF」が記述されていると判断する場合(S460でYES)には、S462をスキップし、図7の処理を終了する。一方、CPU22は、データ形式情報に「PDF」が記述されていないと判断する場合(S460でNO)には、データ形式情報に「PDF」を追加する。これにより、その後、CPU22は、対象端末装置又は他の端末装置から能力情報要求を取得する場合に、「PDF」を示すデータ形式情報を含む能力通知を当該端末装置に供給することができ、この結果、当該端末装置からPDF形式を有する印刷データを取得することができる。S462が終了すると、図7の処理が終了する。
(具体的なケース;図8)
図8を参照して、本実施例の具体的なケースを説明する。端末装置TE1は、S510でユーザから登録指示を受け付ける場合に、能力情報要求IR7をプリンタPRに供給する。プリンタPRは、端末装置TE1から能力情報要求IR7を取得する場合に、「PDF」を示すデータ形式情報を含む能力通知CN7を端末装置TE1に供給する。
端末装置TE1は、プリンタPRから能力通知CN7を取得する場合に、S512において、指定画像データからPDF形式を有する印刷データPD7を生成する。そして、端末装置TE1は、印刷データPD7と、「データ形式=PDF」を示す文字列を含む印刷設定情報SI7と、をプリンタPRに供給する。プリンタPRは、端末装置TE1から印刷データPD7と印刷設定情報SI7とを取得する場合(図7の処理のトリガ)に、S520において、展開処理を実行することを試行するが(S412)、展開処理に失敗する。このために、S522では、プリンタPRは、能力情報32内のデータ形式情報から「PDF」を消去する(S420)。そして、プリンタPRは、エラー通知N1を端末装置TE1に供給する(S422)。
端末装置TE1のユーザは、プリンタPRが印刷を実行不可能であることを知る場合に、S530において、登録指示を端末装置TE1に再び与える。端末装置TE1は、S530でユーザから登録指示を受け付ける場合に、能力情報要求IR8をプリンタPRに供給する。プリンタPRは、端末装置TE1から能力情報要求IR8を取得する場合に、S522でデータ形式情報から「PDF」が消去されたので、「PDF」を示さないデータ形式情報(即ち「JPEG」及び「PWG」のみを示すデータ形式情報)を含む能力通知CN8を端末装置TE1に供給する。
端末装置TE1は、プリンタPRから能力通知CN8を取得する場合に、S532において、指定画像データからPDF形式とは異なるPWG形式を有する印刷データPD8を生成する。ここで、端末装置TE1のユーザは、展開処理が失敗した指定画像データと同じ指定画像データを再び指定する。即ち、S532で生成される印刷データPD8とS512で生成される印刷データPD7とは、同じ画像データから生成される。そして、端末装置TE1は、印刷データPD8と、「データ形式=PWG」を示す文字列を含む印刷設定情報SI8と、をプリンタPRに供給する。プリンタPRは、端末装置TE1から印刷データPD8と印刷設定情報SI8とを取得する場合(図7の処理のトリガ)に、S540において、印刷処理を実行し(S452及びS454)、終了通知EN8を端末装置TE1に供給する(S456)。そして、S542では、プリンタPRは、能力情報32内のデータ形式情報に「PDF」を追加する(S462)。
その後、端末装置TE1は、S550でユーザから登録指示を受け付ける場合に、能力情報要求IR9をプリンタPRに供給する。プリンタPRは、端末装置TE1から能力情報要求IR9を取得する場合に、S542でデータ形式情報に「PDF」が追加されたので、「PDF」を示すデータ形式情報を含む能力通知CN9を端末装置TE1に供給する。この結果、図示省略しているが、プリンタPRは、端末装置TE1からPDF形式を有する印刷データを取得し得る(S400でYES)。
変形例では、端末装置TE1とは異なる端末装置TE2において、S550の登録指示が実行されてもよい。この場合、プリンタPRは、端末装置TE2から能力情報要求IR9を取得して、「PDF」を示すデータ形式情報を含む能力通知CN9を端末装置TE2に供給する。この結果、プリンタPRは、端末装置TE2からPDF形式を有する印刷データを取得し得る(S400でYES)。
(本実施例の効果)
本実施例では、図8に示されるように、プリンタPRは、PDF形式を有する印刷データPD7の展開処理に失敗する場合(S520)に、PDF形式をサポートしているにも関わらず、能力情報32内のデータ形式情報から「PDF」を消去する(S522)。このために、プリンタPRは、端末装置TE1から能力情報要求IR8を取得する場合に、「PDF」を示さないデータ形式情報を含む能力通知CN8を端末装置TE1に供給する。この結果、プリンタPRは、端末装置TE1からPDF形式とは異なるPWG形式を有する印刷データPD8を取得することができ、この結果、印刷処理を適切に実行することができる。即ち、印刷済み印刷媒体をユーザに適切に提供することができる。このように、本実施例によると、印刷データを用いた印刷が適切に実行され得る。
また、プリンタPRは、印刷データPD8を用いた印刷を実行した後に、能力情報32内のデータ形式情報に「PDF」を追加する(S542)。これにより、プリンタPRは、端末装置TE1から能力情報要求IR9を取得する場合に、「PDF」を示すデータ形式情報を含む能力通知CN9を端末装置TE1に供給する。この結果、プリンタPRは、端末装置TE1からPDF形式を有する印刷データを取得し得る。そして、プリンタPRが当該印刷データの展開処理に成功する場合には、プリンタPRは、当該印刷データを用いた印刷を適切に実行することができる。
PDF形式を有する印刷データが上記の特殊なコマンドを含むのか否かについては、印刷データの元の画像データの内容に依存し得る。例えば、画像データが特殊なフォント形式を指示するコマンドを含む場合には、その画像データから生成されるPDF形式の印刷データも当該特殊なフォント形式を指示するコマンドを含み得る。ただし、画像データが特殊なフォント形式を指示するコマンドを含まない場合には、その画像データから生成されるPDF形式の印刷データも当該特殊なフォント形式を指示するコマンドを含まない可能性が高い。上記の図8のケースでは、端末装置TE1によって特定の画像データから生成されるPDF形式を有する印刷データPD7の展開処理に失敗し、次いで、端末装置TE1によって上記の特定の画像データから生成される印刷データPD8の印刷が実行される。その後、仮に、端末装置TE1によって上記の特定の画像データとは異なる画像データからPDF形式を有する別の印刷データが生成されると、当該別の印刷データが上記の特殊なコマンドを含まない可能性がある。このような実情に鑑みて、プリンタPRは、印刷データPD8を用いた印刷を実行した後に、能力情報32内のデータ形式情報に「PDF」を追加する。この結果、プリンタPRは、端末装置TE1から能力情報要求IR9を取得する場合に、「PDF」を示すデータ形式情報を含む能力通知CN9を端末装置TE1に供給することができる。従って、プリンタPRは、端末装置TE1から上記の別の印刷データを取得する場合に、上記の別の印刷データの展開処理に成功して、印刷を適切に実行し得る。
また、PDF形式を有する印刷データが上記の特殊なコマンドを含むのか否かについては、端末装置(例えばTE1)の処理に依存し得る。例えば、端末装置TE1は、PDF形式を有する印刷データPD7の元の画像データが特殊なコマンドを含んでいなくても、当該画像データを用いて印刷データPD7を生成する際に、特殊なコマンドを含む印刷データPD7を生成し得る。一方、端末装置TE1とは異なる端末装置TE2は、画像データが特殊なコマンドを含んでいない場合に、当該画像データを用いて別の印刷データを生成する際に、特殊なコマンドを含まない印刷データを生成し得る。このような実情に鑑みて、プリンタPRは、印刷データPD8を用いた印刷を実行した後に、能力情報32内のデータ形式情報に「PDF」を追加する。この結果、プリンタPRは、端末装置TE2から能力情報要求IR9を取得する場合に、「PDF」を示すデータ形式情報を含む能力通知CN9を端末装置TE2に供給することができる。従って、プリンタPRは、端末装置TE2からPDF形式を有する印刷データを取得する場合に、当該印刷データの展開処理に成功して、印刷を適切に実行し得る。
(対応関係)
図8では、端末装置TE1が、「第1の外部装置」、「第2の外部装置」、及び、「第3の外部装置」の一例である。PDFが、「所定のデータ形式」の一例である。「PDF」を示すデータ形式情報を含む能力通知CN7が、「特定の処理能力を示す情報を含む第1の能力情報」の一例である。能力通知CN8、能力通知CN9が、それぞれ、「第2の能力情報」、「第3の能力情報」の一例である。印刷データPD7、印刷データPD8が、それぞれ、「第1の印刷データ」、「第2の印刷データ」の一例である。印刷データPD7の元の指定画像データ、印刷データPD8の元の指定画像データが、それぞれ、「第1の画像データ」、「第2の画像データ」の一例である。図7では、S412〜S414が、「第1の印刷処理」の一例であり、S452及びS454が、「第2の印刷処理」の一例である。S412の展開処理が、「特定の処理」の一例である。S413でNOと判断されることが、「第1の所定条件を満たす」の一例である。
(第6実施例)
本実施例では、図7のS422の処理の内容が第5実施例とは異なる。具体的には、CPU22は、能力情報要求の再送を指示するための再送通知を対象端末装置に供給する。これにより、対象端末装置は、プリンタPRから再送通知を取得する場合に、ユーザから登録指示を受け付けなくても、能力情報要求をプリンタPRに供給する。
図9のケースでは、図8のエラー通知N1に代えて、再送通知N2が端末装置TE1に供給される。端末装置TE1は、プリンタPRから再送通知N2を取得する場合に、ユーザからS530の登録指示を受け付けなくても、能力情報要求IR8をプリンタPRに自動的に供給する。これにより、端末装置TE1は、プリンタPRから「PDF」を示さないデータ形式情報を含む能力通知CN8を取得し、PDF形式とは異なるPWG形式を有する印刷データPD8を生成し(S532)、印刷データPD8をプリンタPRに供給する。
本実施例でも、第5実施例と同様に、印刷データを用いた印刷が適切に実行され得る。また、端末装置TE1のユーザがS530の登録指示を与えずに済むので、ユーザの負荷を軽減することができる。
(第5及び第6実施例の変形例その1)
上記の第5及び第6実施例では、対象端末装置は、プリンタPRから図8の能力通知CN8を取得する場合に、設定画面を再び表示して(図2のS30参照)、ユーザから指定指示を受け付ける必要がある(S32参照)。これに対し、変形例では、図7のS442において、CPU22は、「PDF」を示さないデータ形式情報を含む再送通知を対象端末装置に供給する。当該再送通知は、能力情報要求の再送を指示するための通知ではなく、印刷データの再送を指示するための通知である。本変形例では、対象端末装置は、プリンタPRから再送通知を取得する場合に、ユーザから登録指示を受け付けなくても、さらには、設定画面を再び表示したり、ユーザから指定指示を受け付けたりしなくても、PDF形式とは異なるデータ形式を有する印刷データを生成して、当該印刷データをプリンタPRに供給する。ユーザが指定指示を与えずに済むので、ユーザの負荷をより軽減することができる。
(第5及び第6実施例の変形例その2)
上記の第5及び第6実施例において、プリンタPRは、端末装置毎に、「PDF」を示すデータ形式情報を含む能力通知を供給すべきか、「PDF」を示さないデータ形式情報を含む能力通知を供給すべきか、を判断してもよい。具体的には、CPU22は、図7のS420に代えて、対象端末装置のMACアドレスと、展開処理の失敗を示すフラグ情報と、を対応付けて、メモリ24に記憶させる処理を実行する。また、CPU22は、図7のS460及びS462に代えて、以下の処理を実行してもよい。即ち、CPU22は、対象端末装置のMACアドレスに対応付けて上記のフラグ情報がメモリ24に記憶されている場合に、上記のフラグ情報を消去する。そして、CPU22は、端末装置から能力情報要求を取得する場合に、当該端末装置のMACアドレスに対応付けてフラグ情報がメモリ24内に記憶されているのか否かを判断する。CPU22は、フラグ情報が記憶されていると判断する場合に、「PDF」を示さないデータ形式情報を含む能力通知を当該端末装置に供給し、フラグ情報が記憶されていないと判断する場合に、「PDF」を示すデータ形式情報を含む能力通知を当該端末装置に供給する。本変形例によると、プリンタPRは、端末装置TE1,TE2に応じて、能力通知を適切に供給することができる。
以上、本発明の具体例を詳細に説明したが、これらは例示にすぎず、特許請求の範囲を限定するものではない。特許請求の範囲に記載の技術には以上に例示した具体例を様々に変形、変更したものが含まれる。上記の実施例の変形例を以下に列挙する。
(変形例1)上記の第1〜第4実施例では、プリンタPRは、gzip方式を用いた圧縮印刷データを解凍する解凍能力を有する。これに代えて、プリンタPRは、他の圧縮方式を用いた圧縮印刷データを解凍する解凍能力を有していてもよい。上記の他の圧縮形式として、例えば、LZ(Lempel-Zivの略)、LZW(Lempel-Ziv-Welchの略)、LZSS(Lempel-Ziv-Storer-Szymanskiの略)、Deflate等を挙げることができる。即ち、「所定の圧縮方式」は、gzip方式に限られず、他の圧縮形式であってもよい。
(変形例2)プリンタPRは、複数種類の圧縮方式のそれぞれに対応する解凍能力を有していてもよい。そして、プリンタPRは、上記の複数種類の圧縮方式を示す圧縮方式情報を含む能力通知を端末装置(例えばTE1)に供給し、上記の複数種類の圧縮方式のうちの特定の圧縮方式を用いた印刷データを取得し、当該印刷データの圧縮効率が基準効率よりも低い場合に、特定の圧縮方式を示さずに他の圧縮方式を示す圧縮方式情報を含む能力通知を端末装置に供給してもよい。その後、プリンタPRは、印刷データを特定の圧縮方式を用いて圧縮する場合における圧縮効率が基準効率よりも高い場合に、上記の複数種類の圧縮方式を示す圧縮方式情報を含む能力通知を端末装置に供給してもよい。本変形例では、複数種類の圧縮方式を示す圧縮方式情報を含む能力通知が、「特定の処理能力を示す情報を含む第1の能力情報」の一例である。また、特定の圧縮方式を示さずに他の圧縮方式を示す圧縮方式情報を含む能力通知が、「特定の処理能力を示す情報を含まない第2の能力情報」の一例である。
(変形例3)上記の第5及び第6実施例では、プリンタPRがPDF形式を有する印刷データの展開処理に失敗する状況を想定している。これに代えて、プリンタPRは、他のデータ形式(例えばJPEG形式、PWG形式等)を有する印刷データの展開処理に失敗する場合に、データ形式情報から当該他のデータ形式を消去してもよい。即ち、「所定のデータ形式」は、PDF形式に限られず、他のデータ形式であってもよい。
(変形例4)プリンタPRは、上記の第1〜第6実施例のように、印刷データに応じてgzip情報又はデータ形式情報の内容を変える代わりに、印刷データに応じて解像度情報の内容を変えてもよい。ユーザは、写真を含む画像については、比較的に低い解像度で印刷されても、通常、写真の内容を認識することができる。一方、ユーザは、テキストを含む画像については、比較的に低い解像度で印刷されると、テキストの内容を認識することができない可能性がある。このような実情に鑑みて、本変形例では、プリンタPRは、以下のようにして、印刷データに応じて解像度情報の内容を変える。
例えば、プリンタPRは、印刷データが写真を含む画像を表わす場合に、メモリ24内の能力情報32に含まれる解像度情報から高解像度である600dpiを消去してもよい。この場合、その後、プリンタPRは、端末装置から能力情報要求を取得する場合に、600dpiを示さない解像度情報を含む能力通知を端末装置に供給する。これにより、プリンタPRは、端末装置から低解像度を有する印刷データを取得することができる。これにより、印刷データのデータサイズが小さくなり、プリンタPRと端末装置との間の通信負荷が低減する。また、プリンタPRは、比較的に少ない処理負荷で印刷データの展開処理を実行することができる。
また、プリンタPRは、印刷データがテキストを含む画像を表わす場合に、メモリ24内の能力情報32に含まれる解像度情報に600dpiを追加してもよい。この場合、その後、プリンタPRは、端末装置から能力情報要求を取得する場合に、600dpiを示す解像度情報を含む能力通知を端末装置に供給する。これにより、プリンタPRは、端末装置から高解像度を有する印刷データを取得することができる。これにより、当該印刷データがテキストを含む画像を表わす場合に、テキストの内容を認識可能な印刷済みの印刷媒体をユーザに適切に提供することができる。
本変形例では、高解像度(即ち600dpi)を示す解像度情報を含む能力通知が、「特定の処理能力を示す情報を含む第1の能力情報」の一例である。また、高解像度を示さない解像度情報を含む能力通知が、「特定の処理能力を示す情報を含まない第2の能力情報」の一例である。また、高解像度を有する印刷データの展開処理が、「特定の処理」の一例である。また、印刷データが写真を含む画像を表わすこと、印刷データがテキストを含む画像を表わすことが、それぞれ、「第1の条件を満たす」、「第2の条件を満たす」の一例である。
(変形例5)上記の実施例では、プリンタPRのCPU22がメモリ24内のプログラム30を実行することによって、図2〜図9の各処理が実現される。これに代えて、これらの各処理のうちの少なくとも1つの処理は、論理回路等のハードウェアによって実現されてもよい。
また、本明細書または図面に説明した技術要素は、単独であるいは各種の組合せによって技術的有用性を発揮するものであり、出願時請求項記載の組合せに限定されるものではない。また、本明細書または図面に例示した技術は複数目的を同時に達成するものであり、そのうちの一つの目的を達成すること自体で技術的有用性を持つものである。
2:通信システム、PR:プリンタ、10:バス線、12:操作部、14:表示部、16:印刷実行部、18:LANインターフェイス、20:制御部、22:CPU、24:メモリ、30:プログラム、32:能力情報、34:履歴情報、TE1,TE2:端末装置、DR:プリンタドライバ、SC:設定画面、IR,IR1〜IR9:能力情報要求、CN,CN1〜CN9:能力通知、PD:印刷データ、PD1,PD4,PD5:圧縮印刷データ、PD2:非圧縮印刷データ、PD7,PD8:印刷データ、SI,SI1〜SI8:印刷設定情報、EN,EN1〜EN8:終了通知、N1:エラー通知、N2:再送通知

Claims (10)

  1. プリンタであって、
    印刷実行部と、
    制御部と、を備え、
    前記制御部は、
    前記プリンタ特定の処理を実行する能力を有することをす第1の能力情報を第1の外部装置に供給する供給部と、
    前記第1の能力情報が前記第1の外部装置に供給されることに応じて、前記第1の外部装置から、前記特定の処理の実行を要する第1の印刷データを取得する取得部と、
    前記第1の印刷データが取得されることに応じて、前記第1の印刷データを用いた印刷を前記印刷実行部に実行させるための第1の印刷処理であって、前記特定の処理を含む前記第1の印刷処理を実行する印刷処理実行部と、を備え、
    前記供給部は、さらに、前記第1の印刷データが第1の所定条件を満たす場合に、前記プリンタが前記特定の処理を実行する能力を有するにも関わらず、前記プリンタが前記特定の処理を実行する能力を有さないことをす第2の能力情報を前記の外部装置に供給し、
    前記取得部は、さらに、前記第2の能力情報が前記第の外部装置に供給されることに応じて、前記第の外部装置から、前記特定の処理の実行を要さない第2の印刷データを取得し、
    前記印刷処理実行部は、さらに、前記第2の印刷データが取得されることに応じて、前記第2の印刷データを用いた印刷を前記印刷実行部に実行させるための第2の印刷処理であって、前記特定の処理を含まない前記第2の印刷処理を実行する、プリンタ。
  2. 記第1の印刷データは、前記第1の外部装置が第1の画像データを所定の圧縮方式を用いて圧縮することによって生成されるデータであり、
    前記特定の処理は、前記所定の圧縮方式を用いた圧縮済みデータである前記第1の印刷データを解凍する解凍処理を含み、
    前記プリンタは、さらに、
    前記第1の画像データを前記第1の印刷データに圧縮する際の第1の圧縮効率が予め決められている第1の基準効率よりも低い場合に、前記第1の印刷データが前記第1の所定条件を満たすと判断する第1の判断部を備え、
    前記供給部は、前記第1の印刷データが前記第1の所定条件を満たすと判断される場合に、前記第2の能力情報を前記第の外部装置に供給し、
    前記第2の印刷データは、前記第の外部装置が第2の画像データを前記所定の圧縮方式を用いて圧縮することなく得られるデータである、請求項1に記載のプリンタ。
  3. 前記第1の判断部は、
    前記第1の印刷データのデータサイズと前記第1の画像データのデータサイズとを利用して、前記第1の圧縮効率を示す第1の指標値を算出し、
    前記第1の指標値と前記第1の基準効率を示す基準値とを比較することによって、前記第1の圧縮効率が前記第1の基準効率よりも低いのか否かを判断する、請求項2に記載のプリンタ。
  4. 前記第1の判断部は、
    前記第1の画像データを利用して、前記第1の圧縮効率を示す第2の指標値であって、前記第1の画像データを構成する特定の画素の数に関係する前記第2の指標値を算出し、
    前記第2の指標値と前記第1の基準効率を示す基準値とを比較することによって、前記第1の圧縮効率が前記第1の基準効率よりも低いのか否かを判断し、
    前記特定の画素は、隣接する画素が有する画素値に一致する画素値を有する画素である、請求項2に記載のプリンタ。
  5. 前記プリンタは、さらに、
    前記第2の印刷データを前記所定の圧縮方式を用いて圧縮する場合における圧縮効率である第2の圧縮効率が予め決められている第2の基準効率よりも高い場合に、前記第2の印刷データが第2の所定条件を満たすと判断する第2の判断部を備え、
    前記供給部は、さらに、前記第2の印刷データが前記第2の所定条件を満たすと判断される場合に、前記プリンタが前記特定の処理を実行する能力を有することをす第3の能力情報を前記の外部装置に供給する、請求項2から4のいずれか一項に記載のプリンタ。
  6. 記第1の印刷データは、所定のデータ形式を有し、
    前記特定の処理は、前記第1の印刷データを展開することを試行する試行処理を含み、
    前記プリンタは、さらに、
    前記第1の印刷データを展開不可能である場合に、前記第1の印刷データが前記第1の所定条件を満たすと判断する第3の判断部を備え、
    前記供給部は、前記第1の印刷データが前記第1の所定条件を満たすと判断される場合に、前記第2の能力情報を前記第の外部装置に供給し、
    前記第2の印刷データは、前記所定のデータ方式とは異なるデータ形式を有する、請求項1に記載のプリンタ。
  7. 前記供給部は、さらに、前記第2の印刷処理が実行された後に、前記プリンタが前記特定の処理を実行する能力を有することをす第3の能力情報を前記の外部装置に供給する、請求項6に記載のプリンタ。
  8. 記第1の印刷データと前記第2の印刷データとは、同じ画像データを用いて得られるデータである、請求項6又は7に記載のプリンタ。
  9. 前記供給部は、
    前記第1の外部装置から所定の要求が取得される場合に、前記第1の能力情報を前記第1の外部装置に供給し、
    前記第1の印刷データが前記第1の所定条件を満たし、かつ、前記第1の外部装置から前記所定の要求が取得される場合に、前記第2の能力情報を前記第の外部装置に供給し、
    前記第1の印刷データが前記第1の所定条件を満たし、かつ、前記第1の外部装置とは異なる第の外部装置から前記所定の要求が取得される場合に、前記プリンタが前記特定の処理を実行する能力を有することを示す第4の能力情報を前記第の外部装置に供給する、請求項1から8のいずれか一項に記載のプリンタ。
  10. プリンタのためのコンピュータプログラムであって、
    前記プリンタに搭載されるコンピュータに、以下の各処理、即ち、
    前記プリンタ特定の処理を実行する能力を有することをす第1の能力情報を第1の外部装置に供給する処理と、
    前記第1の能力情報が前記第1の外部装置に供給されることに応じて、前記第1の外部装置から、前記特定の処理の実行を要する第1の印刷データを取得する処理と、
    前記第1の印刷データが取得されることに応じて、前記第1の印刷データを用いた印刷を前記プリンタの印刷実行部に実行させるための第1の印刷処理であって、前記特定の処理を含む前記第1の印刷処理と、
    前記第1の印刷データが第1の所定条件を満たす場合に、前記プリンタが前記特定の処理を実行する能力を有するにも関わらず、前記プリンタが前記特定の処理を実行する能力を有さないことをす第2の能力情報を前記の外部装置に供給する処理と、
    前記第2の能力情報が前記第の外部装置に供給されることに応じて、前記第の外部装置から、前記特定の処理の実行を要さない第2の印刷データを取得する処理と、
    前記第2の印刷データが取得されることに応じて、前記第2の印刷データを用いた印刷を前記印刷実行部に実行させるための第2の印刷処理であって、前記特定の処理を含まない前記第2の印刷処理と、
    を実行させるコンピュータプログラム。
JP2014199637A 2014-09-30 2014-09-30 プリンタ Active JP6432256B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2014199637A JP6432256B2 (ja) 2014-09-30 2014-09-30 プリンタ
US14/867,853 US9491317B2 (en) 2014-09-30 2015-09-28 Printer that supplies capability information to an external apparatus and to acquire print data from the external apparatus, storage medium and method for printer

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014199637A JP6432256B2 (ja) 2014-09-30 2014-09-30 プリンタ

Publications (2)

Publication Number Publication Date
JP2016072785A JP2016072785A (ja) 2016-05-09
JP6432256B2 true JP6432256B2 (ja) 2018-12-05

Family

ID=55585825

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014199637A Active JP6432256B2 (ja) 2014-09-30 2014-09-30 プリンタ

Country Status (2)

Country Link
US (1) US9491317B2 (ja)
JP (1) JP6432256B2 (ja)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6555892B2 (ja) * 2015-02-06 2019-08-07 キヤノン株式会社 画像形成装置及び画像形成装置による印刷制御方法
JP6824613B2 (ja) * 2016-03-08 2021-02-03 キヤノン株式会社 印刷装置、印刷装置の制御方法、および、プログラム
JP6822189B2 (ja) * 2017-02-10 2021-01-27 ブラザー工業株式会社 プリンタ
JP6977516B2 (ja) * 2017-12-06 2021-12-08 ブラザー工業株式会社 プリンタ
JP7118714B2 (ja) * 2018-04-13 2022-08-16 キヤノン株式会社 画像形成装置、および、該画像形成装置の制御方法、制御プログラム
JP7086754B2 (ja) * 2018-06-29 2022-06-20 キヤノン株式会社 情報処理装置、情報処理装置の制御方法及びコンピュータプログラム
JP7137135B2 (ja) * 2018-09-28 2022-09-14 ブラザー工業株式会社 コンピュータプログラム、および、制御装置
JP7151355B2 (ja) * 2018-10-09 2022-10-12 ブラザー工業株式会社 プリンタ及びプリンタのためのコンピュータプログラム
JP7163768B2 (ja) * 2018-12-28 2022-11-01 ブラザー工業株式会社 プリンタ及び印刷システム
JP7147593B2 (ja) 2019-01-28 2022-10-05 ブラザー工業株式会社 プリンタ
JP7192562B2 (ja) * 2019-02-20 2022-12-20 ブラザー工業株式会社 プリンタ、及び、プリンタのためのコンピュータプログラム
JP7207002B2 (ja) 2019-02-22 2023-01-18 ブラザー工業株式会社 端末装置、及び、端末装置のためのコンピュータプログラム
JP7314558B2 (ja) * 2019-03-25 2023-07-26 ブラザー工業株式会社 作成プログラム、及び、送信プログラム

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3342236B2 (ja) * 1995-06-09 2002-11-05 キヤノン株式会社 情報処理装置及びその制御方法
JPH09179705A (ja) * 1995-12-26 1997-07-11 Ricoh Co Ltd 画像形成装置
US6594028B1 (en) 1999-04-14 2003-07-15 Canon Kabushiki Kaisha Status-based control over printer
JP3937656B2 (ja) * 1999-06-30 2007-06-27 キヤノン株式会社 画像処理装置及びその制御方法及び記憶媒体
JP2001111432A (ja) * 1999-10-04 2001-04-20 Seiko Epson Corp データ圧縮制御装置、データ圧縮制御方法、印刷情報形成装置、印刷システム及びプログラムを記録した記録媒体
JP2001195207A (ja) 2000-01-11 2001-07-19 Ricoh Co Ltd 画像データ転送方法並びに画像データ転送プログラムの記録媒体及びプリンタシステム
JP2001301281A (ja) 2000-04-20 2001-10-30 Matsushita Electric Ind Co Ltd 画像形成システム
JP4437875B2 (ja) * 2001-03-15 2010-03-24 東芝テック株式会社 画像転送装置
JP4125302B2 (ja) * 2005-03-31 2008-07-30 キヤノン株式会社 印刷システム、情報処理装置、印刷方法およびプログラム
JP2007069359A (ja) 2005-09-02 2007-03-22 Canon Inc 画像形成装置及びその制御方法、プログラム、画像形成システム
JP4906097B2 (ja) * 2007-03-13 2012-03-28 ナルテック株式会社 メモリインターフェイスユニットおよびメモリユニット
US8427675B2 (en) * 2009-01-27 2013-04-23 Ricoh Company, Ltd. Automatically updating a printer driver with new printing device features
JP4978661B2 (ja) * 2009-06-05 2012-07-18 コニカミノルタビジネステクノロジーズ株式会社 画像処理装置
JP6003201B2 (ja) 2011-08-31 2016-10-05 ブラザー工業株式会社 画像形成装置
JP2013250628A (ja) * 2012-05-30 2013-12-12 Brother Ind Ltd サーバ
JP2015109073A (ja) * 2013-10-21 2015-06-11 株式会社リコー 画像形成システム

Also Published As

Publication number Publication date
US9491317B2 (en) 2016-11-08
JP2016072785A (ja) 2016-05-09
US20160094727A1 (en) 2016-03-31

Similar Documents

Publication Publication Date Title
JP6432256B2 (ja) プリンタ
JP5545110B2 (ja) 印刷のための制御装置及びコンピュータプログラム
US10979964B2 (en) Communication apparatus, control method of communication apparatus, and storage medium
JP5895652B2 (ja) プリンタ
JP5353933B2 (ja) 情報処理プログラム、情報処理装置、および情報処理方法
US20160231970A1 (en) Image forming apparatus, method of controlling printing and printing system
US10552094B2 (en) Printing apparatus and method of connecting to remote print service
US9286017B2 (en) Technique for displaying thumbnail images on an information processing device
US20160006888A1 (en) Image reading apparatus, image reading method, image reading system, and storage medium
CN108287672A (zh) 服务器装置、记录介质、信息处理系统及图像形成装置
JP6977516B2 (ja) プリンタ
US20150124294A1 (en) Image forming apparatus and method for producing e-book contents
JP6015478B2 (ja) 制御装置、制御方法およびプリンタードライバプログラム
CN110214306B (zh) 服务器装置、信息处理系统及图像形成装置
JP6885105B2 (ja) 情報処理プログラムおよび情報処理装置
JP6822189B2 (ja) プリンタ
JP6410051B2 (ja) サーバーおよびサーバー用プログラム
JP6521304B2 (ja) 画像形成装置、モノクロ印刷方法、及びプリンタドライバ
JP6707903B2 (ja) 出力装置、および、コンピュータプログラム
JP6413450B2 (ja) 画像処理装置、画像形成装置およびプログラム
JP6283944B2 (ja) 電子文書生成システム、画像形成装置およびプログラム
JP6443043B2 (ja) スキャナ
US11233916B2 (en) Printer and non-transitory computer-readable recording medium storing computer readable instructions for printer
JP4728661B2 (ja) 画像処理装置
JP4952153B2 (ja) 印刷装置および印刷方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170824

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20180409

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180501

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180627

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20181022

R150 Certificate of patent or registration of utility model

Ref document number: 6432256

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150