JP7846639B2 - 情報処理装置、方法およびプログラム - Google Patents

情報処理装置、方法およびプログラム

Info

Publication number
JP7846639B2
JP7846639B2 JP2023014859A JP2023014859A JP7846639B2 JP 7846639 B2 JP7846639 B2 JP 7846639B2 JP 2023014859 A JP2023014859 A JP 2023014859A JP 2023014859 A JP2023014859 A JP 2023014859A JP 7846639 B2 JP7846639 B2 JP 7846639B2
Authority
JP
Japan
Prior art keywords
print
information
roll paper
printing
width
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
JP2023014859A
Other languages
English (en)
Other versions
JP2024110328A5 (ja
JP2024110328A (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.)
Canon Inc
Original Assignee
Canon Inc
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 Canon Inc filed Critical Canon Inc
Priority to JP2023014859A priority Critical patent/JP7846639B2/ja
Priority to US18/414,591 priority patent/US12455707B2/en
Publication of JP2024110328A publication Critical patent/JP2024110328A/ja
Publication of JP2024110328A5 publication Critical patent/JP2024110328A5/ja
Priority to US19/349,034 priority patent/US20260029971A1/en
Application granted granted Critical
Publication of JP7846639B2 publication Critical patent/JP7846639B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1202Dedicated interfaces to print systems specifically adapted to achieve a particular effect
    • G06F3/1203Improving or facilitating administration, e.g. print management
    • G06F3/1204Improving or facilitating administration, e.g. print management resulting in reduced user or operator actions, e.g. presetting, automatic actions, using hardware token storing data
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1202Dedicated interfaces to print systems specifically adapted to achieve a particular effect
    • G06F3/1203Improving or facilitating administration, e.g. print management
    • G06F3/1205Improving or facilitating administration, e.g. print management resulting in increased flexibility in print job configuration, e.g. job settings, print requirements, job tickets
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1202Dedicated interfaces to print systems specifically adapted to achieve a particular effect
    • G06F3/1203Improving or facilitating administration, e.g. print management
    • G06F3/1208Improving or facilitating administration, e.g. print management resulting in improved quality of the output result, e.g. print layout, colours, workflows, print preview
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/1225Software update, e.g. print driver, modules, plug-ins, fonts
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/1253Configuration of print job parameters, e.g. using UI at the client
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/1253Configuration of print job parameters, e.g. using UI at the client
    • G06F3/1254Automatic configuration, e.g. by driver
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Accessory Devices And Overall Control Thereof (AREA)
  • Facsimiles In General (AREA)
  • Editing Of Facsimile Originals (AREA)

Description

本発明は、情報処理装置、方法およびプログラムに関する。
印刷装置の制御用ソフトウェアとしてホストコンピュータにインストールされたプリンタドライバを利用し、ホストコンピュータに接続された印刷装置に対して印刷指示を行う構成が知られている。ホストコンピュータには、基本ソフトウェアであるオペレーティングシステム(OS)がインストールされており、プリンタドライバはそのOSの規定する仕様に従って構成され、OSから呼び出されて動作する。印刷装置を提供するベンダは、OSの仕様に適合するプリンタドライバを提供することにより、そのOSを用いて印刷装置に印刷を指示する構成を提供することができる。
近年、Windows(登録商標)において、複数のベンダの提供する印刷装置で共通して利用可能な標準的なクラスドライバ(以下、「標準ドライバ」とも呼ぶ)が提供されている。このような標準ドライバは、OSのパッケージの中に同梱されており、ホストコンピュータに任意の印刷装置を接続することにより簡易に利用可能となる。よって、印刷装置に適した機種固有のプリンタドライバを別途インストールする必要が無く、利便性が高い。また、標準ドライバは、接続した印刷装置から取得した情報に基づき生成されたPrintDeviceCapabilities(以下、「PDC」)に基づいて、印刷機能を指定可能に構成される。これにより、標準ドライバを利用するユーザは、1つの標準ドライバを利用しているにも関わらず、接続した印刷装置の能力に応じた印刷機能を指定することができる。
標準ドライバには機能拡張用のアプリケーション(以下、「拡張アプリケーション」とも呼ぶ)を関連付けることができる。拡張アプリケーションは、印刷装置を提供するベンダが提供することができる。拡張アプリケーションは標準ドライバが生成したPDCを編集することにより、標準ドライバのみでは実現できない機能(拡張機能)を提供することができる。特許文献1には、拡張アプリケーションにより、プリンタから取得した用紙情報と印刷設定時の用紙情報とを比較し、用紙の適否を判定する技術が記載されている。
特開2022-100565号公報
プリンタドライバの機能を拡張するための機能においてさらなるユーザの利便性の向上が求められている。
本発明は、プリンタドライバの機能を拡張する際にユーザの利便性を向上させる情報処理装置、方法およびプログラムを提供することを目的とする。
上記課題を解決するため、本発明に係る情報処理装置は、印刷装置の機能をユーザにより指定可能とするための印刷機能情報を取得する取得手段と、前記取得手段により取得された前記印刷機能情報を編集する第1編集手段と、前記第1編集手段により編集された印刷機能情報に基づいて前記ユーザにより指定された機能を実行するための印刷設定情報を生成する生成手段と、ロール紙の種類および幅を示す情報を記憶する記憶手段と、を備え、前記印刷機能情報は記録媒体の種類および幅を示す情報を含み、前記取得手段により取得された前記印刷機能情報にロール紙に対応する前記記録媒体の種類および幅を示す情報が含まれていない場合、前記取得手段により取得された前記印刷機能情報に含まれる前記記録媒体の最大の幅は前記印刷装置がサポート可能な最大の幅として保持され、前記第1編集手段は、当該最大の幅より短い幅を有するロール紙の情報を、前記取得手段により取得された前記印刷機能情報に対して追加前記第1編集手段は、前記記憶手段に記憶された前記ロール紙の種類および幅を示す情報のうち、前記取得手段により取得された前記印刷機能情報に含まれる前記記録媒体の最大の幅より短い幅を有するロール紙の種類および幅を示す情報を、前記取得手段により取得された前記印刷機能情報に対して追加することを特徴とする。
本発明によれば、プリンタドライバの機能を拡張する際にユーザの利便性を向上させることができる。
印刷システムのハードウェア構成を示すブロック図である。 印刷システムのソフトウェア構成を示すブロック図である。 印刷システムで扱われるデータのフォーマットを示す図である。 印刷機能拡張ユニットによる処理を示すフローチャートである。 PDCを示す図である。 PDCを示す図である。 拡張アプリケーションが備えるロール紙幅情報を示す図である。 印刷設定画面拡張ユニットによる処理を示すフローチャートである。 印刷設定画面拡張ユニットによる表示を示す図である。 印刷設定画面拡張ユニットによる表示を示す図である。 印刷設定画面拡張ユニットによる処理を示すフローチャートである。 印刷設定画面拡張ユニットによる処理を示すフローチャートである。 印刷設定画面拡張ユニットによる表示を示す図である。 印刷設定画面拡張ユニットによる表示を示す図である。 印刷データ編集ユニットによる処理を示すフローチャートである。 印刷データ編集ユニットによる処理を示すフローチャートである。 印刷データ編集ユニットによる表示を示す図である。 印刷データ編集ユニットによる処理を示すフローチャートである。 印刷データ編集ユニットによる表示を示す図である。 スキップ制御ユニットによる処理を示すフローチャートである。 印刷設定画面拡張ユニットによる処理を示すフローチャートである。
以下、添付図面を参照して実施形態を詳しく説明する。なお、以下の実施形態は特許請求の範囲に係る発明を限定するものではない。実施形態には複数の特徴が記載されているが、これらの複数の特徴の全てが発明に必須のものとは限らず、また、複数の特徴は任意に組み合わせられてもよい。さらに、添付図面においては、同一若しくは同様の構成に同一の参照番号を付し、重複した説明は省略する。
[第1実施形態]
図1は、印刷システムのハードウェア構成を示すブロック図である。図1において、ホストコンピュータ101は、情報処理装置の一例であり、入力インタフェース110、CPU111、ROM112、RAM113、外部記憶装置114、出力インタフェース115、及び入出力インタフェース116を有する。また、入力インタフェース110には、キーボード118、ポインティングデバイス117などの入力デバイスが接続され、出力インタフェース115には、表示部119などの表示デバイスが接続されている。NETIF120は、ネットワークインタフェースであり、ネットワークを介して外部機器との間でデータ転送を行うための制御を行う。
ROM112には、初期化プログラムが格納されている。外部記憶装置114には、アプリケーションプログラム群、オペレーティングシステム(OS)、印刷データ生成ソフトウェア、その他の各種のデータが格納されている。RAM113は、外部記憶装置114に記憶されている各種のプログラムの実行の際のワークメモリ等として使用され、各種プログラムがホストコンピュータ101内で動作可能となっている。
なお、本実施形態では、CPU111が、ROM112に格納されたプログラムの手順に従って処理を行うことによって、ホストコンピュータ101における後述の機能及び後述するフローチャートに係る処理を実行する。デバイスである印刷装置102は、入出力インタフェース116を介して、ホストコンピュータ101と接続されている。ここでは、ホストコンピュータ101と印刷装置102が分かれて構成されているが、これらが一つの情報処理装置として構成されていても良い。なお、印刷装置は、インクを紙面上に吐出することで印刷するインクジェットプリンタを例に説明するが、他の方法(例えば電子写真方式)で印刷が実行されても良い。また、ホストコンピュータ101は、デスクトップパソコンでも、スマートフォンでも、ノートパソコンでも構わない。また、ホストコンピュータ101と印刷装置102がネットワークを介して接続される場合、そのネットワークは、有線ネットワーク、無線ネットワーク、もしくは両者を含むネットワークであって良い。また、そのネットワークには、ホストコンピュータ101及び印刷装置102と異なる装置、例えばアクセスポイントとして動作するルータ等が含まれていてもよい。
図2(a)、図2(b)は、ソフトウェアを中心とした印刷システムの構成を模式的に示す図である。ここでは、OSとしてMicrosoft(登録商標)のWindows(登録商標)10を搭載したホストコンピュータ101を用いた印刷システムを前提として説明する。図2(a)は、拡張アプリケーション204が、印刷データ生成ソフトウェア202および印刷装置102と関連付けられていない場合の一般的な構成を示す図である。
描画アプリケーション201は印刷されるコンテンツ(描画データ)を作成するソフトウェアである。例えば、文書作成アプリケーションや表計算アプリケーションが相当する。描画アプリケーション201は、ユーザから印刷要求を受けると、印刷指示をOSに発行する。印刷指示には、印刷データ生成ソフトウェア202及び印刷装置102の動作を指示するための印刷設定情報が含まれる。印刷設定情報はPrintTicket(以下、「PT」)とも呼ばれる。
描画アプリケーション201は、印刷設定情報を出力するために、印刷データ生成ソフトウェア202、OS、もしくは描画アプリケーション201、のうちいずれかが提供する印刷設定画面を表示させることができる。印刷設定画面は、印刷データ生成ソフトウェア202から取得する能力情報(印刷設定として設定可能な情報)に従い、設定可能な印刷機能を示す設定アイテム(以下、「コントロールアイテム」とも呼ぶ)と、その設定値を示すコントロールアイテムを含む。能力情報は、PrintCapabilities(以下、「PC」)とも呼ばれる。印刷データ生成ソフトウェア202は、印刷機能情報203に基づき、PCを決定する。印刷機能情報203は、設定可能なすべての印刷機能とその設定値、並びに、設定値同士の排他関係が記載されている印刷機能を示すデータである。印刷機能情報203は、PDC(Print Device Capabilities)とも呼ばれる。印刷機能情報203は、印刷データ生成ソフトウェア202の構成ファイルに含まれ、変更不可能なファイルとして外部記憶装置114に配置される。もしくは、印刷データ生成ソフトウェア202により、印刷機能情報203は動的に生成されることもできる。具体的には、印刷データ生成ソフトウェア202もしくはOSは、印刷装置102から印刷装置の属性データを取得し、取得した属性データ内の属性情報に応じて印刷機能情報203を生成するよう構成することができる。なお、動的に印刷機能情報203が生成される場合、生成された印刷機能情報203は編集可能である。印刷装置102から取得される印刷装置の属性データとは、印刷装置102に対してIPP(Internet Print Protocol)のGet-Printer-Attributesオペレーションを発行することで取得するレスポンスである。レスポンスの中には、印刷装置102で指定可能な機能(印刷装置の能力)を示す属性情報とその属性情報に関連する設定値が含まれる。このレスポンスはRAM113に保存される。
このように構成することで、印刷データ生成ソフトウェア202は、接続された印刷装置102に応じて、それぞれの印刷装置102で利用可能な印刷機能をユーザが指定可能に構成することができる。すなわち、異なる機能を持つ印刷装置や、異なるベンダが開発した印刷装置を接続した場合であっても、印刷データ生成ソフトウェア202は、接続した印刷装置に応じて利用可能な印刷機能をユーザが指定可能に構成することができる。なお、ここでは、印刷データ生成ソフトウェア202の一例として、Windows(登録商標)10に搭載されている、IPP Class Driverを利用した構成について説明する。IPP Class Driverは、IPP(Internet Print Protocol)と呼ばれる標準的な印刷プロトコルの仕様に従って印刷処理を実行するプリンタドライバであり、OSのパッケージの中に同梱されている。IPP Class Driverは、印刷装置102の機種に応じた固有のプリンタドライバではなく、複数の印刷装置で共通して利用可能な標準的なクラスドライバである。また、IPP Class Driverは、接続された印刷装置102でサポートする印刷機能をユーザが指定できるように、接続した印刷装置102の能力情報を取得し、その情報に基づいて印刷機能情報203を生成する。
OSは、描画アプリケーション201から出力された印刷指示に基づき中間データ(入力データとも呼ぶ)を生成して、印刷データ生成ソフトウェア202に渡す。なお、描画アプリケーション201が印刷用に出力するデータは、Graphic Device Interface形式のデータ(GDI形式データ)またはXML Paper Specification形式のデータ(XPS形式のデータ)である。印刷データ生成ソフトウェア202として、IPP Class Driverを利用する場合を想定する。その場合、描画アプリケーション201が出力するデータがGDI形式のデータなら、OSは、描画アプリケーション201から出力されたGDI形式のデータをXPS形式のデータに変換する。そして、変換したXPS形式のデータを中間データとして印刷データ生成ソフトウェア202に渡す。描画アプリケーション201が出力するデータがXPS形式のデータなら、OSは、XPS形式のデータを中間データとして印刷データ生成ソフトウェア202に渡す。なお、中間データには、記録媒体である紙面上に形成する絵の情報である描画データと、ユーザにより設定された印刷設定情報と、が含まれる。なお、本実施形態では、記録媒体の一例として印刷用紙を挙げて説明する。
印刷データ生成ソフトウェア202は、取得した中間データを印刷装置102が解釈可能な印刷データに変換し、印刷装置102に送信する。なお、印刷データには、紙面上に形成する絵の情報である描画データと、ユーザにより設定された印刷設定情報に基づき生成された印刷設定属性情報(印刷設定を指定する属性情報)とが含まれる。印刷設定属性情報は、印刷装置102で指定可能な機能(印刷装置の能力)を示す属性情報とその属性情報に関連する設定値を含む。
印刷装置102は、印刷データ生成ソフトウェア202から送られた印刷データに基づき紙面への印刷を行う。この時、印刷装置102は、印刷データに含まれる印刷設定属性情報に従った動作で、印刷データに含まれる描画データを紙面上に形成する。印刷設定属性情報には、印刷品位(画質優先、速度優先、等)や、両面印刷等を指定するための属性情報とその設定値が含まれている。例えば、印刷設定属性情報に、両面印刷を指定する属性情報が含まれる場合、印刷装置102は、両面印刷を実行する。
図2(b)は、拡張アプリケーション204が、印刷データ生成ソフトウェア202および印刷装置102と関連付けられている場合の構成を示す図である。なお、以下において特に言及しない構成や処理については、図2(a)と同等の構成となる。
拡張アプリケーション204は、印刷データ生成ソフトウェア202の機能を拡張するためのソフトウェアであり、OSに予め含まれていない(同梱されていない)ソフトウェアである。そのため、ユーザは、ホストコンピュータ101を操作して拡張アプリケーション204を、インターネットを介してサーバからダウンロードして、インストールする。若しくは、ホストコンピュータ101に印刷装置102が接続されたことに基づき、自動的にインストールされてもよい。具体的には、ホストコンピュータ101に印刷装置102が接続された場合、OSは印刷装置102からデバイス識別情報を取得する。OSは、取得されたデバイス識別情報に対応する拡張アプリケーション204を、インターネットを介してサーバからダウンロードし、インストールしても良い。つまり、印刷データ生成ソフトウェア202と、拡張アプリケーション204は別ファイルとしてホストコンピュータ101に保持される。
なお、印刷データ生成ソフトウェア202および拡張アプリケーション204は、更新されてバージョンアップされることもあるが、この更新処理も別々のタイミングで行われる。つまり、ホストコンピュータ101により印刷データ生成ソフトウェア202が取得されるタイミングと、拡張アプリケーション204が取得されるタイミングとは異なる。また、ホストコンピュータ101により印刷データ生成ソフトウェア202が取得されるトリガーと、拡張アプリケーション204が取得されるトリガーも異なる。なお、拡張アプリケーション204がインストールされた場合、OSが、拡張アプリケーション204を、印刷データ生成ソフトウェア202および印刷装置102に関連付ける。
本実施形態における拡張アプリケーション204は、印刷設定画面拡張ユニット205とスキップ制御ユニット206と印刷機能拡張ユニット207と印刷データ編集ユニット208と通知ユニット209を備える。また、拡張アプリケーション204は、各ユニットから共通してアクセス可能な共有情報210を備える。共有情報210の実態は例えば、外部記憶装置114に保存されたファイル、もしくはRAM113上に格納された情報である。拡張アプリケーション204は、OSが提供するAPI(Application Program Interface)を利用することで、共有情報210への情報の書き込みや読み出しを行う。また、拡張アプリケーション204は、ロール紙幅情報211を備える。ロール紙幅情報211は拡張アプリケーション204が対応しているプリンタ全てのロール紙幅の情報である。また、拡張アプリケーション204は、プリンタが印刷可能な長さ212を保持している。なお、プリンタが印刷可能な長さ212とは、ロール紙の搬送方向の長さである。本実施形態では一例として18,000mmとして説明を行う。なお、拡張アプリケーション204は、印刷装置102から取得した印刷機能情報203に印刷可能な長さを示す情報が含まれている場合、印刷可能な長さ212を使用せず、印刷機能情報203に含まれる情報をそのまま使用することも可能である。
図7は拡張アプリケーション204が備えるロール紙幅情報211の一例を示す図である。本実施形態における拡張アプリケーション204は、最大60inロール(60インチ幅のロール紙)までの複数のロール紙幅の情報を保持している。その他のロール紙幅の情報として例えば、54inロール(54インチ幅のロール紙)を保持している。ロール紙幅の名称701は、拡張アプリケーション204が表示する印刷設定画面で使用される。また、名称702はPDC、若しくはPC内で使用されるロール紙幅の名称である。なお、本実施形態では、ロール紙幅は、1/1000mm単位で示されることとする。
詳細は後述するが、拡張アプリケーション204は、印刷装置102に関連付けられて動作する場合、印刷装置102から取得した印刷機能情報203とロール紙幅情報211から印刷装置102が対応するロール紙幅を決定することができる。なお、拡張アプリケーション204が、印刷装置102に関連付けられて動作する場合、印刷装置102から取得した印刷機能情報203にロール紙幅の情報がすでに含まれている場合がある。その場合、ロール紙幅情報211は使用せず、印刷機能情報203に含まれる情報をそのまま使用することも可能である。なお、拡張アプリケーション204は、各ユニットの処理が終了する度に動作を終了しても良い。その場合、各ユニットを使う要求を受ける度にOSが拡張アプリケーション204を起動することになる。また、別の形態でもよい。例えば印刷設定画面拡張ユニット205の処理が終了するとOSは拡張アプリケーション204の動作を終了させるが、スキップ制御ユニット206の処理が終了してもOSは拡張アプリケーション204を起動させたままにしても良い。さらに、拡張アプリケーション204は、各ユニットの処理の中で、処理をキャンセルしても良い。キャンセルした場合、印刷キュー上の処理中のジョブがOSにより削除される。
描画アプリケーション201は、ユーザから印刷要求を受けると、印刷指示をOSに発行する。本構成下でも、図2(a)の構成と同様、描画アプリケーション204は、印刷設定画面を表示させることができる。本構成下では、拡張アプリケーション204が提供する印刷設定画面が表示される。具体的には、拡張アプリケーション204が備える印刷設定画面拡張ユニット205が提供する印刷設定画面が表示される。なお、印刷設定画面拡張ユニット205により提供される印刷設定画面が表示されるか否かはユーザの操作に依存するようにしても良い。
また、描画アプリケーション201がユーザから印刷要求を受け付け、印刷指示がOSに発行されると、OSはスキップ制御ユニット206を起動する。スキップ制御ユニット206は、印刷データ生成ソフトウェア202の処理をスキップするか否かの制御を行う。スキップ制御ユニット206は、中間データや印刷設定情報を取得しない。スキップ制御ユニット206のスキップ制御処理の後、OSは、描画アプリケーション201から出力された印刷指示に基づき中間データを生成し、中間データが印刷データ生成ソフトウェア202に渡される。ここで、スキップ制御ユニット206でスキップ制御が行われない場合、中間データは印刷データ生成ソフトウェア202で印刷装置102が解釈可能な印刷データへ処理され、印刷データ編集ユニット208へ渡される。一方、印刷データ生成ソフトウェア202のスキップが行われる場合は、中間データは印刷データ生成ソフトウェア202で処理されずに、印刷データ編集ユニット208に渡される。これにより、中間データを印刷データ編集ユニット208で処理することが可能となる。印刷データ生成ソフトウェア202をスキップする場合の例としては、拡大縮小処理を印刷データ編集ユニット208で行いたい場合が挙げられる。中間データはベクタデータとしてデータを保持可能であり、拡大縮小時の劣化が少ない。そのため、印刷データ生成ソフトウェア202がラスタデータとして画像を出力するような形態においては、印刷データ生成ソフトウェア202の処理をスキップし、中間データを印刷データ編集ユニット208で処理する場合がある。印刷データ編集ユニット208は、印刷データ生成ソフトウェア202から渡される中間データもしくは印刷データ生成ソフトウェア202により処理された印刷データの編集を行う。編集内容として、「ロール紙幅への拡大」を例にとると、印刷データ編集ユニット208は、OSから受け取った「ロール紙幅への拡大」の印刷設定情報と、印刷装置102から取得した実際に給紙されているロール紙幅の情報とに基づいて拡縮を変更する。また、印刷データ編集ユニット208は表示部119にUI画面を表示することが可能であり、中間データもしくは印刷データのレイアウト結果をプレビュー画面として表示することができる。印刷データ編集ユニット208が印刷データを編集した後、印刷データはOSを経由して印刷装置102へ渡される。印刷装置102は、受け付けた印刷データに基づき紙面への印刷を行う。なお、スキップ制御ユニット206で印刷データ生成ソフトウェア202がスキップされた場合、印刷データ編集ユニット208が、受け取った中間データを印刷装置102が解釈可能な印刷データへ変換しても良い。
また、拡張アプリケーション204は、印刷機能拡張ユニット207を有する。印刷機能拡張ユニット207は、印刷データ生成ソフトウェア202もしくはOSが生成した印刷機能情報203(PDC)を編集することができる。これにより、印刷機能拡張ユニット207は、拡張アプリケーション204が提供する機能の追加、印刷装置102はサポートしているが印刷データ生成ソフトウェア202がサポートしていない機能の追加、等を行うことができる。また、印刷機能拡張ユニット207は、印刷機能の設定値同士の排他関係の追加、等を行うことができる。OSは、拡張アプリケーション204が印刷装置102と印刷データ生成ソフトウェア202に最初に関連付けられた時に、印刷機能拡張ユニット207を起動する。さらに、OSは、それ以外のタイミングで、例えばOS起動時に、印刷機能拡張ユニット207を起動してもよい。このようにすることで、印刷装置102に対して後からオプション装置が追加され、印刷に関わる機能が拡張されるようなケースにおいて、印刷機能拡張ユニット207は、拡張機能を検知し、印刷機能情報203に追加することができる。なお、オプション装置は、例えば2段ロールユニットやフィニッシャーである。
また、拡張アプリケーション204は通知ユニット209を有する。通知ユニット209は、印刷装置102のエラー発生に応じてユーザに対して通知を表示することが可能である。例えば、印刷装置102で用紙なしエラーが発生すると、それを印刷データソフトウェア202が検知し、OSは、OSの機能であるトースト通知と呼ばれる通知機能を使って、メッセージを表示部119に表示させる。ユーザがこのトースト通知を押下することで、拡張アプリケーション204の通知ユニット209がOSにより呼び出され、通知ユニット209のUI画面が表示される。通知ユニット209のUI画面では、例えば用紙なしエラーの詳細メッセージや用紙充填方法などの表示を行うことができる。
なお、本実施形態を実現するための拡張アプリケーション204の構成は、前述の機能(ユニット)を全て備えるものに限定されず、機能の一部のみを持つものや、他の機能を有するものでもよい。また、拡張アプリケーション204は、単に印刷ソフトウェアと呼ばれることもある。以上のように、拡張アプリケーション204は、以下の少なくとも1つを備えるといえる。
・設定画面を表示する機能(印刷設定画面拡張ユニット205)
・印刷データ生成ソフトウェア202の処理をスキップするか否かを制御する機能(スキップ制御ユニット206)
・印刷装置102に送信する印刷データを編集する機能(印刷データ編集ユニット208)
・印刷データ生成ソフトウェア202で指定可能な機能を拡張する機能(印刷機能拡張ユニット207)
・印刷装置102のエラー発生に応じて画面を表示する機能(通知ユニット209)
印刷データ生成ソフトウェア202は、印刷装置102から能力情報を取得し、印刷装置102がサポートしている印刷データのフォーマットを判断する。これにより、印刷データ生成ソフトウェア202は、印刷装置102の解釈可能な印刷データを生成することが可能となる。なお、以降で印刷データのフォーマットと記述している部分については、実際は印刷データに含まれる描画データのフォーマットのことを指す場合がある。
図3(a)~図3(c)は、本実施形態の印刷システムの各パートで扱われるデータのフォーマットを示した図である。図3(a)は、拡張アプリケーション204が関連付けられていない場合に印刷システムの各パートで扱われるデータフォーマットを示す図である。描画アプリケーション201からの印刷指示を受けると、OSは中間データであるXPSデータ302を生成する。印刷データ生成ソフトウェア202は、XPSデータ302をプリンタが解釈可能な印刷データに変換する。印刷データ生成ソフトウェア202は、印刷装置102から取得した属性データからサポートしている印刷データのフォーマットを判断し、対応した印刷装置102が解釈可能な印刷データを生成する。印刷データのフォーマットは、PDFやPWGRasterなどが考えられるが、これらに限定されるものではない。本実施形態では、印刷装置102がサポートする印刷データのフォーマットとして、PWGRasterが用いられるものとする。そのため、印刷データ生成ソフトウェア202は、XPSデータ302をPWGRasterデータ303に変換して、印刷装置102に送信する。印刷装置102は、受信したPWGRasterデータ303に基づき印刷を行う。
図3(b)は、拡張アプリケーション204が関連付けられており、且つ印刷データ生成ソフトウェア202による印刷データ生成処理のスキップ指示が行われない場合に、印刷システムの各パートで扱われるデータのフォーマットを示す図である。描画アプリケーション201からの印刷指示を受けると、拡張アプリケーション204のスキップ制御ユニット206が呼び出される。ただし、図3(b)では、スキップ制御ユニット206は印刷データ生成ソフトウェア202の処理をスキップする指示は行わない。これにより、図3(a)の場合と同様に、印刷データ生成ソフトウェア202は、XPSデータ302を、PWGRasterデータ303に変換する。印刷データ編集ユニット208は、入力データとしてPWGRasterデータ303を受け取る。PWGRasterデータ303は印刷装置102が解釈可能な印刷データなので、印刷データ編集ユニット208は、入力データであるPWGRasterデータ303をそのまま印刷装置102に送る。印刷装置102は、受信したPWGRasterデータ303に基づき印刷を行う。
図3(c)は、拡張アプリケーション204が関連付けられており、且つ印刷データ生成ソフトウェア202による印刷データ生成処理のスキップ指示が行われた場合に扱われるデータのフォーマットを示す図である。描画アプリケーション201からの印刷指示を受けると、拡張アプリケーション204のスキップ制御ユニット206が呼び出される。スキップ制御ユニット206は、OS、もしくは印刷データ生成ソフトウェア202に対して、中間データから印刷データへの変換処理を実行しないように指示を出す。スキップ制御ユニット206からのスキップ指示を受けると、印刷データ生成ソフトウェア202は、中間データを印刷データへ変換することなく、中間データを拡張アプリケーション204の印刷データ編集ユニット208に渡す。印刷データ編集ユニット208は、印刷設定情報に基づき、XPSデータに対して必要な編集を行った上で、PWGRasterデータ303に変換して、印刷装置102に送信する。印刷装置102は受信したデータに基づき印刷を行う。ただし、印刷装置102が解釈可能な印刷データのフォーマットにXPSが含まれている場合、印刷データ編集ユニット208は、XPSデータを別のフォーマットに変換することなく、印刷装置102に送信して印刷を行うようにしても良い。
図4は、本印刷システムにおける印刷機能拡張ユニット207による印刷機能情報203の編集処理のうち主要な処理フローを示す図である。以降、印刷機能拡張ユニット207を、各処理の主体として説明することもあるが、実際には、対応するプログラムをCPU111が実行することで、対応する機能が実現されることになる。
まず、図4のフローは、OSが、拡張アプリケーション204が初めて関連付けられたタイミング等で、印刷機能拡張ユニット207を起動することにより開始する。S401で、印刷機能拡張ユニット207は、拡張アプリケーション204が保持するロール紙幅情報211を取得して、S402に進む。S402で、印刷機能拡張ユニット207は、印刷データ生成ソフトウェア202から印刷機能情報203としてPDCを取得し、S403へ進む。この時、図示していないが、印刷機能拡張ユニット207は、PDCの中にロール紙幅の情報が既に含まれていた場合、処理を終了するようにしても良い。例えば、印刷データソフトウェア202がIPPの標準的な機能としてロール紙幅をサポートしている場合、そのまま印刷装置201がサポートするロール紙幅として使用することが可能なため、不要な処理を行わなくてすむ。
図5はPDCの一例を示す図である。PDC501には、印刷装置102がサポートしている機能(Feature)の情報や、ある機能における設定値(Option)の情報が含まれる。例えば、情報502は、PageMediaSize(用紙サイズ)として、ISOA4やPoster44x64が設定可能であることを示す。情報503は、PageMediaType(用紙の種類)として、Plain(普通紙)、Photographic(写真用紙)が設定可能であることを示す。情報503は、PageOrientation(印刷の向き)として、Portlait(縦)、Landscape(横)が設定可能であることを示す。図5のPDCには、ロール紙幅が設定可能であることを示す情報は含まれていない。
S403で、印刷機能拡張ユニット207は、S402で取得したPDCのPageMediaSize(用紙サイズ)情報502を参照する。そして、MediaSizeWidthの値の中で最も大きな値をその印刷装置102がサポートする最大の用紙サイズの幅(最大幅)Xとして保持する。具体的には、図5で、印刷装置102が対応する用紙サイズのうちISOA4のMediaSizeWidthが210000で、Poster44x64が1117600である。なお、単位は1000分の1mmである。図5では一部用紙サイズを省略しているが、他の用紙サイズについても比較を行う。本例では、このうち最も大きい用紙サイズ幅がPoster44x64の1117600として、最大の用紙サイズの幅Xとして決定する。以降のS404からS406について、図7で示したロール紙幅情報211を用いて具体的に説明する。印刷機能拡張ユニット207は、S404でロール紙幅情報211から取得したロール紙幅を上から順に比較していく。まず、先頭の60inロールのロール紙幅である1524000について比較する。
S404で、印刷機能拡張ユニット207は、S403で取得した用紙サイズの幅XとS401で取得したロール紙幅情報211を比較して、用紙サイズの幅Xよりロール紙幅が小さい場合、S405の処理に進む。印刷機能拡張ユニット207は、S405でPDCにロール紙幅を追加し、S406に進む。一方、用紙サイズの幅Xよりロール紙幅が大きい場合、何も処理を行わずS406に進む。S406で、印刷機能拡張ユニット207は、すべてのロール紙幅のチェックが完了したか否かを判定する。すべてのロール紙幅のチェックが完了した場合、図4の処理を終了する。一方、まだ処理すべきロール紙幅が残っている場合、S404からの処理を繰り返す。
例えば、まず、印刷機能拡張ユニット207は、S404でロール紙幅情報211から取得した、60inロールのロール紙幅である1524000と、用紙サイズの幅Xの1117600を比較する。この場合、Xのほうが小さいため、S406に処理を進める。
S406で、印刷機能拡張ユニット207は、ロール紙幅情報211の全ロール紙幅のチェックが完了したか否かを判定する。図7によるとロール紙幅情報211には次のロール紙幅があるため、S404に処理を進める。次に、S404で、印刷機能拡張ユニット207は、ロール紙幅情報211から取得した、54inロールのロール紙幅である1371600と用紙サイズの幅Xの1117600を比較する。この場合も、Xのほうが小さいため、S406に処理を進める。図7によるとS406では、ロール紙幅情報211には次のロール紙幅があると判定されるため、S404に処理を進める。次に、S404で、印刷機能拡張ユニット207は、ロール紙幅情報211から取得した、44inロールのロール紙幅である1117600と用紙サイズの幅Xの1117600を比較する。この場合、Xと同じサイズのため、S405に処理を進める。S405で、印刷機能拡張ユニット207は、ロール紙幅情報211から取得した44inロールのPDC内で使用する名称であるRoll44inchを使用して、PDCの記載ルールに従って追加する。具体的には、図6を用いて説明すると、ロール紙幅の機能を示す<psk:JobRollWidth psf2:psftype=“Feature”>を追加する。その後、そのオプションとして、<ns0000:Roll44inch psf2:psftype=“Option” psf2:default=“false“/>を追加する。このように、印刷機能拡張ユニット207は、ロール紙幅情報211から取得した、全ロール紙幅のチェックが完了するまでS404からS406の処理を継続し、全ロール紙幅のチェックが完了した場合、図4の処理を終了する。このような処理を行うことで、印刷データソフトウェア202がロール紙幅に対応していない場合もPDCに対して印刷装置201に対応したロール紙幅の情報を追加することが可能となる。
図6は、図4のフローチャートで編集した後のPDCの一例を示す図である。編集後のPDC601には、S405の処理によってロール紙幅を示す情報602が追加されている。情報602は、JobRollWidth(ロール紙幅)として、Roll44inch(44インチ幅のロール紙)、Roll42inch(42インチ幅のロール紙)、Roll24inch(24インチ幅のロール紙)が設定可能であることを示す。なお、図6の図示上、追加された他の情報は省略している。
印刷設定画面拡張ユニット205は、描画アプリケーション201上でユーザが印刷設定画面の表示を指示した場合に、OSを介して呼び出される。図8は、印刷設定画面拡張ユニット205により表示するロール紙幅ドロップダウンリストのアイテム生成処理の一例を示すフローチャートである。以降、印刷設定画面拡張ユニット205を、各処理の主体として説明することもあるが、実際には、対応するプログラムをCPU111が実行することで、対応する機能が実現される。まず、S801で、印刷設定画面拡張ユニット205は、図4のフローチャートで編集した後のPDCの情報に基づいて生成されるプリンタの能力情報であるPrintCapabilities(PC)としてロール紙幅を示す情報602を取得する。そして、処理をS802に進める。S802では、印刷設定画面拡張ユニット205は、S801で取得したロール紙幅を示す情報602に記載されたロール紙幅をロール紙幅ドロップダウンリストに追加する。この時、ロール紙幅の情報に加えて、カスタムロール紙幅に対応している情報が取得できた場合、カスタムロール紙幅を設定できるようにドロップダウンリストに追加してもよい。
図9(a)、図9(b)は、印刷設定画面拡張ユニット205が図10のロール紙幅1008で表示するロール紙幅ドロップダウンリストの一例を示す図である。図9(a)は、印刷設定画面拡張ユニット205が表示するロール紙幅ドロップダウンリストで、プリンタが60inロール(60インチ幅のロール紙)まで対応している例を示す図である。図9(b)は、印刷設定画面拡張ユニット205が表示するロール紙幅ドロップダウンリストで、プリンタが44inロール(44インチ幅のロール紙)まで対応している例を示す図である。図9(b)では、S801でカスタムサイズのロール紙幅に対応している情報が取得できたため、カスタムサイズを設定するコントロールが追加されている。
図10(a)、図10(b)は、印刷設定画面拡張ユニット205により表示される印刷設定画面の一例を示す図である。図10(a)は印刷設定画面拡張ユニット205により表示される印刷設定画面で通常の拡大/縮小を行う場合の一例を示す図である。印刷設定画面1000は前述のPDC(またはPC)に基づき、印刷データ生成ソフトウェア202で印刷機能を指定可能な画面を表示する。コントロールアイテム1001~1013は、ユーザが各印刷機能の設定を行うためのコントロールアイテムである。コントロールアイテム1003は、「拡大/縮小印刷」グループボックスで、ユーザはグループボックス内のラジオボタンを選択することによって、ユーザが所望する拡大/縮小印刷の方法を設定することが可能である。コントロールアイテム1004は、「出力用紙サイズに合わせる」設定で、コントロールアイテム1007の「出力用紙サイズ」ドロップダウンリストにより選択された出力用紙サイズに合わせて、拡大/縮小を行う設定である。拡張アプリケーション204は、コントロールアイテム1001の「用紙サイズ」に設定されている用紙サイズと全く同じサイズの印刷領域を描画アプリケーション201に指示する。拡張アプリケーション204は、さらに「出力用紙サイズ」ドロップダウンリストにより選択された出力用紙サイズに合わせて拡縮するように、印刷データ生成ソフトウェア202に指示する。
また、コントロールアイテム1006は「倍率を指定する」設定で、ユーザが指定した倍率に合わせて、拡大/縮小を行う設定である。拡張アプリケーション204は、コントロールアイテム1001の「用紙サイズ」に設定されている用紙サイズと全く同じサイズの印刷領域を描画アプリケーション201に指示する。拡張アプリケーション204はさらに、指定された倍率に合わせて拡縮するように、印刷データ生成ソフトウェア202に指示する。
また、コントロールアイテム1005は「ロール紙幅に合わせて拡大/縮小する」設定で、コントロールアイテム1008の「ロール紙幅」ドロップダウンリストにより選択されたロール紙幅に合わせて、拡大/縮小を行う設定である。拡張アプリケーション204は、コントロールアイテム1001の「用紙サイズ」に設定されている用紙サイズと全く同じサイズの印刷領域を描画アプリケーション201に指示する。拡張アプリケーション204は、さらにコントロールアイテム1008の「ロール紙幅」ドロップダウンリストにより選択されたロール紙幅に合わせて拡縮するように、印刷データ生成ソフトウェア202に指示する。拡縮率の計算方法については後述する。コントロールアイテム1008は、「ロール紙幅」ドロップダウンリストで、図8の処理により生成されたものである。
図10(b)は印刷設定画面拡張ユニット205により表示される印刷設定画面でフチなし印刷を行う場合の一例を示す図である。コントロールアイテム1002は「フチなし印刷」チェックボックスである。ユーザがコントロールアイテム1002にチェックを入れると、コントロールアイテム1009の「フチなし設定」ボタンが有効になる。さらに、図10(a)のコントロールアイテム1003の「拡大/縮小印刷」グループボックスのラベルが「フチなし印刷の方法」に変化して、ユーザは、グループボックス内のラジオボタンを選択することによってフチなし印刷の方法を設定することが可能となる。フチなし印刷とは、印刷装置102が、設置されている用紙サイズよりわずかに大きな印刷データを拡張アプリケーション204から受け取り、この印刷データに基づいてインクを吐出する技術である。そして、用紙の端に当たらなかったインクについてはプラテン上の特定幅に設けられたインク受け穴やスポンジのような吸収体で受けることで、プラテンを汚さずにかつ給紙誤差や裁断誤差による白フチを出さないように印刷することができる。コントロールアイテム1009は「フチなし設定」ボタンである。コントロールアイテム1009の「フチなし設定」では、フチなし印刷に必要なはみ出し量の設定を行うことが可能である。このはみ出し量は前述した用紙サイズよりわずかに大きい印刷データを生成するための設定である。本実施形態では一例として、はみ出し量は用紙サイズの全周に3mm加算するものとして説明を行う。コントロールアイテム1010は「出力用紙サイズに合わせる」設定である。フチなし印刷の場合、拡張アプリケーション204は、コントロールアイテム1001の「用紙サイズ」に設定されている用紙サイズと全く同じサイズの印刷領域を描画アプリケーション201に指示する。拡張アプリケーション204は、さらに「出力用紙サイズ」ドロップダウンリストにより選択された出力用紙サイズにコントロールアイテム1009の「フチなし設定」で設定されているフチなしはみだし量分を加算したサイズに合わせて拡縮するように、印刷データ生成ソフトウェア202に指示する。つまり、印刷データ生成ソフトウェア202は、描画アプリケーション201が生成したデータを拡縮することでフチなし印刷に必要なはみ出し量を含んだ実際の紙サイズより大きなデータを作成する。次に、拡張アプリケーション204は印刷装置102に印刷データを送り、出力用紙サイズに合わせたフチなし印刷を行うことが可能となる。
また、コントロールアイテム1012の「画像を原寸大で印刷する」は原稿用紙を拡大縮小せずにフチなし印刷を行う設定である。フチなし印刷の場合、拡張アプリケーション204はコントロールアイテム1001の「用紙サイズ」に設定されている用紙サイズにコントロールアイテム1009の「フチなし設定」で設定されているフチなしはみだし量分を加算した印刷領域を描画アプリケーション201に指示する。つまり、描画アプリケーション201はフチなし印刷に必要なはみ出し量を含んだ実際の紙サイズより大きなデータを作成する。こうすることで、拡張アプリケーション204は、印刷データ生成ソフトウェア202に対してデータの拡縮を指示することなく印刷装置102に印刷データを送ることで、画像を原寸大で印刷することが可能となる。
また、コントロールアイテム1011の「ロール紙幅に合わせて拡大/縮小する」は「ロール紙幅」ドロップダウンリストにより選択されたロール紙幅に合わせてフチなし印刷を行う設定である。フチなし印刷の場合、拡張アプリケーション204は、コントロールアイテム1001の「用紙サイズ」に設定されている用紙サイズと全く同じサイズの印刷領域を描画アプリケーション201に指示する。拡張アプリケーション204は、さらにコントロールアイテム1008の「ロール紙幅」ドロップダウンリストにより選択されたロール紙幅にコントロールアイテム1009の「フチなし設定」で設定されているフチなしはみ出し量分を加算したサイズに合わせて拡縮するように、印刷データ生成ソフトウェア202に指示する。拡縮率の計算方法については後述する。つまり、印刷データ生成ソフトウェア202は、描画アプリケーション201が生成したデータをロール紙幅に合わせて拡縮することでフチなし印刷に必要なはみ出し量を含んだ実際の紙サイズより大きなデータを作成する。次に、拡張アプリケーション204は印刷装置102に印刷データを送り、ロール紙幅に合わせたフチなし印刷を行うことが可能となる。
図11は、印刷設定画面拡張ユニット205による処理の一例を示すフローチャートである。以降、印刷設定画面拡張ユニット205を、各処理の主体として説明することもあるが、実際には、対応するプログラムをCPU111が実行することで、対応する機能が実現されることになる。コントロールアイテム1002のフチなし印刷が指定されていない状態で説明を行うが、特に言及がなければフチなし印刷時も同様の処理となる。まず、S1101で、印刷設定画面拡張ユニット205は、コントロールアイテム1005やコントロールアイテム1011の「ロール紙の幅に合わせて拡大/縮小する」ラジオボタンが選択された場合、S1102に処理を進める。一方、選択されない場合はS1108に処理を進める。S1102で、印刷設定画面拡張ユニット205は設定されているコントロールアイテム1008のロール紙幅、コントロールアイテム1001の用紙サイズを取得する。次に、S1103で、印刷設定画面拡張ユニット205は、ロール紙の幅に合わせて拡縮率や出力用紙サイズを計算する。
図12(a)、図12(b)は、「ロール紙の幅に合わせて拡大/縮小する」が選択された場合、印刷設定画面拡張ユニット205のS1103の処理で拡縮率や出力用紙サイズを計算する例を説明するための図である。図12(a)は、用紙サイズをロール紙幅に合わせて拡縮する際のイメージを示す図である。本例では印刷設定画面拡張ユニット205に設定されている用紙サイズはA4、ロール紙幅は24inロール(24インチ幅のロール紙)、印刷装置102のマージンを全周5mmとして説明を行う。図12(b)は用紙サイズをロール紙幅に合わせて拡縮する際の計算処理のフローを示す図である。
まず、S1201で印刷設定画面拡張ユニット205は、ロール紙幅(有効印刷領域)÷用紙サイズ幅(有効印字領域)から、拡縮率を計算する。本例の場合、(609.6mm-(5+5)mm)÷(210.0mm-(5+5)mm)×100=299.8%となる。次に、S1202で、印刷設定画面拡張ユニット205は、用紙サイズ長さ(有効印刷領域)×拡縮率から出力用紙サイズ長さ(有効印刷領域)を計算する。本例の場合、287.0mm×299.8%=860.4mmとなる。
次に、S1203で、印刷設定画面拡張ユニット205は、出力用紙サイズ(幅、長さ)を計算する。本例の場合、S1202で算出した出力用紙サイズ長さ(有効印刷領域)にマージンを加えた(609.6mm,860.4+(5+5)mm)=(609.6mm,870.4mm)となる。
フチなし印刷が指定されている場合、図10のコントロールアイテム1011で説明した処理を行い、拡縮率と出力用紙サイズを計算する。本例では、はみ出し量は全周3mmとして説明を行う。まず、印刷設定画面拡張ユニット205は、(ロール紙幅+はみ出し分)÷用紙サイズ幅から、拡縮率を計算する。本例の場合、(609.6mm+(3+3)mm)÷210.0mm×100=293%となる。ここから、印刷設定画面拡張ユニット205は、出力用紙サイズ長さ×拡縮率-はみ出し量から出力用紙サイズ長さを計算する。この場合、297.0×293%-(3+3)=864.21mmとなる。そのため、出力用紙サイズ(幅,長さ)は、(609.6mm,864.21mm)となる。S1203の後、図11のS1104に進む。
次に、S1104で印刷設定画面拡張ユニット205は、出力用紙サイズの長さ(出力長さ)が印刷装置102の印刷可能な長さを超えるか否かを判定する。出力用紙サイズの長さが印刷装置102の印刷可能な長さを超えると判定された場合はS1105に進む。一方、S1104で印刷可能な長さを超えないと判定された場合は、S1107に処理を進める。S1105で、印刷設定画面拡張ユニット205は、印刷可能な長さを超えることを示す警告メッセージを表示して、S1106に処理を進める。
図13は、印刷設定画面拡張ユニット205が表示する、印刷可能な長さを超えることを示す警告メッセージの一例を示す図である。本例では印刷可能な長さを18mとしているが、この印刷可能な長さは接続する印刷装置102によって異なる機種依存の情報である。そのため、拡張アプリケーション204が印刷装置102に最初に関連付けられた時に、印刷機能拡張ユニット207によって、印刷機能情報203に印刷可能な長さの情報を追加してもよい。こうすることで、印刷設定画面拡張ユニット205は、その印刷装置102で印刷可能な長さの情報に基づいて警告メッセージを表示するか否かの判定を行うことが可能となる。その場合、警告メッセージは、その印刷装置102で印刷可能な長さの情報が用いられて表示される。
次に、S1106で、印刷設定画面拡張ユニット205は、拡縮率や出力用紙サイズを再計算して、S1107に処理を進める。
図14(b)は、印刷装置102の印刷可能な長さを超えたため、印刷設定画面拡張ユニット205のS1103の処理で拡縮率や出力用紙サイズを再計算する処理を示すフローチャートである。図14(a)は、そのイメージを示す図である。拡大後の出力用紙サイズの長さが用紙長さの上限値を超える場合、長さが上限を超えないように拡大率を調整した上で、用紙の搬送方向に対して左上に有効印刷領域を配置する。ここでは、印刷設定画面拡張ユニット205に設定されている用紙サイズ幅、長さがそれぞれ(100mm,3000mm)、ロール紙幅は24inロール(24インチ幅のロール紙)、印刷装置102のマージンを全周5mmとして説明を行う。本例の場合、図12(b)の処理を行ったときに、拡縮率は(609.6-(5+5))÷(100-(5+5))=666%となる。また、出力用紙サイズ長さ(有効印刷領域)は、3000×6.66=19980となる。結果、出力用紙サイズは(609.6,19980+(5+5))となり、18mを超えてしまう。
図14(b)は、S1106で拡縮率や出力用紙サイズを再計算する計算処理のフローを示す図である。まず、S1401で、印刷設定画面拡張ユニット205は、印刷可能な長さ(有効印刷領域)÷用紙サイズ長さ(有効印刷領域)から拡縮率を計算する。本例の場合、(18000mm-(5+5)mm)÷(3000mm-(5+5)mm)×100=602%となる。
次に、S1402で、印刷設定画面拡張ユニット205は、用紙サイズ幅(有効印刷領域)×拡縮率から、出力用紙サイズ幅(有効印刷領域)を計算する。本例の場合、(100-(5+5))×6.02=541.8となる。結果、有効印刷領域幅、長さはそれぞれ(541.8mm、2990mm×6.02)となる。
次に、S1403で、印刷設定画面拡張ユニット205は、出力用紙サイズ長さを印刷可能な長さと等しく、出力用紙サイズ幅をロール紙幅と等しい値にする。本例の場合、出力用紙サイズは(609.6mm,18000mm)となる。
フチなし印刷が指定されている場合、確実にフチなし印刷ができるように、S1106の拡縮率、出力用紙サイズの再計算処理は行わない。そのため、そのまま印刷装置102に印刷データとして送る。そのため、搬送方向の先頭から18m以降の印刷データはプリンタによってカットされるため、印刷されない。なお、本例では再計算を行っていないが、印刷設定画面拡張ユニット205によって拡縮率や出力用紙サイズを調整してもよいし、印刷装置102でエラーにして、印刷を停止するようにしても良い。
次に、S1107で、印刷設定画面拡張ユニット205は、S1103やS1106で計算した拡縮率と出力用紙サイズを印刷設定情報(PT)として設定する。次にS1108では、印刷設定画面拡張ユニット205は、コントロールアイテム1013のOKボタンが押されたか否かを判定する。コントロールアイテム1013のOKボタンが押されたと判定された場合、図11の処理を終了する。一方、コントロールアイテム1013のOKボタンが押されていないと判定された場合は、S1101からの処理を繰り返す。図11のような処理を行うことによって、PDCに追加されたロール紙幅に合わせた拡大縮小の設定を行うことが可能となり、さらに、印刷装置102の印刷可能な長さを超えないように再設定を行うことが可能となる。
図15は、印刷データ編集ユニット208による処理の一例を示すフローチャートである。以降、印刷データ編集ユニット208を、各処理の主体として説明することもあるが、実際には、対応するプログラムをCPU111が実行することで、対応する機能が実現することになる。
図15のフローは、印刷データ生成ソフトウェア202からの出力データが処理可能になったタイミングで実行される。まず、S1501で、印刷データ編集ユニット208は、入力データである、印刷データに含まれる印刷設定情報であるPTを取得する。次に、S1502で、印刷データ編集ユニット208は、印刷装置102から現在給紙されているロール紙幅の情報を取得する。次に、S1503で、印刷データ編集ユニット208は、S1501で取得したPTのロール紙幅の設定とS1502で取得したロール紙幅が一致するか否かを判定する。一致すると判定された場合は、処理をS1508に進める。S1508で、印刷データ編集ユニット208は、印刷装置102に設置されているロール紙に対して、ロール紙幅に合わせて正しく印刷が可能となるため、印刷データをそのままプリンタに送信して図15の処理を終了する。一方、S1503で一致しないと判定された場合、S1504に処理を進める。S1504で、印刷データ編集ユニット208は、印刷データのデータフォーマットをOSのAPIを使用して取得する。本例ではOSのAPIを使用しているが、印刷データ編集ユニット208によって、印刷データの解析を行って判断してもよいし、印刷データ生成ソフトウェア202が出力データに情報を付与して、印刷データ編集ユニット208でその情報を参照して判断してもよい。
次に、S1505で、印刷データ編集ユニット208は、取得した入力データフォーマットがXPSであるか否かを判定する。XPSでないと判定された場合、印刷データ編集ユニット208は、処理をS1506に進める。一方、XPSであると判定された場合、S1507に処理を進める。S1506及びS1507の後、図15の処理を終了する。S1506とS1507の処理の詳細については後述する。
このような処理を行うことで、実際に印刷装置102に設定されているロール紙幅と印刷データのロール紙幅を比較して、一致している場合と一致していない場合の処理を分けることが可能となる。また、印刷データのフォーマットを確認することで、フォーマットによる処理の切替えを行うことも可能となる。
図16は、S1506で、印刷データ編集ユニット208のメッセージ表示処理(PDL用)のフローの一例を示した図である。本例でPDLとしてPWGRasterを例として説明する。まず、S1601で印刷データ編集ユニット208は、図17のメッセージ画面を表示する。
図17は、S1601で印刷データ編集ユニット208が表示するメッセージ画面(PDL用)の一例を示した図である。メッセージ画面は、印刷設定と異なるロール紙幅のロール紙が印刷装置102に設置されていて、そのままでは正しくロール紙幅に合わせてロール紙幅拡大ができないことを示すメッセージが表示されている。情報1701には、印刷装置102に設置されているロール紙幅の情報が表示されている。情報1701は、印刷データ編集ユニット208がS1502で取得した情報に基づいて表示される。また、情報1702には、印刷設定のロール紙幅の情報が表示されている。情報1702は、印刷データ編集ユニット208がS1501で取得した情報に基づいて表示される。コントロールアイテム1703は印刷中止ボタンである。また、コントロールアイテム1704は印刷開始ボタンである。
次に、S1602で、印刷データ編集ユニット208は、印刷中止ボタン1703が押されたか、もしくは印刷開始ボタン1704が押されたかを判定する。印刷中止ボタン1703が押されたと判定された場合は、何もせずに図16の処理を終了する。一方、印刷開始ボタン1704が押されたと判定された場合は、印刷データ編集ユニット208は、印刷データを印刷装置102に送信して図16の処理を終了する。
このような処理を行うことで、ユーザは、メッセージが表示されている間に、印刷装置102に設置されているロール紙を印刷設定に設定されているロール紙幅のロール紙に変更して印刷することが可能となる。また、ユーザは、設定が誤っていた場合、印刷を中止して、印刷設定を変更することが可能となる。
図18は、S1507で、印刷データ編集ユニット208のメッセージ表示処理(XPS用)のフローの一例を示した図である。まず、S1801で印刷データ編集ユニット208は、図19のメッセージ画面を表示する。
図19は、S1801で印刷データ編集ユニット208が表示するメッセージ画面(PDL用)の一例を示した図である。メッセージ画面には、印刷設定と異なるロール紙幅のロール紙が印刷装置102に設置されていて、セットされているロール紙に合わせて拡縮して印刷するか、そのままでは正しくロール紙幅に合わせてロール紙幅拡大ができないことが表示されている。情報1901及び1902、コントロールアイテム1903及び1904は、図17の情報1701及び1702、コントロールアイテム1703及び1704と同様のためそれらの説明は省略する。コントロールアイテム1905は、印刷装置102に設置されているロール紙に合わせて再度拡縮してから印刷を開始する指示を受け付けるボタンである。
次にS1802で、印刷データ編集ユニット208は、図19のメッセージ画面上でいずれのボタンが押されたかを判定する。印刷中止ボタン1903が押されたと判定された場合は、何もせずに図18の処理を終了する。また、印刷開始ボタン1904が押されたと判定された場合は、S1805に処理を進める。S1805で印刷データ編集ユニット208は、XPSデータを印刷装置102が解釈可能な印刷データに変換する。そして、S1806に処理を進め、印刷データをプリンタに送信して図18の処理を終了する。また、S1802で「拡縮して印刷ボタン」1905が押された場合は、S1803に処理を進める。
S1803で、印刷データ編集ユニット208は、S1502で取得した印刷装置102に設置されているロール紙幅に対してXPSデータの拡縮を行う。例えば、元のロール紙幅として24inロール(24インチ幅のロール紙)、即ち609.6mmの幅がロール紙幅として設定され、S1502で取得した実際のロール紙幅が36inロール(36インチ幅のロール紙)、即ち914.4mmであるとする。拡縮率は、(実際のロール紙幅)÷(元のロール紙幅)×100で計算する。ここでは、914.4mm÷609.6mm×100=150%となる。
次に、S1804で、印刷データ編集ユニット208は、S1803で計算した拡縮率で入力データであるXPSデータの拡縮を行う。本例では、元の長さは1000mmが設定されているものとすると、出力用紙サイズ長さは1000mm×1.5=1500mmとなり、出力用紙サイズ(幅,長さ)は、(914.400mm、15000mm)となる。本例では、図示していないが、図11のS1104のように、印刷可能長を超えるか否かの判定を行ってもよい。また、本例では印刷データ編集ユニット208は、XPSデータの拡縮はOSのAPIを使用してXPSデータそのものを拡縮するものとしている。しかしながら、拡縮率や用紙サイズに基づいて、拡張アプリケーション204による処理を再度行ってもよい。
次に、1805で、印刷データ編集ユニット208は、XPSデータを印刷装置102が解釈可能な印刷データに変換する。なお、印刷装置102がXPSデータを解釈可能な場合は、印刷データ編集ユニット208は、S1805の処理を行わなくてもよい。次に、印刷データ編集ユニット208は、S1806に処理を進め、印刷データをプリンタに送信して処理を終了する。
このような処理を行うことによって、印刷データ編集ユニット208への入力データがXPSデータの場合に、印刷設定におけるロール紙幅と現在設置されているロール紙のロール紙幅とが異なっていても再拡縮が可能となる。また、図16の処理と同様に、ユーザはメッセージ画面が表示されている間に、印刷装置102に設置されているロール紙を印刷設定に設定されているロール紙幅のロール紙に変更して印刷することが可能となる。また、印刷設定が誤っていた場合、ユーザは印刷を中止して、印刷設定を変更することが可能となる。
[第2実施形態]
以下、第1実施形態と異なる点について第2実施形態を説明する。第1実施形態では印刷データのフォーマットに応じて処理を切り替えていたが、印刷設定に応じて印刷データのフォーマットを切り替えることで、よりユーザの利便性を向上することが可能となる。
図20は、スキップ制御ユニット206による処理の一例を示すフローチャートである。以降、スキップ制御ユニット206を、各処理の主体として説明することもあるが、実際には、対応するプログラムをCPU111が実行することで、対応する機能が実現することになる。
図20のフローは、描画アプリケーション201から印刷指示が発行されたタイミングで実行される。まず、S2001で、スキップ制御ユニット206は、共有情報210からスキップ設定を取得する。次に、S2002で、スキップ制御ユニット206は、スキップ設定を取得したか否かを判定する。S2002でスキップ設定を取得していないと判定された場合、スキップ制御ユニット206は、スキップ指示を行わず、図20の処理を終了する。これによって、印刷データ生成ソフトウェア202は、中間データから印刷データへの変換処理を行い、印刷データ編集ユニット208で扱われる入力データは印刷データになる。
S2002でスキップ設定を取得したと判定された場合、スキップ制御ユニット206は、処理をS2003に進める。S2003で、スキップ制御ユニット206は、取得したスキップ設定がONか否かを判定する。S2003でONでないと判定された場合、スキップ制御ユニット206はスキップ指示を行わず、図20の処理を終了する。これによって、印刷データ生成ソフトウェア202は、中間データから印刷データへの変換処理を行い、印刷データ編集ユニット208で扱われる入力データは印刷データになる。
S2003でONであると判定された場合、スキップ制御ユニット206は、処理をS2004に進める。S2004で、スキップ制御ユニット206は、印刷データ生成ソフトウェア202の処理をスキップする指示を行う。その後、図20の処理を終了する。これによって、印刷データ生成ソフトウェア202は、中間データから印刷データへの変換処理を行わず、印刷データ編集ユニット208で扱われる入力データは中間データになる。なお、図20ではスキップ設定が格納されていない場合のデフォルト動作をスキップ指示しないものとしているが、スキップ指示するものとしてもよい。以上の処理により、共有情報210のスキップ設定に基づき、印刷データ生成ソフトウェア202の処理をスキップするか否かが切り替えられる。
図21は、本実施形態における印刷設定画面拡張ユニット205の処理の一例を示すフローチャートである。以降、印刷設定画面拡張ユニット205を、各処理の主体として説明することもあるが、実際には、対応するプログラムをCPU111が実行することで、対応する機能が実現することになる。
まず、印刷設定画面拡張ユニット205は、S2101でロール紙幅拡大が選択された場合、S2103に処理を進める。S2103で、印刷設定画面拡張ユニット205は、共有情報210に対してスキップ設定をONで格納する。一方、S2101でロール紙幅拡大が選択されない場合、S2102に処理を進める。S2102で、印刷設定画面拡張ユニット205は、共有情報210に対してスキップ設定をOFFで格納する。S2104~S2110の処理は図11のS1102~S1108の処理を同様のため説明は省略する。
このような処理を行うことによって、図10(a)及び図10(b)の画面上でロール紙幅拡大が選択された場合に、拡張アプリケーション204が中間データを受け取ることが可能となる。それによって、印刷実行時に印刷データ編集ユニット208により現在のロール紙幅と印刷設定が異なっていた場合、再度拡縮することが可能となる。
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
本実施形態の開示は、以下の情報処理装置、方法およびプログラムを含む。
(項目1)
印刷装置の機能をユーザにより指定可能とするための印刷機能情報を取得する取得手段と、
前記取得手段により取得された前記印刷機能情報を編集する第1編集手段と、
前記第1編集手段により編集された印刷機能情報に基づいて前記ユーザにより指定された機能を実行するための印刷設定情報を生成する生成手段と、
を備えることを特徴とする情報処理装置。
(項目2)
記録媒体の情報を記憶する記憶手段をさらに備え、
前記第1編集手段は、前記記憶手段に記憶された前記記録媒体の情報を、前記取得手段により取得された前記印刷機能情報に対して追加することを特徴とする項目1に記載の情報処理装置。
(項目3)
前記記録媒体はロール紙を含むことを特徴とする項目2に記載の情報処理装置。
(項目4)
前記第1編集手段は、前記記憶手段に記憶された前記ロール紙の情報のうち、前記取得手段により取得された前記印刷機能情報に含まれるロール紙の最大の幅より短い幅を有するロール紙の情報を、前記取得手段により取得された前記印刷機能情報に対して追加することを特徴とする項目3に記載の情報処理装置。
(項目5)
前記第1編集手段により編集された印刷機能情報に基づいて、前記ユーザにより機能を指定可能な設定画面を表示する表示手段をさらに備えることを特徴とする項目3又は4に記載の情報処理装置。
(項目6)
前記設定画面では、前記第1編集手段により追加された前記ロール紙の情報が指定可能に表示されることを特徴とする項目5に記載の情報処理装置。
(項目7)
前記第1編集手段により編集された印刷機能情報に基づいて指定された機能が、前記ユーザにより指定されたロール紙への拡縮である場合、拡縮率を算出する算出手段をさらに備えることを特徴とする項目6に記載の情報処理装置。
(項目8)
前記算出手段により算出された拡縮率により得られる出力長さが前記印刷装置で印刷可能な長さを超えるか否かを判定する判定手段をさらに備え、
前記判定手段により前記印刷装置で印刷可能な長さを超えると判定された場合、前記算出手段は、前記印刷装置で印刷可能な長さに基づいて拡縮率を算出し、
前記生成手段は、前記算出手段により算出された拡縮率を前記印刷設定情報として生成する、
ことを特徴とする項目7に記載の情報処理装置。
(項目9)
前記生成手段により生成された前記印刷設定情報は、プリンタドライバに渡されることを特徴とする項目7又は8に記載の情報処理装置。
(項目10)
前記プリンタドライバから出力される出力データを取得する第2取得手段と、
前記第2取得手段により取得された前記出力データを編集する第2編集手段と、
をさらに備えることを特徴とする項目9に記載の情報処理装置。
(項目11)
前記第1編集手段により編集された印刷機能情報に基づいて指定された印刷設定で用いられるロール紙と、前記印刷装置に設置されているロール紙とが異なるか否かを判定する判定手段をさらに備え、
前記第2編集手段は、前記判定手段により異なると判定された場合、前記出力データを編集することを特徴とする項目10に記載の情報処理装置。
(項目12)
前記第2編集手段による編集は、前記印刷装置に設置されているロール紙への拡縮であることを特徴とする項目11に記載の情報処理装置。
(項目13)
前記判定手段により異なると判定された場合、前記第1編集手段により編集された印刷機能情報に基づいて指定された印刷設定で用いられるロール紙と、前記印刷装置に設置されているロール紙とが異なることを通知する通知手段をさらに備えることを特徴とする項目12に記載の情報処理装置。
(項目14)
前記通知手段は、前記出力データのフォーマットが第1のフォーマットである場合と第2のフォーマットである場合との間で通知の内容を異ならせることを特徴とする項目13に記載の情報処理装置。
(項目15)
前記通知手段は、前記出力データのフォーマットが前記第1のフォーマットである場合、前記出力データの拡縮の指示を受け付けるための表示を行わず、前記出力データのフォーマットが前記第2のフォーマットである場合、前記印刷装置に設置されているロール紙への拡縮の指示を受け付けるための表示を行うことを特徴とする項目14に記載の情報処理装置。
(項目16)
前記第2編集手段は、前記拡縮の指示を受け付けた場合、前記出力データに基づいて前記印刷装置に設置されているロール紙への拡縮を行うことを特徴とする項目15に記載の情報処理装置。
(項目17)
前記プリンタドライバから出力される前記出力データのフォーマットを前記第1のフォーマットと前記第2のフォーマットの間で切り替える切替手段をさらに備えることを特徴とする項目14乃至16のいずれか1項に記載の情報処理装置。
(項目18)
前記プリンタドライバでは、前記第2のフォーマットから前記第1のフォーマットへの変換が実行され、
前記切替手段は、当該変換を実行させるか否かにより、前記プリンタドライバから出力される前記出力データのフォーマットを前記第1のフォーマットと前記第2のフォーマットの間で切り替えることを特徴とする項目17に記載の情報処理装置。
(項目19)
前記第2のフォーマットのデータは、ベクタデータであることを特徴とする項目14乃至18のいずれか1項に記載の情報処理装置。
(項目20)
前記第1のフォーマットのデータは、ラスタデータであることを特徴とする項目14乃至19のいずれか1項に記載の情報処理装置。
(項目21)
前記第2編集手段により編集された出力データを前記印刷装置に送信する送信手段をさらに備えることを特徴とする項目10乃至20のいずれか1項に記載の情報処理装置。
(項目22)
前記プリンタドライバは、クラスドライバであることを特徴とする項目9乃至21のいずれか1項に記載の情報処理装置。
(項目23)
項目1乃至22のいずれか1項に記載の情報処理装置の各手段としてコンピュータを機能させるためのプログラム。
(項目24)
前記プログラムは、プリンタドライバの機能を拡張するアプリケーションプログラムであることを特徴とする項目23に記載のプログラム。
(項目25)
情報処理装置において実行される方法であって、
印刷装置の機能をユーザにより指定可能とするための印刷機能情報を取得する取得工程と、
前記取得工程において取得された前記印刷機能情報を編集する編集工程と、
前記編集工程において編集された印刷機能情報に基づいて前記ユーザにより指定された機能を実行するための印刷設定情報を生成する生成工程と、
を有することを特徴とする方法。
発明は上記実施形態に制限されるものではなく、発明の精神及び範囲から離脱することなく、様々な変更及び変形が可能である。従って、発明の範囲を公にするために請求項を添付する。
101 情報処理装置: 111 CPU: 112 ROM: 113 RAM

Claims (22)

  1. 印刷装置の機能をユーザにより指定可能とするための印刷機能情報を取得する取得手段と、
    前記取得手段により取得された前記印刷機能情報を編集する第1編集手段と、
    前記第1編集手段により編集された印刷機能情報に基づいて前記ユーザにより指定された機能を実行するための印刷設定情報を生成する生成手段と、
    ロール紙の種類および幅を示す情報を記憶する記憶手段と、
    を備え、
    前記印刷機能情報は記録媒体の種類および幅を示す情報を含み、
    前記取得手段により取得された前記印刷機能情報にロール紙に対応する前記記録媒体の種類および幅を示す情報が含まれていない場合、
    前記取得手段により取得された前記印刷機能情報に含まれる前記記録媒体の最大の幅は前記印刷装置がサポート可能な最大の幅として保持され、前記第1編集手段は、当該最大の幅より短い幅を有するロール紙の情報を、前記取得手段により取得された前記印刷機能情報に対して追加
    前記第1編集手段は、前記記憶手段に記憶された前記ロール紙の種類および幅を示す情報のうち、前記取得手段により取得された前記印刷機能情報に含まれる前記記録媒体の最大の幅より短い幅を有するロール紙の種類および幅を示す情報を、前記取得手段により取得された前記印刷機能情報に対して追加する、
    ことを特徴とする情報処理装置。
  2. 前記第1編集手段により編集された印刷機能情報に基づいて、前記ユーザにより機能を指定可能な設定画面を表示する表示手段をさらに備えることを特徴とする請求項1に記載の情報処理装置。
  3. 前記設定画面では、前記第1編集手段により追加された前記ロール紙の種類および幅を示す情報が指定可能に表示されることを特徴とする請求項に記載の情報処理装置。
  4. 前記第1編集手段により編集された印刷機能情報に基づいて指定された機能が、前記ユーザにより指定されたロール紙への拡縮である場合、拡縮率を算出する算出手段をさらに備えることを特徴とする請求項に記載の情報処理装置。
  5. 前記算出手段により算出された拡縮率により得られる出力長さが前記印刷装置で印刷可能な長さを超えるか否かを判定する判定手段をさらに備え、
    前記判定手段により前記印刷装置で印刷可能な長さを超えると判定された場合、前記算出手段は、前記印刷装置で印刷可能な長さに基づいて拡縮率を算出し、
    前記生成手段は、前記算出手段により算出された拡縮率を前記印刷設定情報として生成する、
    ことを特徴とする請求項に記載の情報処理装置。
  6. 前記生成手段により生成された前記印刷設定情報は、プリンタドライバに渡されることを特徴とする請求項に記載の情報処理装置。
  7. 前記プリンタドライバから出力される出力データを取得する第2取得手段と、
    前記第2取得手段により取得された前記出力データを編集する第2編集手段と、
    をさらに備えることを特徴とする請求項に記載の情報処理装置。
  8. 前記第1編集手段により編集された印刷機能情報に基づいて指定された印刷設定で用いられるロール紙と、前記印刷装置に設置されているロール紙とが異なるか否かを判定する判定手段をさらに備え、
    前記第2編集手段は、前記判定手段により異なると判定された場合、前記出力データを編集することを特徴とする請求項に記載の情報処理装置。
  9. 前記第2編集手段による編集は、前記印刷装置に設置されているロール紙への拡縮であることを特徴とする請求項に記載の情報処理装置。
  10. 前記判定手段により異なると判定された場合、前記第1編集手段により編集された印刷機能情報に基づいて指定された印刷設定で用いられるロール紙と、前記印刷装置に設置されているロール紙とが異なることを通知する通知手段をさらに備えることを特徴とする請求項に記載の情報処理装置。
  11. 前記通知手段は、前記出力データのフォーマットが第1のフォーマットである場合と第2のフォーマットである場合との間で通知の内容を異ならせることを特徴とする請求項10に記載の情報処理装置。
  12. 前記通知手段は、前記出力データのフォーマットが前記第1のフォーマットである場合、前記出力データの拡縮の指示を受け付けるための表示を行わず、前記出力データのフォーマットが前記第2のフォーマットである場合、前記印刷装置に設置されているロール紙への拡縮の指示を受け付けるための表示を行うことを特徴とする請求項11に記載の情報処理装置。
  13. 前記第2編集手段は、前記拡縮の指示を受け付けた場合、前記出力データに基づいて前記印刷装置に設置されているロール紙への拡縮を行うことを特徴とする請求項12に記載の情報処理装置。
  14. 前記プリンタドライバから出力される前記出力データのフォーマットを前記第1のフォーマットと前記第2のフォーマットの間で切り替える切替手段をさらに備えることを特徴とする請求項11に記載の情報処理装置。
  15. 前記プリンタドライバでは、前記第2のフォーマットから前記第1のフォーマットへの変換が実行され、
    前記切替手段は、当該変換を実行させるか否かにより、前記プリンタドライバから出力される前記出力データのフォーマットを前記第1のフォーマットと前記第2のフォーマットの間で切り替えることを特徴とする請求項14に記載の情報処理装置。
  16. 前記第2のフォーマットのデータは、ベクタデータであることを特徴とする請求項11に記載の情報処理装置。
  17. 前記第1のフォーマットのデータは、ラスタデータであることを特徴とする請求項11に記載の情報処理装置。
  18. 前記第2編集手段により編集された出力データを前記印刷装置に送信する送信手段をさらに備えることを特徴とする請求項に記載の情報処理装置。
  19. 前記プリンタドライバは、クラスドライバであることを特徴とする請求項に記載の情報処理装置。
  20. 情報処理装置のコンピュータを、
    印刷装置の機能をユーザにより指定可能とするための印刷機能情報を取得する取得手段と、
    前記取得手段により取得された前記印刷機能情報を編集する第1編集手段と、
    前記第1編集手段により編集された印刷機能情報に基づいて前記ユーザにより指定された機能を実行するための印刷設定情報を生成する生成手段と、
    ロール紙の種類および幅を示す情報を記憶する記憶手段と、
    として機能させ、
    前記印刷機能情報は記録媒体の種類および幅を示す情報を含み、
    前記取得手段により取得された前記印刷機能情報にロール紙に対応する前記記録媒体の種類および幅を示す情報が含まれていない場合、
    前記取得手段により取得された前記印刷機能情報に含まれる前記記録媒体の最大の幅は前記印刷装置がサポート可能な最大の幅として保持され、前記第1編集手段は、当該最大の幅より短い幅を有するロール紙の情報を、前記取得手段により取得された前記印刷機能情報に対して追加
    前記第1編集手段は、前記記憶手段に記憶された前記ロール紙の種類および幅を示す情報のうち、前記取得手段により取得された前記印刷機能情報に含まれる前記記録媒体の最大の幅より短い幅を有するロール紙の種類および幅を示す情報を、前記取得手段により取得された前記印刷機能情報に対して追加する、
    ことを特徴とするプログラム。
  21. 前記プログラムは、プリンタドライバの機能を拡張するアプリケーションプログラムであることを特徴とする請求項20に記載のプログラム。
  22. 情報処理装置において実行される方法であって、
    印刷装置の機能をユーザにより指定可能とするための印刷機能情報を取得する取得工程と、
    前記取得工程において取得された前記印刷機能情報を編集する編集工程と、
    前記編集工程において編集された印刷機能情報に基づいて前記ユーザにより指定された機能を実行するための印刷設定情報を生成する生成工程と、
    を有し、
    前記印刷機能情報は記録媒体の種類および幅を示す情報を含み、
    前記取得工程において取得された前記印刷機能情報にロール紙に対応する前記記録媒体の種類および幅を示す情報が含まれていない場合、
    前記取得工程において取得された前記印刷機能情報に含まれる前記記録媒体の最大の幅は前記印刷装置がサポート可能な最大の幅として保持され、前記編集工程では、当該最大の幅より短い幅を有するロール紙の情報を、前記取得工程において取得された前記印刷機能情報に対して追加
    前記編集工程において、ロール紙の種類および幅を示す情報を記憶する記憶手段に記憶された前記ロール紙の種類および幅を示す情報のうち、前記取得工程において取得された前記印刷機能情報に含まれる前記記録媒体の最大の幅より短い幅を有するロール紙の種類および幅を示す情報を、前記取得工程において取得された前記印刷機能情報に対して追加する、
    ことを特徴とする方法。
JP2023014859A 2023-02-02 2023-02-02 情報処理装置、方法およびプログラム Active JP7846639B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2023014859A JP7846639B2 (ja) 2023-02-02 2023-02-02 情報処理装置、方法およびプログラム
US18/414,591 US12455707B2 (en) 2023-02-02 2024-01-17 Information processing apparatus, method, and non-transitory computer-readable storage medium storing program
US19/349,034 US20260029971A1 (en) 2023-02-02 2025-10-03 Information processing apparatus, method, and non-transitory computer-readable storage medium storing program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2023014859A JP7846639B2 (ja) 2023-02-02 2023-02-02 情報処理装置、方法およびプログラム

Publications (3)

Publication Number Publication Date
JP2024110328A JP2024110328A (ja) 2024-08-15
JP2024110328A5 JP2024110328A5 (ja) 2025-01-22
JP7846639B2 true JP7846639B2 (ja) 2026-04-15

Family

ID=92119695

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2023014859A Active JP7846639B2 (ja) 2023-02-02 2023-02-02 情報処理装置、方法およびプログラム

Country Status (2)

Country Link
US (2) US12455707B2 (ja)
JP (1) JP7846639B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2025001977A (ja) * 2023-06-21 2025-01-09 キヤノン株式会社 制御プログラム、情報処理装置の制御方法および情報処理装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020140289A (ja) 2019-02-27 2020-09-03 ブラザー工業株式会社 プログラム、アプリケーション、情報処理装置
JP2021108001A (ja) 2019-12-27 2021-07-29 キヤノン株式会社 プログラム及び制御方法
JP2021108000A (ja) 2019-12-27 2021-07-29 キヤノン株式会社 プログラム及び制御方法

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6176230B2 (ja) * 2014-12-15 2017-08-09 コニカミノルタ株式会社 印刷制御装置、画像形成装置及び印刷制御プログラム
JP7596779B2 (ja) 2020-12-24 2024-12-10 ブラザー工業株式会社 サポートプログラムおよび印刷システム

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020140289A (ja) 2019-02-27 2020-09-03 ブラザー工業株式会社 プログラム、アプリケーション、情報処理装置
JP2021108001A (ja) 2019-12-27 2021-07-29 キヤノン株式会社 プログラム及び制御方法
JP2021108000A (ja) 2019-12-27 2021-07-29 キヤノン株式会社 プログラム及び制御方法

Also Published As

Publication number Publication date
US20240264782A1 (en) 2024-08-08
US12455707B2 (en) 2025-10-28
JP2024110328A (ja) 2024-08-15
US20260029971A1 (en) 2026-01-29

Similar Documents

Publication Publication Date Title
US20220317943A1 (en) Control method and information processing apparatus
JP7739098B2 (ja) アプリケーションプログラム、及び制御方法
KR102869397B1 (ko) 정보 처리 장치, 정보 처리 장치의 제어 방법, 및 저장 매체
JP5704834B2 (ja) 情報処理装置および制御方法およびプログラム
US20250193330A1 (en) Storage medium, information processing apparatus, and control method
JP7282567B2 (ja) 情報処理装置、およびプログラム
US20260029971A1 (en) Information processing apparatus, method, and non-transitory computer-readable storage medium storing program
JP2023034958A (ja) 情報処理装置、情報処理装置の制御方法およびプログラム
JP2002014797A (ja) 情報処理装置、印刷制御装置、およびその制御方法、および記憶媒体、およびその制御プログラム
US11875074B2 (en) Computer-readable storage medium and method for displaying information about whether print settings are configurable
JP7829516B2 (ja) 拡張アプリケーションプログラム、情報処理装置及び記憶媒体
JP7673024B2 (ja) 情報処理装置、プログラム
JP2007279855A (ja) 情報処理装置及びその制御方法、プログラム
EP4509974A1 (en) Storage medium, application program, control method for information processing apparatus, and information processing apparatus
JP7542034B2 (ja) 情報処理装置、方法およびアプリケーションプログラム
US20250370676A1 (en) Storage medium storing program supporting general-purpose print software and control method
JP2025178690A (ja) アプリケーションプログラム、情報処理装置の制御方法、及び情報処理装置
JP2024016353A (ja) 情報処理装置、プログラム
JP2025001977A (ja) 制御プログラム、情報処理装置の制御方法および情報処理装置
JP2024058153A (ja) 情報処理装置、制御方法およびプログラム
JP2007299380A (ja) 印刷支援装置、印刷支援プログラムおよび記憶媒体、並びに印刷支援方法
JP2026006314A (ja) サポートプログラム
JP2024159147A (ja) 拡張アプリケーションプログラム、情報処理装置及び記憶媒体
JP2004213305A (ja) 印刷制御システムおよび情報処理装置および印刷制御方法およびプログラム
JP2004213185A (ja) 印刷制御方法及び印刷制御装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20241225

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20250114

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20250918

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20250929

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20251127

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20251219

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20260217

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20260403

R150 Certificate of patent or registration of utility model

Ref document number: 7846639

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150