JP5924892B2 - 情報処理装置、情報処理方法、及びプログラム - Google Patents

情報処理装置、情報処理方法、及びプログラム Download PDF

Info

Publication number
JP5924892B2
JP5924892B2 JP2011196143A JP2011196143A JP5924892B2 JP 5924892 B2 JP5924892 B2 JP 5924892B2 JP 2011196143 A JP2011196143 A JP 2011196143A JP 2011196143 A JP2011196143 A JP 2011196143A JP 5924892 B2 JP5924892 B2 JP 5924892B2
Authority
JP
Japan
Prior art keywords
print
character
print setting
printer driver
characters
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.)
Expired - Fee Related
Application number
JP2011196143A
Other languages
English (en)
Other versions
JP2013058090A5 (ja
JP2013058090A (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 JP2011196143A priority Critical patent/JP5924892B2/ja
Priority to US13/602,595 priority patent/US9223524B2/en
Publication of JP2013058090A publication Critical patent/JP2013058090A/ja
Publication of JP2013058090A5 publication Critical patent/JP2013058090A5/ja
Application granted granted Critical
Publication of JP5924892B2 publication Critical patent/JP5924892B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1202Dedicated interfaces to print systems specifically adapted to achieve a particular effect
    • G06F3/1203Improving or facilitating administration, e.g. print management
    • G06F3/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; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1224Client or server resources management
    • G06F3/1228Printing driverless or using generic drivers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/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; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1278Dedicated interfaces to print systems specifically adapted to adopt a particular infrastructure
    • G06F3/1285Remote printer device, e.g. being remote from client or server

Description

印刷設定を行う情報処理装置、情報処理方法、及びプログラムに関する。
プリンタは通常PC上で動作するプリンタドライバと呼ばれるソフトウェアによって制御される。プリンタドライバの役割は大きく2つある。1つはユーザに対して印刷設定の変更を可能にするもので、一般的にユーザインタフェース(UI)を有している。もう一つはアプリケーションからの描画命令をプリンタの解釈できる印刷データ(PDL(Page Description Language ))に変換してプリンタにデータを送信するものである。
また、Windows(商標登録) OSにおけるプリンタドライバの中にはGPD (Generic Printer Description)ベースのプリンタドライバという種類のプリンタドライバが存在する。GPDベースのプリンタドライバでは、プリンタメーカーの作成したテキスト形式のGPDファイルを元にWindows OSに標準で用意されているプリンタドライバがプリンタドライバのUIを生成する。今後、セキュリティの高さから、Windows OSにおけるプリンタドライバはこのGPDベースのプリンタドライバが主流になると考えられる。
一方、特許文献1のように、従来からプリンタドライバのUIにおいて任意文字列を入力できるような工夫がなされている。
特開2007−172201号
GPDベースのプリンタドライバには、任意文字列をユーザに入力させるUIを作成できないという課題がある。例えば、印刷設定にウォーターマークとして透かし印刷する文字列をユーザに入力させたくても、そのようなUIを作成することができない。これは、GPDの仕様によるもので、GPDに記述された既存の選択肢の中からのみ印刷設定の指定が可能だからである。
さらに、GPDと同様のフォーマットを持つPPD(PostScript Printer Description)を用いたプリンタドライバも同じ課題を持っている。
上記課題を解決するため本発明の情報処理装置は、
入力された文字列から文字を1文字ずつ取得する取得手段と、
前記取得手段により取得された文字を印刷機能の印刷設定値として記述したプリントチケットを生成する生成手段と、
特定機能のための文字列の文字ごとに複数の文字から1文字を選択する選択画面を含むプリンタドライバの印刷設定画面を表示する設定表示手段とを有し、
前記プリンタドライバは前記生成手段により生成されたプリントチケットとアプリケーションから描画命令に基づく印刷データ生成ることを特徴とする。
本発明の実施により、GPDベースのプリンタドライバでありながら、任意の文字列をユーザに入力させるプリンタドライバUIを提供することができる。
本実施例のハードウェア構成を示すブロック図である。 本実施例のソフトウェア構成を示すブロック図である。 プリンタドライバの構成ファイルを示した図である。 プリンタドライバ、アプリケーション、印刷設定アプリケーションの関係図である。 GPDベースのプリンタドライバUIの一例を示している。 GPDファイルの一例を示している。 印刷設定アプリケーションのUIの一例を示している。 実施例1におけるGPDベースのプリンタドライバUIの一例を示している。 実施例1におけるGPDファイルの一部を示している。 実施例1におけるPrintCapabilitiesの一部を示している。 実施例1におけるGPDベースのプリンタドライバUIの一例を示している。 実施例1におけるPrintTicketの一部を示している。 実施例1における印刷設定アプリケーションのUIの一部を示している。 印刷設定アプリケーションがPrintTicketを生成するフローを示している。 印刷設定アプリケーションがエディットボックスを表示するフローを示している。 印刷設定アプリケーションが表示するエラー表示のUIを示している。 実施例2におけるGPDベースのプリンタドライバUIの一例を示している。 実施例2における印刷設定アプリケーションのUIの一部を示している。 実施例2におけるGPDベースのプリンタドライバUIの一部を示している。 PPDファイルの一部を示している。 発明の概要を説明する図である。
以下、本発明を実施するための最良の形態について図面を用いて説明する。
[実施例1]
図1は、本実施例におけるプリントシステムのハードウェア構成を示すブロック図である。コンピュータ(情報処理装置)100とプリンタ800がネットワークやUSBを介して接続されている。CPU101は、システムバス104に接続されているデバイスやコントローラを統括的に制御する。RAM102はCPU101の主メモリ、ワークメモリとして機能する。ROM103はコンピュータ100のBIOSなどが記憶されている。入力コントローラ105はマウスやキーボードなどの入力デバイス109を制御する。ビデオコントローラ106はモニタ110への表示を制御する。メモリコントローラ107はHDDなどの外部メモリ111への読み書きを制御する。通信I/Fコントローラ108は外部機器との通信インタフェースを制御する。
本発明を実現するための各種プログラムは、外部メモリ111に記憶されており、必要に応じてRAM102にロードされ、CPU101によって実行される。
図2は、本実施例におけるコンピュータ100内のソフトウェア構成を示すブロック図である。オペレーティングシステム400は各種ソフトウェアやハードウェアを制御する。なお、本実施例におけるオペレーティングシステム400はWindows OSである。アプリケーション200は例えば文書作成や表計算を行うためのソフトウェアであり、オペレーティングシステム400の機能を用いてプリンタ800への印刷指示を行うことができる。
プリンタドライバ300はプリンタ800を制御するためのソフトウェアであり、オペレーティングシステムによって管理され、ロードされ、実行される。印刷設定アプリケーション500は本発明を具体化したソフトウェアであり、1つのアプリケーションとしてプリンタドライバ300とオペレーティングシステム400と連携して動作する。
図3はプリンタドライバ300の構成ファイルを示している。オペレーティングシステム400は、コンピュータ100にインストールされたプリンタドライバ300の数だけ図に示すようなファイル群を外部メモリ111内で管理している。図3は特にGPDベースのプリンタドライバの構成ファイルを示しており、図示したファイルはすべてプリンタメーカーによって作成されて配布されたものである。GPDファイル301にはプリンタ固有の印刷設定がテキストベースで記述されている。また、コンフリクト制御ファイル302には印刷設定の組み合わせにおける禁則仕様がテキストベースで記述されている。リソースファイル303はプリンタドライバ300のUI上の文字列などのリソースを保持している。オペレーティングシステム400に標準で用意されているプリンタドライバ300は必要に応じてGPDファイル301やリソースファイル303を元にプリンタドライバ300のUIを生成し、モニタ110に対して表示する。ユーザは印刷前にプリンタドライバ300のUIに対して入力デバイス109を使用することで印刷設定を編集することができる。
レンダリングモジュール304はアプリケーション200からの印刷時に、描画命令をプリンタ800の解釈可能なデータ(PDL)に変換する。ここで作成されたPDLはオペレーティングシステム400の管理する通信I/Fコントローラ108によってプリンタ800へと送信され、プリンタ800によって印刷される。
図4はアプリケーション200や印刷設定アプリケーション500が印刷設定のためのUIを生成するうえでGPDベースのプリンタドライバ300とやり取りする情報を概念的に示した図である。
プリンタドライバ300はGPDファイル301とコンフリクト制御ファイル302を用いて印刷設定に必要なUIを生成する。一方、アプリケーション200は印刷設定に必要なUIを生成するためにプリンタドライバ300との間でPrintCapabilities250と呼ばれるXMLデータとPrintTicket260と呼ばれるXMLデータをやり取りする。同様に印刷設定アプリケーション500も印刷設定に必要なUIを生成するためにプリンタドライバ300との間でPrintCapabilities550と呼ばれるXMLデータとPrintTicket560と呼ばれるXMLデータをやり取りする。ここで、PrintCapabilities(250,550)にはプリンタドライバ300のもつ印刷設定の能力が記述されており、PrintTicket(260,560)には実際の印刷設定が記述されている。これによってアプリケーション200は現在使用しようとしているプリンタドライバ300の能力を知ることができ、かつ、求める印刷設定をプリンタドライバ300に伝えることができる。それぞれのファイルの詳細は後述する。
図5はGPDベースのプリンタドライバ300のUI(印刷設定画面)(以降、プリンタドライバUIと呼ぶ)の一例を示している。プリンタドライバUI1000はオペレーティングシステム400に標準で用意されているプリンタドライバ300によって図のようなダイアログ形式で表示される。印刷設定は1070に示す領域にツリー形式で表示される。図4は「ステープル:」1100の印刷設定をユーザが選択したときのUIを示している。ここで「ステープル:」1100のコンボボックスには、「オフ」1101、「左上」1102、「中綴じ」1103の3つの印刷設定項目の選択肢が用意されており、ユーザはその中から任意の項目を選択することができる。プリンタドライバUI1000には「OK」ボタン1080と「キャンセル」ボタン1090が用意されている。プリンタドライバ300はユーザによって「OK」ボタン1080が押されるとUIでそれぞれ選択されている印刷設定を保存し、「キャンセル」ボタン1090が押されるとUIで示す印刷設定を破棄する。保存された印刷設定はプリンタドライバ300によって印刷時に適用される。
図6はGPDファイルの一例として、図5に示したプリンタドライバ300のGPDファイル301の一部2000を示している。GPDファイル301にはFeatureと呼ばれる印刷設定(印刷機能)とOptionと呼ばれる印刷設定項目(印刷設定値)の組み合わせ(選択肢)が記述されている。図ではFeatureとしての「Stapling」2010に対して、「OFF」2011、「TOP_LEFT」2012、「SADDLESTITCH」2013の3つのOptionが記述されている。オペレーティングシステム400に標準で用意されているプリンタドライバ300はGPDファイル301やリソースファイル303を使用して図5に示すプリンタドライバUI1000を生成する。GPDファイルフォーマットの詳細に関しては公知であるため割愛する。
図7は印刷設定アプリケーション500のUI501を示している。「原稿サイズ」502はコンボボックス形式で複数の用紙サイズの中から選択できるようになっている。また、「印刷の向き」503はラジオボタン形式で縦と横のどちらかを選択できるようになっている。「ウォーターマーク」の設定は「ウォーターマーク編集」ボタン504によって新たなダイアログを表示することで入力可能になっている。また、プレビュー領域505には印刷結果が簡易的にアイコンで表示されており、現在の印刷設定の様子がユーザにわかりやすいように表示されている。印刷設定アプリケーション500はGPDベースのプリンタドライバUI1000だけではユーザにわかりづらい点を補完するために用意されたものであり、GPDファイル301などのプリンタドライバ構成ファイルと同様にプリンタメーカーが作成して配布する。
印刷設定アプリケーション500のUI501には「OK」ボタン570と「キャンセル」ボタン580と「適用」ボタン590が用意されている。印刷設定アプリケーション500は、ユーザによって「OK」ボタン570や「適用」ボタン590が押されるとUIで示す印刷設定を保存し、「キャンセル」ボタン580が押されるとUIで示す印刷設定を破棄する。保存された印刷設定はプリンタドライバ300によって印刷時に適用される。
次に図21を用いて本発明の概略を説明する。
まず、GPDファイル2101に1文字ごとのFeature(プリンタのパネルに表示される文字)に対してOptionとして「0から9、AからZ、aからz」が記述されたプリンタドライバ300を準備する。
プリンタドライバ300はこのGPDファイル2101の記述を読み出しプリンタドライバの印刷設定画面を表示する。この印刷設定画面には、プリンタのパネルに表示させる文字を選択する選択画面が含まれる。プリンタドライバは、このプリンタのパネルに表示すべき文字を1文字目から選択画面のプルダウンメニュ(0から9、AからZ、aからzから1文字を選択する)により選択された文字を選択する。2102では1文字目のプルダウンメニュで「K」が選択され、2文字目のプルダウンメニュで「I」が選択され、3文字目のプルダウンメニュで「K」が選択され、4文字目のプルダウンメニュで「U」が選択された状態を示す。このプルダウンメニュで選択された文字列(K、I、K、U、C、H、I)に基づきプリンタドライバはプリントチケット2103を生成する。レンダリングモジュール304は、このプリントチケット2103に記憶された選択された文字の情報とアプリからの描画命令に従い、文書が印刷される際に、プリンタ2105のパネルに「KIKUCHI」と表示されるPDLを生成する。
また、もう一つの系では、印刷設定アプリ2104のエディットボックスにキーボードから入力された文字に基づき印刷設定アプリ2104がプリントチケット2103を生成する。このプリントチケット2103に記憶された選択された文字の情報とアプリからの描画命令に従い、レンダリングモジュール304が、文書が印刷される際に、プリンタ2105のパネルに「KIKUCHI」と表示されるPDLを生成する。
以下、各構成をウォーターマーク機能(スタンプ機能)の例を用いて詳細に説明する。
図8はGPDベースのプリンタドライバ300のUIにおいて「ウォーターマーク(1):」(1010)を選択した時のUI(選択画面)を示している。「ウォーターマーク(1):」(1010)の選択肢は図のように「NULL」(1011)、「SPACE」(1012)、「[0]」(1013)、などとなっており、ウォーターマークとして印字したい文字列の1文字目を設定可能になっている。図では「NULL」(1010)から「[5]」(1014)までの選択肢が表示されているが、実際はスクロールバーを操作することで「[0]」〜「[9]」、「[A]」〜「[Z]」が選択可能となっている。同様に「ウォーターマーク(2):」から「ウォーターマーク(5):」ではウォーターマークとして印字したい文字列の2文字目から5文字目を設定可能になっている。それぞれの選択肢は「ウォーターマーク(1):」(1010)と同じである。
図9は図8に示すプリンタドライバ300のGPDファイル301の一部2100を示している。ここではFeatureとしての「WatermarkString01」2110に対して、「NULL」2111、「SPACE」2112、「Char_0」2113から「Char_Z」2115までが記述されている。具体的にはFeatureには、特定機能の文字であることを示す情報と特定機能の文字列の何文字目かを示す情報が記述されている。Optionには文字を選択するための複数の文字の情報が記述されている。Feature「WatermarkString02」2120に示す2文字目以降も同様のOptionが記述されており、オペレーティングシステムはこのGPDファイル301を元に図8に示すプリンタドライバUI1000を生成する。
図10は図8に示すGPDベースのプリンタドライバ300から取得可能なPrintCapabilities(250,550)の一部2200を示している。Feature2210の記述の中にウォーターマークの1文字目に入力可能なプリンタドライバの能力が記述されている(Feature名は「ns0000:JobWatermarkString01」である)。Property2211はウォーターマークの1文字目が選択肢から1つを選ぶ形式であることを示している。Property2212はウォーターマークの1文字目をディスプレイに表示される時の名前が記述されている。この例においては「ウォーターマーク(1)」がディスプレイに表示される。Option2213からOption2217はそれぞれの印刷設定項目としての選択肢とディスプレイに表示される時の名前が記述されている。たとえばOption2215ではOptionの名前が「ns0000:Char_0」なのに対してディスプレイに示すときの名前は「[0]」となっている。Feature2220に示される二文字目以降も同様の記述となっている。
図11は図8に示すGPDベースのプリンタドライバ300においてユーザが文字列を入力し終わった時の様子を示している。ウォーターマークとして「COPY」という文字列を指定しており、一文字ずつ[C](1010)、[O](1020)、[P](1030)、[Y](1040)、NULL(1050)が指定されている。このように、GPDベースのプリンタドライバ300のUI1000では、ユーザは任意文字列の入力を行うためにわざわざ一文字ずつ入力しなければならない。
図12は図11に示すUIにおいて生成されるPrintTicket(260,560)の一部2300を示している。PrintTicet(260,560)には、図に示すようにFeatureごとに選択したOptionが示されている。ウォーターマークの1文字目を示すFeatureである「ns0000:JobWatermarkString01」2310で選択されたOptionは「ns0000:Char_C」2311であることがわかる。ウォーターマークの2文字目を示す「ns0000:JobWatermarkString02」以降も同様の記述となる。
このように生成されたPrintTicket(260,560)は、印刷時にはそのままPDLとともにプリンタ800に送信されて印刷時にプリンタ800によって処理される。または、プリンタドライバ300のレンダリングモジュール304によって加工がなされてからプリンタ800に送られる。前者のように、PrintTicket(260,560)をそのままプリンタ800に送信する場合、プリンタ800がPrintTicket(260,560)のFeatureを解釈する必要がある。すなわち、プリンタ800はFeature2310からFeature2350をウォーターマークの1文字目から5文字目として解釈する。そしてプリンタ800はそれらの文字を実際のウォーターマーク文字列として、PDLの描画の上に透かし文字として重ねて描画して印字する。一方、後者のように、プリンタドライバ300のレンダリングモジュール304が加工して送る場合は、プリンタ800はPrintTicket(260,560)を解釈する必要はない。この場合、レンダリングモジュール304がPrintTicket(260,560)のFeature(2310〜2350)をウォーターマーク文字列として解釈して、それぞれの文字をPDLの文字描画として置き換える。すなわちレンダリングモジュール304はアプリケーションからの描画に対してウォーターマークの文字描画を透かし文字として重ね合わせる形でPDLを生成する。このようにして生成されたPDLは、プリンタ800によって、アプリケーションからの描画とウォーターマークの描画とを区別することなくレンダリングされて印字される。
なお、どちらの場合もPrintTicket(260,560)におけるFeatureのOptionとしてNULL(例:2351)が指定されていた時には、ウォーターマーク文字列の終端として解釈する。
ここからは、本発明の実施形態である印刷設定アプリケーション500の動作について詳細に説明する。
図13は、図7で示した印刷設定アプリケーション500のUI501においてユーザによって「ウォーターマーク編集」ボタン504が押下された際に印刷設定アプリケーションが開くダイアログボックス1300を示している。ダイアログボックス1300にはウォーターマーク文字列をキーボードから簡単に入力させるためにエディットボックス形式1310での入力が可能となっている。また、本実施例ではウォーターマーク文字列は最大半角5文字であるため、その内容もダイアログ内に表示することで、ユーザに注意を促している。ユーザは入力デバイス109を用いてエディットボックス1310にフォーカスをあて、任意の文字列を入力することができる。ダイアログボックス1300には「OK」ボタン1380と「キャンセル」ボタン1390が用意されている。印刷設定アプリケーション500は、ユーザによって「OK」ボタン1380が押されるとエディットボックス1310に入力された任意文字列をPrintTicketに反映する。一方、「キャンセル」ボタン580が押されるとエディットボックス1310に入力された任意文字列を破棄する。
図14は、上述のように、印刷設定アプリケーション500がエディットボックス1310の文字列をPrintTicket560に反映させるフローを示している。
印刷設定アプリケーション500は始めにエディットボックス1310から入力文字列を取得する(S201)。次に取得した入力文字列の文字数と該当する設定項目におけるFeatureの数を比較する(S202)。本実施例におけるFeature数はPrintCapabilities550に記載されているウォーターマーク文字列のためのFeature数を指している。具体的には「ns0000:JobWatermarkString01」(2210)から「ns0000:JobWatermarkString05」(不図示)までの5つが該当するFeature数となる。ここで、入力文字列の文字数がFeature数より多い時は、印刷設定アプリケーション500はエラー表示を出して(S208)PrintTicketの生成処理を行わない。少ない時は、印刷設定アプリケーション500は入力文字列から1文字分を取り出す(S203)。そして取り出した文字に該当するOptionがPrintCapabilities550に存在するかどうかを確認する(S204)。具体的には最初の文字が「C」であるため、該当するOptionである「ns0000:Char_C」がPrintCapabilities550に存在するかどうかを確認する。なお、入力文字に対応するOptionは、印刷設定アプリケーションが別途保持している不図示の対応テーブルに記載されている。該当するOptionが存在しない場合には、印刷設定アプリケーション500はエラー表示を出して(S208)PrintTicketの生成処理を行わない。図16のメッセージボックス1500はその時に印刷設定アプリケーション500が表示するUIを示している。存在する場合には、印刷設定アプリケーション500は次に該当する1文字分のFeatureに対して、取り出した文字に該当するOptionを指定してPrintTicket560を生成する。具体的には、図12のPrintTicket560において「ns0000:Char_C」をOption(2311)として記述したFeature「ns0000:JobWatermarkString01」(2310)を生成する(S205)。次に印刷設定アプリケーション500は入力されたすべての文字に対してS203からS205を繰り返す(S206)。すべて繰り返したら最後に、印刷設定アプリケーション500は、残りの文字のFeatureに対して、Option「ns0000:NULL」(2351)を指定してPrintTicket560を生成する。以上のフローにより、エディットボックス1310の入力文字列をすべてPrintTicket560に反映することができる。これによって、ユーザは本実施例の印刷設定アプリケーション500を使用することで、GPDベースのプリンタドライバ300のUI1000を使用して1文字ずつ選択するのに比べてはるかに簡単に任意文字列を指定することが可能となる。
図15は、図14とは逆に、印刷設定アプリケーション500がPrintTicket560の情報をエディットボックス1310に文字列として反映させるフローを示している。このフローは、印刷設定アプリケーション500がUI(501,1300)を表示する際に、プリンタドライバ300から取得したPrintTicket560を元に行うものである。
まず、印刷設定アプリケーションは表示させようとしている印刷設定に該当するFeatureをPrintTicket560から取得する。具体的には図12に示す「ns0000:JobWatermarkString01」(2310)を取得する(S211)。次に印刷設定アプリケーション560はそのFeatureのOptionに該当する文字をバッファである文字列Aに追加する(S212)。具体的には図12に示す「ns0000:Char_C」(2311)を元に、対応する文字「C」を文字列Aに追加する。Optionに対応する文字は前述の対応テーブルを使用して決定する。次に印刷設定アプリケーション500は次のFeatureとそのOptionを確認する(S213)。続けて、次のFeatureが次の印刷設定を指すまで、または、Optionが「ns0000:NULL」になるまで、S212とS213の処理を繰り返す(S214)。このようにして、繰り返した数だけ文字列Aに文字が入ることになる。最後に、生成された文字列Aをエディットボックス1310に入力して表示する(S215)。以上のフローにより、PrintTicket560の情報をエディットボックス1310に反映することができる。
図16のメッセージボックス1500はS204において該当するOptionが存在しない時に印刷設定アプリケーション500が表示するUIを示している。印刷設定アプリケーション500は「OK」ボタン1590が押下されるとメッセージボックス1500を閉じて、再び任意文字列の入力が可能な状態になる。
以上、図1から図16を用いて本発明を実施するための最良の形態について述べた。なお、ここで示したGPDファイルやPrintTicket、PrintCapabilitisなどは説明のための一例であり、本発明の実施のためにはフォーマットが異なっていても構わない。GPDベースのプリンタドライバUI1000におけるツリー表示や印刷設定アプリケーションのUI501も一例に過ぎず、異なる形式で表示されるUIであっても問題なく実施することが可能である。
[実施例2]
実施例1においては1つの文字を1つのFeatureに割り当てた例を示したが、このままで日本語などの複数バイト文字の入力に適応することができない。なぜなら、Featureに対するOptionの数に制限があるためである。
図17は、上記の課題を解決するために1つの文字に対応する文字コードの数値を4つのFeatureに割り当てた場合のプリンタドライバ300のUIを示している。すなわち、1つの文字をUTF−16の16ビットで表現し、4ビットごとにFeatureを割り当てた例である。図において「ウォーターマーク(1) 1st」、「ウォーターマーク(1) 2nd」、「ウォーターマーク(1) 3rd」、「ウォーターマーク(1) 4th」の4つのFeatureがウォーターマークの1文字目を表している。それぞれにユーザが指定可能なOptionは「0」から「f」の8進数であり、4つの8進数が1文字目の文字を示している。どのように割り当てるかを示したのが図18と図19である。
図18は、プリンタドライバ300の構成が図17に示す構成になっていた場合に、本発明を実施した時の印刷設定アプリケーション500が表示するUIを示している。具体的には実施例1と同じ図7に示す印刷設定アプリケーション500のUIにおける「ウォーターマーク編集」ボタン504が押された時に印刷設定アプリケーション500が表示するダイアログボックス1400を示している。図に示すようにエディットボックス1410に対して日本語の全角入力が可能になっており、ユーザは容易に全角の任意文字列を入力することができる。
図19は、図18に示す印刷設定アプリケーション500における「マル秘」という文字列がPrintTicketに反映された時の、各Featureに対するOptionを示した図である。
一文字目の「マ」はUTF−16で示すと、16進で「30de」となる。これを「ウォーターマーク(1) 1st」に[3]、「ウォーターマーク(1) 2nd」に[0]、「ウォーターマーク(1) 3rd」に[d]、「ウォーターマーク(1) 4th」に[e]として割り当てている。このようにして1文字を4つのFeatureに割り当てることで日本語などの複数バイトの文字の時も、ユーザは印刷設定アプリケーション500を用いて簡単に入力することが可能となる。なお、1文字を複数バイトで示した時の印刷設定アプリケーション500が行う基本的なフローは実施例1のものと変わらないため、ここでの説明は割愛する。
以上、本発明を実施するための形態についてGPDベースのプリンタドライバを例として説明を行った。しかし、本発明はGPDベースのプリンタドライバに限って実施が可能なものではない。GPDと同様のフォーマットを持つPPD(PostScript Printer Description)を用いたプリンタドライバでも同様に実施することが可能である。また、ユーザに入力させる任意文字列として、ウォーターマークを例に説明を行ってきたが、ウォーターマーク以外にも同様に実施することができる。例えば、スタンプ、ユーザ名、パスワード、ヘッダーフッターとして印字する文字列、プリンタ800のパネルに表示させる文字列、プリンタ800のHDDに印刷データを保存する際の保存名称など、様々な任意文字列に対して適応することができる。
なお、本発明の実施形態においては、GPDファイルを例に説明したが、図20に示すPPDファイルを使った印刷システムにも適用できる。
100 コンピュータ
300 プリンタドライバ
301 GPDファイル
400 オペレーティングシステム
500 印刷設定アプリケーション
550 PrintCapabilities
560 PrintTicket
800 プリンタ

Claims (9)

  1. 入力された文字列から文字を1文字ずつ取得する取得手段と、
    前記取得手段により取得された文字を印刷機能の印刷設定値として記述したプリントチケットを生成する生成手段と、
    特定機能のための文字列の文字ごとに複数の文字から1文字を選択する選択画面を含むプリンタドライバの印刷設定画面を表示する設定表示手段とを有し、
    前記プリンタドライバは前記生成手段により生成されたプリントチケットとアプリケーションから描画命令に基づく印刷データ生成ることを特徴とする情報処理装置。
  2. 前記印刷設定値に文字を選択するための複数の文字の情報を含むファイルを読み出す読み出し手段と、を有することを特徴とする請求項1に記載の情報処理装置。
  3. 印刷設定アプリケーションにより入力される文字の数が前記印刷設定を記述する領域に記述される特定機能の情報の数より多い場合、エラー表示を行うエラー表示手段と、を有することを特徴とする請求項1又は請求項2に記載の情報処理装置。
  4. 前記ファイルはGPDファイルであり、前記印刷機能はFeatureであり、前記印刷設定値はOptionであることを特徴とする請求項2に記載の情報処理装置。
  5. コンピュータに、
    入力された文字列から文字を1文字ずつ取得する取得工程と、
    前記取得工程により取得された文字を印刷機能の印刷設定値として記述したプリントチケットを生成する生成工程と、
    特定機能のための文字列の文字ごとに複数の文字から1文字を選択する選択画面を含むプリンタドライバの印刷設定画面を表示する設定表示工程とを実行させ、
    前記プリンタドライバは前記生成工程により生成されたプリントチケットとアプリケーションからの描画命令に基づく印刷データを生成することを特徴とするプログラム。
  6. 前記コンピュータに、
    前記印刷設定値に文字を選択するための複数の文字の情報を含むファイルを読み出す読み出し工程と、を実行させることを特徴とする請求項5に記載のプログラム。
  7. 前記コンピュータに、
    印刷設定アプリケーションにより入力される文字の数が前記印刷設定を記述する領域に記述される特定機能の情報の数より多い場合、エラー表示を行うエラー表示工程と、を実行させることを特徴とする請求項5又は請求項6に記載のプログラム。
  8. 前記ファイルはGPDファイルであり、前記印刷機能はFeatureであり、前記印刷設定値はOptionであることを特徴とする請求項6に記載のプログラム。
  9. 入力された文字列から文字を1文字ずつ取得する取得工程と、
    前記取得工程により取得された文字を印刷機能の印刷設定値として記述したプリントチケットを生成する生成工程と、
    特定機能のための文字列の文字ごとに複数の文字から1文字を選択する選択画面を含むプリンタドライバの印刷設定画面を表示する設定表示工程とを有し、
    前記プリンタドライバは前記生成工程により生成されたプリントチケットとアプリケーションからの描画命令に基づく印刷データを生成することを特徴とする制御方法。
JP2011196143A 2011-09-08 2011-09-08 情報処理装置、情報処理方法、及びプログラム Expired - Fee Related JP5924892B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2011196143A JP5924892B2 (ja) 2011-09-08 2011-09-08 情報処理装置、情報処理方法、及びプログラム
US13/602,595 US9223524B2 (en) 2011-09-08 2012-09-04 Information processing apparatus, information processing method, and recording medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2011196143A JP5924892B2 (ja) 2011-09-08 2011-09-08 情報処理装置、情報処理方法、及びプログラム

Publications (3)

Publication Number Publication Date
JP2013058090A JP2013058090A (ja) 2013-03-28
JP2013058090A5 JP2013058090A5 (ja) 2014-10-23
JP5924892B2 true JP5924892B2 (ja) 2016-05-25

Family

ID=47829601

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011196143A Expired - Fee Related JP5924892B2 (ja) 2011-09-08 2011-09-08 情報処理装置、情報処理方法、及びプログラム

Country Status (2)

Country Link
US (1) US9223524B2 (ja)
JP (1) JP5924892B2 (ja)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5729652B2 (ja) * 2013-03-29 2015-06-03 コニカミノルタ株式会社 プリンタドライバ及びプリンタドライバのローカライズ方法
JP6351405B2 (ja) * 2013-12-16 2018-07-04 キヤノン株式会社 情報処理装置、情報処理装置の制御方法、及びプログラム
JP2015170164A (ja) * 2014-03-07 2015-09-28 京セラドキュメントソリューションズ株式会社 画像形成システム、設定画面操作方法
JP6557594B2 (ja) * 2015-12-24 2019-08-07 キヤノン株式会社 インストールを制御するプログラム、情報処理装置およびデバイスドライバーのインストール方法
JP7341647B2 (ja) * 2018-10-05 2023-09-11 キヤノン株式会社 情報処理装置、制御方法及びプログラム
JP7172672B2 (ja) * 2019-02-01 2022-11-16 ブラザー工業株式会社 アプリケーションプログラム、情報処理装置、および印刷方法
JP7172667B2 (ja) 2019-02-01 2022-11-16 ブラザー工業株式会社 サポートプログラム、情報処理装置、および印刷方法
JP7172800B2 (ja) 2019-03-28 2022-11-16 ブラザー工業株式会社 サポートプログラム、情報処理装置、および印刷方法
JP6961746B2 (ja) * 2019-10-08 2021-11-05 キヤノン株式会社 印刷設定画面を表示する機能を持つアプリケーション、及び、情報処理装置
JP2022114316A (ja) * 2021-01-26 2022-08-05 ブラザー工業株式会社 サポートプログラム

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4465654B2 (ja) * 2004-09-10 2010-05-19 富士ゼロックス株式会社 画像辞書作成装置、符号化装置、符号化方法及びそのプログラム
US8239883B2 (en) * 2005-03-29 2012-08-07 Canon Kabushiki Kaisha Information processing apparatus and method, program, and storage medium
JP2007172201A (ja) 2005-12-21 2007-07-05 Seiko Epson Corp 印刷制御装置、プログラム、及び記録媒体
JP2008078801A (ja) * 2006-09-19 2008-04-03 Ricoh Co Ltd 画像処理方法
US7710590B2 (en) * 2006-09-26 2010-05-04 Xerox Corporation Automatic maintenance of page attribute information in a workflow system
US20090279125A1 (en) * 2008-05-09 2009-11-12 Yue Liu Methods and structure for generating jdf using a printer definition file
US20100321715A1 (en) * 2009-06-22 2010-12-23 Williams David A Methods and structure for preserving node order when storing xml data in a key-value data structure
JP5621336B2 (ja) * 2009-09-14 2014-11-12 株式会社リコー 情報処理装置、および印刷制御プログラム
JP2013020585A (ja) * 2011-07-14 2013-01-31 Sharp Corp 装置制御プログラム、記録媒体、装置制御方法および制御装置

Also Published As

Publication number Publication date
US9223524B2 (en) 2015-12-29
US20130063742A1 (en) 2013-03-14
JP2013058090A (ja) 2013-03-28

Similar Documents

Publication Publication Date Title
JP5924892B2 (ja) 情報処理装置、情報処理方法、及びプログラム
US9355046B2 (en) Information processing apparatus, information processing method, and computer-readable medium
US8537438B2 (en) Information processing apparatus in which a plurality of types of print drivers and plurality of graphics units run, control method therefor, and program
JP5825565B2 (ja) プリンタドライバ及びプリンタドライバの印刷機能の追加方法
JP5072676B2 (ja) 情報処理装置、情報処理方法及び印刷システム
CN112352218A (zh) 信息处理装置、控制方法及程序
JP5704834B2 (ja) 情報処理装置および制御方法およびプログラム
JP5882623B2 (ja) 情報処理装置、制御方法、プログラム
US20180253561A1 (en) Information processing apparatus, storage medium, and control method therefor
JP5070101B2 (ja) 情報処理装置及びその制御方法、プリンタドライバプログラム
JP2017097710A (ja) 情報処理装置及びその制御方法とプログラム
JP2007041808A (ja) 印刷履歴表示プログラム
JP4783225B2 (ja) 印刷制御プログラム及び情報処理装置
JP6234417B2 (ja) 情報処理装置及びその制御方法とプログラム
JP2009020553A (ja) 電子ファイル管理装置および電子ファイル管理プログラム
JP6437076B2 (ja) 情報処理装置及びその制御方法とプログラム
JP2007256991A (ja) データ処理装置、プログラム、コンピュータ読み取り可能な記録媒体
JP2015176231A (ja) 情報処理装置、情報処理方法及び情報処理システム
JP7271208B2 (ja) プログラム、および情報処理装置
JP2014056424A (ja) 印刷制御装置、印刷制御方法及び印刷制御システム
JP2012142859A (ja) 印刷プログラム、情報処理装置および記録媒体
JP6188402B2 (ja) 情報処理装置、情報処理装置の制御方法およびコンピュータプログラム
US20120327445A1 (en) Information processing apparatus, information processing method and storage medium
JP2016038691A (ja) 印刷データ送信装置、プログラム、印刷データ生成方法
JP2015045976A (ja) 印刷制御プログラム、情報処理装置及び印刷システム

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140908

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20140908

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20150722

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20150818

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20151019

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20160419

R151 Written notification of patent or utility model registration

Ref document number: 5924892

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

LAPS Cancellation because of no payment of annual fees