JP5729652B2 - プリンタドライバ及びプリンタドライバのローカライズ方法 - Google Patents

プリンタドライバ及びプリンタドライバのローカライズ方法 Download PDF

Info

Publication number
JP5729652B2
JP5729652B2 JP2013072109A JP2013072109A JP5729652B2 JP 5729652 B2 JP5729652 B2 JP 5729652B2 JP 2013072109 A JP2013072109 A JP 2013072109A JP 2013072109 A JP2013072109 A JP 2013072109A JP 5729652 B2 JP5729652 B2 JP 5729652B2
Authority
JP
Japan
Prior art keywords
function
print
printer driver
character string
dummy
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
JP2013072109A
Other languages
English (en)
Other versions
JP2014197281A (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.)
Konica Minolta Inc
Original Assignee
Konica Minolta 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 Konica Minolta Inc filed Critical Konica Minolta Inc
Priority to JP2013072109A priority Critical patent/JP5729652B2/ja
Priority to US14/227,177 priority patent/US20140293345A1/en
Priority to CN201410117491.8A priority patent/CN104077087B/zh
Publication of JP2014197281A publication Critical patent/JP2014197281A/ja
Application granted granted Critical
Publication of JP5729652B2 publication Critical patent/JP5729652B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/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/1256User feedback, e.g. print preview, test print, proofing, pre-flight checks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces
    • G06F9/454Multi-language systems; Localisation; Internationalisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44505Configuring for program initiating, e.g. using registry, configuration files

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)
  • User Interface Of Digital Computer (AREA)

Description

本発明は、プリンタドライバ及びプリンタドライバのローカライズ方法に関し、特に、Windows(登録商標、以下省略)のオペレーティングシステム(OS:Operating System)上で動作するVersion4のプリンタドライバ及び当該プリンタドライバのローカライズ方法に関する。
WindowsOS上で動作するプリンタドライバに関して、Microsoft(登録商標、以下省略)社からハードウェアメーカー向けのガイドラインが示されており、ハードウェアメーカーでは、このガイドラインに従って、Windows2000〜Windows7を想定したVersion3のプリンタドライバを提供している。
その後、WindowsOSとしてWindows8やServer2012が登場しており、特にWindows8では、UI(User Interface)がタイル状のユーザーインタフェースであるMetroスタイルに変更されたことから、ハードウェアメーカーでは、新しいプリンタドライバアーキテクチャを採用したVersion4のプリンタドライバの開発を進めている。
このVersion4のプリンタドライバモデルは、大別するとPrinter Driver部と印刷設定UI(User Interface)部の2つのレイヤーで構成される。これら2つのレイヤーはプロセス分離が図られており、個別に提供することができるようになっている。
Printer Driver部は、印刷機能を提供するアプリケーションであり、各印刷機能を定義するGPD(Generic Printer Description)/PPD(PostScript Printer Description)、XML(Extensible Markup Language)などのデータファイル、各印刷機能の複数言語の表示文字列を定義するローカライズリソースDLL(Dynamic Link Library)、レンダリング時に描画命令の編集を行う印刷フィルタ、印刷機能の設定の競合を処理する禁則JavaScript(登録商標、以下省略)部などのモジュールから構成されている。
また、印刷設定UI部は、Printer Driver部から独立したアプリケーションであり、Printer Driver部から提供されるPrintCapabilitiesと呼ばれる印刷機能情報と、PrintTicketと呼ばれる印刷設定情報とを元にして印刷設定画面の提供を行う。PrintCapabilitiesはXML形式で記述されており、各印刷機能の定義が行われている。具体的には、PrintCapabilitiesは、単一選択の機能(複数の選択肢の中から1つを選択する機能)の場合には、Feature(機能)、Option(選択肢)、機能や選択肢の表示文字列が記述され、文字列入力を行う機能の場合には、Parameter、最大文字数や最小文字数などの属性、パラメータ名の表示文字列などが記述される。
このようなVersion4のプリンタドライバモデルに関する技術として、例えば、下記特許文献1には、外部装置と通信ネットワークを介して接続される情報処理装置であって、他の情報処理装置から、当該他の情報処理装置に設定されている表示プログラムの表示形式を示す情報とステータスの種別を示す情報とがともに指定された要求を受信する受信手段と、前記要求に含まれるステータスの種別を示す情報に基づき、当該種別に対応するステータスの値を前記外部装置から取得するステータス取得手段と、前記要求に含まれる表示プログラムの表示形式を示す情報に対応するリソース情報を取得するリソース取得手段と、前記受信手段で受信した要求の応答として、前記リソース取得手段により取得されたリソース情報と前記種別に対応するステータスの値とに従うステータス情報を、前記他の情報処理装置に対して送信する送信手段とを有する情報処理装置が開示されている。
特開2011−023019号公報
ここで、印刷設定UI部で表示する表示文字列については、GPD/PPDファイルにて印刷機能を定義する際に、ローカライズリソースDLL内のリソースIDを指定することによって、PrintCapabilitiesに自動的に表示文字列が反映されるという仕組みが設けられている。しかしながら、GPD/PPDファイルで定義可能な機能は単一選択の機能のみという仕様上の制約があるため、文字列入力を行う機能を定義する場合には、禁則JavaScript部の内部でPrintCapabilitiesに情報を追加する必要がある。その際、禁則JavaScript部においては、ローカライズリソースDLLから表示文字列を取得することができないため、文字列入力を行う機能に対して表示文字列をPrintCapabilitiesに設定することができない。
この問題に対して、禁則JavaScript部の内部にて、ハードコードで表示文字列をPrintCapabilitiesに設定する方法も考えられる。しかしながら、リソースIDによって指定された表示文字列(GPD/PPDファイルで定義した機能(単一選択の機能)についての表示文字列)はOS言語に応じて自動で言語の切り替えが行われるのに対して、ハードコードで設定した表示文字列(禁則JavaScript部で追加した機能(文字列入力を行う機能)についての表示文字列)は言語の切り替えが行われないため、OS言語が変わった場合に、GPD/PPDファイルで定義した機能と禁則JavaScript部で追加した機能とで表示文字列に言語の不一致が生じる。
また、上記問題を解決する別の方法として、印刷設定UI部のアプリケーション内部に表示文字列を持たせる方法も考えられる。しかしながら、この方法では、表示文字列をPrinter Driver部と印刷設定UI部の複数個所に分離して保持することになるため、双方が保持する表示文字列を関連付けるなどの管理上の手間が発生する。
本発明は、上記問題点に鑑みてなされたものであって、その主たる目的は、表示文字列の言語の不一致を防止し、表示文字列を集約して管理しつつ、任意の機能に対して文字列を表示させることができるプリンタドライバ及びプリンタドライバのローカライズ方法を提供することにある。
本発明の一側面は、印刷機能を設定可能にする印刷設定画面を表示する表示部を備えるコンピュータ装置で動作するプリンタドライバであって、前記コンピュータ装置を、前記印刷機能が定義された構成ファイルと前記印刷機能に関する文字列が定義されたローカライズリソースファイルとを用いて、前記印刷機能の設定項目と当該設定項目で設定可能な設定値とが記述された印刷機能情報を生成する構成処理部、前記印刷機能情報における前記印刷機能の設定の競合を処理する禁則JavaScript部、前記禁則JavaScript部で処理した前記印刷機能情報に基づいて、前記印刷設定画面を生成する印刷設定UI部、として機能させ、前記構成処理部は、前記印刷機能に影響しないダミーの機能が更に定義され、かつ、前記ダミーの機能の定義に、前記ローカライズリソースファイルで定義される文字列が指定された前記構成ファイルと前記ローカライズリソースファイルとを用いて、前記ダミーの機能で指定した文字列が記述された前記印刷機能情報を生成し、前記禁則JavaScript部は、前記印刷機能情報に、前記構成ファイルでは定義できない機能を追加し、前記追加した機能に、前記ダミーの機能で指定した文字列を反映させ、前記印刷設定UI部は、前記追加された機能に対応付けて、前記ダミーの機能で指定した文字列が表示される前記印刷設定画面を生成することを特徴とする。
本発明の一側面は、印刷機能を設定可能にする印刷設定画面を生成するプリンタドライバのローカライズ方法であって、前記印刷機能が定義される構成ファイルに、前記印刷機能に影響しないダミーの機能を定義すると共に、前記ダミーの機能の定義に、前記印刷機能に関する文字列が定義されるローカライズリソースファイルによって管理される文字列を指定する第1ステップと、前記構成ファイルと前記ローカライズリソースファイルとを用いて、前記印刷機能の設定項目と当該設定項目で設定可能な設定値とが記述される印刷機能情報を生成する第2ステップと、前記印刷機能情報における前記印刷機能の設定の競合を処理する際に、前記印刷機能情報に、前記構成ファイルでは定義できない機能を追加すると共に、前記追加した機能に、前記ダミーの機能で指定した文字列を反映させる第3ステップと、前記印刷機能情報に基づいて、前記追加された機能に対応付けて、前記ダミーの機能で指定した文字列が表示される前記印刷設定画面を生成する第4ステップと、を実行することを特徴とする。
本発明のプリンタドライバ及びプリンタドライバのローカライズ方法によれば、表示文字列の言語の不一致を防止し、表示文字列を集約して管理しつつ、任意の機能に対して文字列を表示させることができる。
その理由は、GPDファイルなどの構成ファイルとローカライズリソースファイル(ローカライズリソースDLL)とを用いて、印刷機能の設定画面を生成する際に、構成ファイルに印刷機能に影響しないダミーの機能を定義すると共に、ダミーの機能に、ローカライズリソースファイルで管理される文字列を定義し、ダミーの機能が定義された構成ファイルとローカライズリソースファイルとを用いて、印刷機能情報(PrintCapabilities)を生成した後、JavaScriptを用いて、印刷機能情報に機能を追加(好ましくは、構成ファイルでは定義できない機能を追加)すると共に、追加した機能に、ダミーの機能で定義した文字列を反映させる編集を行い、編集された印刷機能情報に基づいて、設定画面を生成する処理を実行するからである。
これにより、構成ファイルで定義できない機能であっても、構成ファイルで定義できる機能と同様に、ローカライズリソースDLLで管理される文字列を設定画面に表示させることができる。
本発明の一実施例に係る印刷システムの構成を模式的に示す図である。 本発明の一実施例に係るコンピュータ装置の構成を示すブロック図である。 本発明の一実施例に係るコンピュータ装置の機能を示すブロック図である。 本発明の一実施例に係るGPDファイルの一例である。 本発明の一実施例に係るローカライズリソースDLLの一例である。 本発明の一実施例に係る禁則JavaScript部が実行する処理を記述した構文の一例である。 本発明の一実施例に係るPrintCapabilitiesの一例(禁則JavaScript部で編集する前の例)である。 本発明の一実施例に係るPrintCapabilitiesの一例(禁則JavaScript部で編集した後の例)である。 本発明の一実施例に係る印刷設定UI部によって表示される印刷設定画面の一例である。 本発明の一実施例に係るコンピュータ装置の機能間のデータの流れを示す図である。 本発明の一実施例に係るコンピュータ装置の処理(印刷設定画面を表示する処理)を示すフローチャート図である。 本発明の一実施例に係るコンピュータ装置の処理(禁則JavaScript部でPrintCapabilitiesを編集する処理)を示すフローチャート図である。
背景技術で示したように、ハードウェアメーカーにより、WindowsOSに応じたプリンタドライバが提供されており、新たなWindowsOSであるWindows8やServer2012向けに、Version4のプリンタドライバの開発が行われている。
このVersion4のプリンタドライバは、Printer Driver部と印刷設定UI部の2つのレイヤーから構成されており、Printer Driver部は、GPD/PPDなどのデータファイル、ローカライズリソースDLL、印刷フィルタ、禁則JavaScript部などのモジュールを備え、PrintCapabilitiesやPrintTicketを印刷設定UI部に提供し、印刷設定UI部ではこれらの情報を元にして印刷設定画面の提供を行う。
ここで、仕様上、GPD/PPDファイルで定義できる機能(単一選択の機能)に関しては、文字列に対応付けられたリソースIDを指定することによって、GPD/PPDファイルからPrintCapabilitiesを生成する際に、リソースIDに応じた文字列が自動的に組み込まれるため、印刷設定UI部は、PrintCapabilitiesに従って印刷設定画面を生成すれば、印刷設定画面上にローカライズリソースDLLで管理された文字列を表示することができる。
また、仕様上、GPD/PPDファイルで定義できない機能(文字列入力を行う機能)に関しては、その機能だけを実現するのであれば、GPD/PPDファイルから生成したPrintCapabilitiesを禁則JavaScript部で編集して、その機能を追加すればよい。また、その機能に対して表示する文字列に関しても、禁則JavaScript部の内部にてハードコードで設定することはできる。
しかしながら、ハードコードで設定した表示文字列は、リソースIDで指定した表示文字列のように、OS言語に合わせて言語の切り替えが自動的に行われないため、OS言語が変わると表示文字列の言語に不一致が生じる。また、印刷設定UI部のアプリケーション内部に表示文字列を持たせる方法もあるが、この方法では、表示文字列をPrinter Driver部と印刷設定UI部の双方で保持することになるため、双方の表示文字列を関連付ける等の管理上の手間が発生する。
ここで、Windows2000〜Windows7を想定したVersion3のプリンタドライバでは、Printer Driver部と印刷設定UI部とがセットになっており、PrintCapabilitiesを生成する部分や印刷設定UI部はローカライズリソースDLLに直接アクセスして表示文字列を読み込むことが可能であった。そのため、仕様上、GPD/PPDファイルで定義できない機能であっても、PrintCapabilitiesを編集する時、若しくは、PrintCapabilitiesから印刷設定画面を生成する時に、ローカライズリソースDLLを参照して表示文字列を反映させることができる。
すなわち、上記問題は、Printer Driver部と印刷設定UI部が別のレイヤーとして構成され、禁則JavaScript部がローカライズリソースDLLにアクセスできないといった仕様上の制限があるVersion4のプリンタドライバモデルにおいて新たに生じる問題であり、このようなVersion4のプリンタドライバの開発に当たって、上記問題を解決する手法が求められている。
そこで、本発明の一実施の形態では、仕様上、GPD/PPDファイルなどの構成ファイルで定義できない機能に関して、まず、ローカライズリソースDLLに表示文字列を登録する。GPD/PPDファイルでは、仕様上、定義可能な単一選択の機能としてダミーの機能を定義し、そのダミーの機能の定義においてリソースIDを指定して表示文字列をPrintCapabilitiesに反映させる。その際、このダミーの機能は印刷設定画面に表示しないという属性を付与する。すなわち、このダミーの機能は、形式上はGPD/PPDファイルで定義できる機能と同様に記述するが、印刷設定画面には表示されないように指定する。すると、GPD/PPDファイルからPrintCapabilitiesを生成する際に、PrintCapabilitiesの中に、リソースIDに対応する表示文字列が記述される。その後、PrintCapabilitiesを禁則JavaScript部で編集する際に、追加する機能を定義し、追加する機能に、ダミーの機能に対して記述された表示文字列を対応付ける。
これにより、仕様上、GPD/PPDファイルで定義できない機能(例えば、ユーザIDやパスワードの設定のような文字列入力を行う機能)に関しても、リソースIDで指定された表示文字列を印刷設定画面に表示することができ、仕様上、GPD/PPDファイルで定義できる機能と同様に、OS言語に合わせて言語の切り替えを自動的に行うことが可能となり、また、表示文字列の定義をローカライズリソースDLLに集約することが可能となり、Version4のプリンタドライバモデルで生じる問題を解決することができる。
上記した本発明の実施の形態についてさらに詳細に説明すべく、本発明の一実施例に係るプリンタドライバ及びプリンタドライバのローカライズ方法について、図1乃至図12を参照して説明する。図1は、本実施例の印刷システムの構成を模式的に示す図であり、図2は、本実施例のコンピュータ装置の構成を示すブロック図、図3は、コンピュータ装置の機能を示すブロック図である。また、図4は、GPDファイルの一例、図5は、リソースDLLの一例であり、図6は、禁則JavaScript部が実行する処理を記述した構文の一例である。また、図7及び図8は、PrintCapabilitiesの一例であり、図9は、印刷設定画面の一例である。また、図10は、本実施例のコンピュータ装置の機能間のデータの流れを示す図であり、図11及び図12は、本実施例のコンピュータ装置の処理を示すフローチャート図である。
図1に示すように、本実施例の印刷システムは、印刷指示に従って印刷処理を実行する印刷装置10と、印刷指示を行う印刷指示装置(コンピュータ装置20と呼ぶ。)とで構成され、これらはLAN(Local Area Network)などの無線ネットワーク、若しくはUSB(Universal Serial Bus)などを介した有線ネットワークにより接続される。
印刷装置10は、一般的なプリンタやMFP(Multi Function Peripheral)などであり、コンピュータ装置20から送信される印刷データを解析し、印刷データの各ページをラスタライズしてページ毎の画像データを生成し、電子写真方式や静電記録方式等の作像プロセスを利用して画像データに基づく画像を用紙に印刷する機能を備えている。
また、コンピュータ装置20は、パーソナルコンピュータやWindowsOS上で動作するモバイル機器(スマートフォンやタブレット端末)などであり、図2に示すように、制御部21と、記憶部22と、通信I/F部23と、表示部24と、操作部25などで構成される。
制御部21は、CPU(Central Processing Unit)21aと、ROM(Read Only Memory)21bやRAM(Random Access Memory)21cなどのメモリとで構成される。CPU21aは、コンピュータ装置20の動作を制御するためのプログラム、OS(本実施例では、Version4のプリンタドライバが動作可能なWindowsOS)、アプリケーション、印刷装置10を制御するプリンタドライバ(本実施例では、Printer Driver部と印刷設定UI部とが別レイヤーで構成されるVersion4のプリンタドライバ)をROM21b又は記憶部22から読み出してRAM21cに展開し実行する。なお、アプリケーション、Printer Driver部、印刷設定UI部については後述する。
記憶部22は、HDD(Hard Disk Drive)などで構成され、プログラムや文書データ、印刷データなどを記憶する。
通信I/F部23は、NIC(Network Interface Card)やモデムなどで構成され、無線ネットワーク、若しくは、有線ネットワークを介して、印刷装置10とのデータ通信を行う。
表示部24は、LCD(Liquid Crystal Display)などで構成され、アプリケーションの画面や印刷設定UI部で生成された画面などを表示する。
操作部25は、マウスやキーボード、表示部24上に形成されたタッチセンサなどで構成され、文書の作成や印刷装置10の印刷機能の設定等の操作を可能にする。
図3は、コンピュータ装置20の制御部21の機能を示すブロック図である。コンピュータ装置20の制御部21は、アプリケーション30、Printer Driver部40、印刷設定UI部50などとして機能する。
アプリケーション30は、OS上で動作するプログラム(例えば、WindowsOS上で動作するMicrosoft Officeなど)であり、印刷対象となる文書データを作成する。
Printer Driver部40は、OS上で動作するプログラムであり、アプリケーション30、印刷設定UI部50と連動して、印刷装置10に印刷指示を行う。このPrinter Driver部40は、GPDファイル41、ローカライズリソースDLL42、構成処理部43、禁則JavaScript部44、レンダリング処理部45、印刷フィルタ46などで構成される。
GPDファイル41は、構成ファイルの一つであり、印刷装置10の各印刷機能を定義する。ローカライズリソースDLL42は、プリンタドライバをローカライズするための情報を提供するリソースファイルであり、印刷設定UI部50に表示する各印刷機能の表示文字列を定義する。構成処理部43は、GPDファイル41及びローカライズリソースDLL42を元に、XML形式にてユーザが設定可能な印刷機能の設定項目と設定可能な設定値とが記述されたPrintCapabilities(印刷機能情報)の生成、PrintCapabilitiesに記述されている設定値の中からユーザが選択した設定値を記述したPrintTicket(印刷設定情報)の生成、及び禁則JavaScript部44の呼び出しを行う。
禁則JavaScript部44は、PrintCapabilitiesに対して、印刷機能の設定の競合を処理する。例えば、第1の機能(面付け機能など)の設定と第2の機能(パンチの機能など)の設定とが両立しない場合に、一方の機能の設定を他方の機能の設定と両立するように変更する。また、禁則JavaScript部44は、JavaScriptを用いたPrintCapabilitiesの編集を可能にする。レンダリング処理部45は、アプリケーション30からの印刷命令を印刷装置10にて解釈可能な言語(PDL:Page Description Languageなど)に変換する。印刷フィルタ46は、レンダリング時に描画命令の編集を行う。
印刷設定UI部50は、OS上で動作するプログラムであり、PT/PC処理部51、UI処理部52などで構成される。
PT/PC処理部51は、Printer Driver部40から取得したPrintTicket/PrintCapabilitiesを処理(解釈)する。UI処理部52は、PT/PC処理部51が解釈した、PrintTicket/PrintCapabilitiesの内容を元に印刷設定画面60の生成及び表示を行う。
なお、本実施例では、印刷機能を定義する構成ファイルとしてGPDファイル41を使用する場合について説明するが、PPDファイルを使用する場合についても、本実施例のローカライズ方法を同様に適用することができる。
以下、構成処理部43が生成するPrintCapabilitiesにどのように表示文字列を定義するかについて、データの具体的な記述例を参照して説明する。
図4は、GPDファイル41の一例である。図中の「*Feature:」にて、印刷機能の定義を行う。また、「*Feature:」の下位要素の「*Option:」にて、各印刷機能の設定値の定義を行う。また、「*rcNameID:」にて、ローカライズリソースDLL42に定義されている表示文字列を取得するための識別子の定義(リソースIDの指定)を行う。
本実施例では、上記のGPDファイル41に、「Dummy」の機能を定義する「*Feature:Dummy」の記述(図の破線で囲んだ記述)を追加することを特徴としている。そして、「*Feature:Dummy」の下位要素の「*Option:」の定義にて、表示文字列をローカライズリソースDLL42から取得するための定義(リソースIDが200の表示文字列を取得する旨の定義)を行っている。また、「*Feature:Dummy」の下位要素の「*ConcealFromUI?:TRUE」にて、「Dummy」の機能に関しては印刷設定画面に表示しないことを指定する定義を行っている。
図5は、ローカライズリソースDLL42の一例である。ローカライズリソースDLL42には、複数の言語(ここでは日本語と英語)の表示文字列が定義されており、言語毎に「識別子」と「表示文字列」のセットが定義されている。一例を挙げると、識別子(リソースID)が100の文字列は、ステープル機能に対応する表示文字列であることを定義している。なお、表示文字列の言語は日本語と英語に限らず、WindowsOSの言語に応じて適宜設定可能である。
図6は、禁則JavaScript部44が実行する処理を記述した構文の一例である。completePrintCapabilities関数は、PrintCapabilitiesの編集を行う関数であり、印刷機能UI部50が印刷設定画面の表示を行う時に、構成処理部43から呼ばれる。文字列入力を行う機能に関しては、GPDファイル41で機能を定義することができないため、禁則JavaScript部44が実行する処理を記述した構文に機能を追加する処理を行う。
この例では、「var node = SetParameterDef("JobPIN",ns0000URI);」、「setProperty(node,"psf:MaxLength","xsd:integer","32");」、「setProperty(node,"psf:MinLength","xsd:integer","1");」にて、関数内で文字列入力を行う機能であるPINコード機能をPrintCapabilitiesに追加している。また、PINコード機能を追加する際に、「var strJobPINDisplayName = GetDisplayNameFromDummyFeature("PIN");」にて、GPDファイル41の「*Feature:Dummy」の「*Option:PIN」のノードから表示文字列を取得し、「setProperty(node,"psk:DisplayName","xsd:string",strJobPINDisplayName);」にて、取得した表示文字列を新たに追加したPINコード機能のノードの表示文字列に設定している。
図7は、構成処理部43にて、図4に示すGPDファイル41及び図5に示すローカライズリソースDLL42を元に生成されるPrintCapabilitiesの一例である。このPrintCapabilitiesを引数にして、図6に示す禁則JavaScript部44のcompletePrintCapabilities関数が呼び出される。
図8は、図6に示す禁則JavaScript部44にて処理を行った後のPrintCapabilitiesの一例である。禁則JavaScript部44にて、破線の枠内の、<psf:ParameterDef name="ns0000:JobPIN">以下のPINコード機能のノードの追加が行われている。
図9は、印刷設定画面60の一例である。この例では、図8に示すPrintCapabilitiesにて、PINコード機能におけるPINコードを入力する欄に対応付けて、「PINコード」という表示文字列が表示される。
図10は、図4〜図9に示す各データの機能間の流れを示す図である。上述したように、GPDファイル41で定義できない機能(文字列入力を行う機能)に対して表示文字列を定義する場合、GPDファイル41に、択一選択の機能と同様の形式でダミーの機能を定義し、ダミーの機能の中でリソースIDを指定して表示文字列を定義しておき、GPDファイル41から生成されるPrintCapabilities(図中のPrintCapabilities(1)参照)を禁則JavaScript部44で編集する際に、PrintCapabilitiesに文字列入力を行う機能を追加すると共に、ダミーの機能で定義した表示文字列を取得し、その表示文字列を文字列入力を行う機能に設定し、編集したPrintCapabilities(図中のPrintCapabilities(2)参照)を印刷設定UI部50に提供することにより、GPDファイル41で定義できない機能であっても、定義可能な機能と同様に、印刷設定画面に表示文字列を表示させることができる。
以下、本実施例のコンピュータ装置20の処理(印刷設定画面60の表示処理)について、図11及び図12のフローチャート図を参照して説明する。
まず、上述したように、GPDファイル41に択一選択の機能と同様の形式でダミーの機能を定義し、ダミーの機能の中でリソースIDを指定して表示文字列を定義しておく。そして、構成処理部43は、GPDファイル41及びローカライズリソースDLL42を読み込み(S110)、これらを元に、PrintCapabilitiesを生成する(S120)。
次に、禁則JavaScript部44は、completePrintCapabilities関数を用いてPrintCapabilitiesの編集を行う(S130)。図12は、この処理の詳細を示しており、まず、構成処理部43から受け取ったPrintCapabilitiesに、文字列入力を行う機能(例えば、PINコードを入力する機能)を新規追加する(S131)。そして、ダミーの機能の中に記載されている表示文字列(例えば、「PINコード」の文字列)を取得し(S132)、取得した表示文字列を新規追加した機能の表示文字列部に追加する(S133)。例えば、図8のPrintCapabilitiesにおいて、「<psf:Feature name="psk:Dummy">」のノードにおける「<psf:Value xsi:type="xsd:string">PINコード</psf:Value>」を「<psf:ParameterDef name="ns0000:JobPIN">」のノードの「<psf:Property name="psk:DisplayName">」に追加する。その後、追加するノードがあるかを判断し(S134)、追加するノードがあればS131に戻って同様の処理を繰り返す。
図11に戻って、構成処理部43は、禁則JavaScript部44で編集されたPrintCapabilitiesをPrintTicketと共に印刷設定UI部50に送り、印刷設定UI部50のPT/PC処理部51は、そのPrintCapabilitiesを処理し、UI処理部52は、PT/PC処理部51が処理した内容を元に印刷設定画面(例えば、図9のようにPINコードを入力する機能に対して「PINコード」なる文字列が表示される画面)を生成し(S140)、生成した印刷設定画面を表示部24に表示させる(S150)。
このような処理を行うことにより、GPDファイル41で定義できない機能であっても、ローカライズリソースDLL42で管理される文字列を、UI処理部52が生成する印刷設定画面に反映させることができ、OS言語が変わった場合の表示文字列の言語の不一致や、表示文字列の管理上の手間の発生を未然に防止することができる。
なお、本発明は上記実施例に限定されるものではなく、本発明の趣旨を逸脱しない限りにおいて、プリンタドライバの構成やそのローカライズ方法は適宜変更可能である。
例えば、上記実施例では、文字列入力を行う機能に対して、ローカライズリソースDLL42で管理される文字列を表示させる場合について記載したが、GPDファイル41で定義できない他の機能(例えば、タブなどの印刷設定画面の任意の場所に文字列を表示させる機能など)に対して、ダミーの機能で定義した文字列を反映させることも可能である。
本発明は、WindowsOS上で動作するプリンタドライバ、特に、Version4のプリンタドライバに利用可能である。
10 印刷装置
20 コンピュータ装置
21 制御部
21a CPU
21b ROM
21c RAM
22 記憶部
23 通信I/F部
24 表示部
25 操作部
30 アプリケーション
40 Printer Driver部
41 GPDファイル
42 ローカライズリソースDLL
43 構成処理部
44 禁則JavaScript部
45 レンダリング処理部
46 印刷フィルタ
50 印刷設定UI部
51 PT/PC処理部
52 UI処理部
60 印刷設定画面

Claims (10)

  1. 印刷機能を設定可能にする印刷設定画面を表示する表示部を備えるコンピュータ装置で動作するプリンタドライバであって、
    前記コンピュータ装置を、
    前記印刷機能が定義された構成ファイルと前記印刷機能に関する文字列が定義されたローカライズリソースファイルとを用いて、前記印刷機能の設定項目と当該設定項目で設定可能な設定値とが記述された印刷機能情報を生成する構成処理部、
    前記印刷機能情報における前記印刷機能の設定の競合を処理する禁則JavaScript(登録商標、以下省略)部、
    前記禁則JavaScript部で処理した前記印刷機能情報に基づいて、前記印刷設定画面を生成する印刷設定UI部、として機能させ、
    前記構成処理部は、前記印刷機能に影響しないダミーの機能が更に定義され、かつ、前記ダミーの機能の定義に、前記ローカライズリソースファイルで定義される文字列が指定された前記構成ファイルと前記ローカライズリソースファイルとを用いて、前記ダミーの機能で指定した文字列が記述された前記印刷機能情報を生成し、
    前記禁則JavaScript部は、前記印刷機能情報に、前記構成ファイルでは定義できない機能を追加し、前記追加した機能に、前記ダミーの機能で指定した文字列を反映させ、
    前記印刷設定UI部は、前記追加された機能に対応付けて、前記ダミーの機能で指定した文字列が表示される前記印刷設定画面を生成する、
    ことを特徴とするプリンタドライバ。
  2. 印刷機能を設定可能にする印刷設定画面を表示する表示部を備えるコンピュータ装置で動作するプリンタドライバであって、
    前記コンピュータ装置を、
    前記印刷機能が定義された構成ファイルと前記印刷機能に関する文字列が定義されたローカライズリソースファイルとを用いて、前記印刷機能の設定項目と当該設定項目で設定可能な設定値とが記述された印刷機能情報を生成する構成処理部、
    前記印刷機能情報における前記印刷機能の設定の競合を処理する禁則JavaScript部、
    前記禁則JavaScript部で処理した前記印刷機能情報に基づいて、前記印刷設定画面を生成する印刷設定UI部、として機能させ、
    前記構成処理部は、前記印刷機能に影響しないダミーの機能が定義され、かつ、前記ダミーの機能の定義に、前記ローカライズリソースファイルで定義される文字列が指定された前記構成ファイルと前記ローカライズリソースファイルとを用いて、前記ダミーの機能で指定した文字列が記述された前記印刷機能情報を生成し、
    前記印刷設定UI部は、前記ダミーの機能で指定した文字列が表示される前記印刷設定画面を生成する、
    ことを特徴とするプリンタドライバ。
  3. 構成ファイルは、GPD(Generic Printer Description)ファイルであり、前記印刷機能情報は、PrintCapabilitiesである、
    ことを特徴とする請求項1又は2に記載のプリンタドライバ。
  4. 前記ダミーの機能には、当該ダミーの機能を前記印刷設定画面に表示させない属性が付与されている、
    ことを特徴とする請求項1乃至3のいずれか一に記載のプリンタドライバ。
  5. Windows(登録商標)のオペレーティングシステム上で動作するversion4のプリンタドライバである、
    ことを特徴とする請求項1乃至4のいずれか一に記載のプリンタドライバ。
  6. 印刷機能を設定可能にする印刷設定画面を生成するプリンタドライバのローカライズ方法であって、
    前記印刷機能が定義される構成ファイルに、前記印刷機能に影響しないダミーの機能を定義すると共に、前記ダミーの機能の定義に、前記印刷機能に関する文字列が定義されるローカライズリソースファイルによって管理される文字列を指定する第1ステップと、
    前記構成ファイルと前記ローカライズリソースファイルとを用いて、前記印刷機能の設定項目と当該設定項目で設定可能な設定値とが記述される印刷機能情報を生成する第2ステップと、
    前記印刷機能情報における前記印刷機能の設定の競合を処理する際に、前記印刷機能情報に、前記構成ファイルでは定義できない機能を追加すると共に、前記追加した機能に、前記ダミーの機能で指定した文字列を反映させる第3ステップと、
    前記印刷機能情報に基づいて、前記追加された機能に対応付けて、前記ダミーの機能で指定した文字列が表示される前記印刷設定画面を生成する第4ステップと、を実行する、
    ことを特徴とするプリンタドライバのローカライズ方法。
  7. 印刷機能を設定可能にする印刷設定画面を生成するプリンタドライバのローカライズ方法であって、
    前記印刷機能が定義される構成ファイルに、前記印刷機能に影響しないダミーの機能を定義すると共に、前記ダミーの機能の定義に、前記印刷機能に関する文字列が定義されるローカライズリソースファイルによって管理される文字列を指定する第1ステップと、
    前記構成ファイルと前記ローカライズリソースファイルとを用いて、前記印刷機能の設定項目と当該設定項目で設定可能な設定値とが記述される印刷機能情報を生成する第2ステップと、
    前記印刷機能情報における前記印刷機能の設定の競合を処理する際に、前記印刷機能情報に、前記ダミーの機能で指定した文字列を反映させる第3ステップと、
    前記印刷機能情報に基づいて、前記ダミーの機能で指定した文字列が表示される前記印刷設定画面を生成する第4ステップと、を実行する、
    ことを特徴とするプリンタドライバのローカライズ方法。
  8. 構成ファイルは、GPD(Generic Printer Description)ファイルであり、前記印刷機能情報は、PrintCapabilitiesである、
    ことを特徴とする請求項6又は7に記載のプリンタドライバのローカライズ方法。
  9. 前記ダミーの機能には、当該ダミーの機能を前記印刷設定画面に表示させない属性が付与されている、
    ことを特徴とする請求項6乃至8のいずれか一に記載のプリンタドライバのローカライズ方法。
  10. 前記プリンタドライバは、Windows(登録商標)のオペレーティングシステム上で動作するversion4のプリンタドライバである、
    ことを特徴とする請求項6乃至9のいずれか一に記載のプリンタドライバのローカライズ方法。
JP2013072109A 2013-03-29 2013-03-29 プリンタドライバ及びプリンタドライバのローカライズ方法 Active JP5729652B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2013072109A JP5729652B2 (ja) 2013-03-29 2013-03-29 プリンタドライバ及びプリンタドライバのローカライズ方法
US14/227,177 US20140293345A1 (en) 2013-03-29 2014-03-27 Non-transitory computer-readable storage medium and localization method for printer driver
CN201410117491.8A CN104077087B (zh) 2013-03-29 2014-03-27 计算机装置的控制方法以及打印机驱动的本地化方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013072109A JP5729652B2 (ja) 2013-03-29 2013-03-29 プリンタドライバ及びプリンタドライバのローカライズ方法

Publications (2)

Publication Number Publication Date
JP2014197281A JP2014197281A (ja) 2014-10-16
JP5729652B2 true JP5729652B2 (ja) 2015-06-03

Family

ID=51598373

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013072109A Active JP5729652B2 (ja) 2013-03-29 2013-03-29 プリンタドライバ及びプリンタドライバのローカライズ方法

Country Status (3)

Country Link
US (1) US20140293345A1 (ja)
JP (1) JP5729652B2 (ja)
CN (1) CN104077087B (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6032567B2 (ja) * 2014-05-08 2016-11-30 コニカミノルタ株式会社 プリンタドライバ及び印刷システム並びにプリンタドライバの画面表示方法
JP6115515B2 (ja) * 2014-05-08 2017-04-19 コニカミノルタ株式会社 プリンタドライバ及びプリンタドライバの禁則処理方法

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008273136A (ja) * 2007-05-07 2008-11-13 Sony Corp 印刷装置、サーバー、印刷特性改善方法及びコンピュータプログラム
US20090190150A1 (en) * 2008-01-24 2009-07-30 Selvaraj Senthil K On-Demand Print Driver
JP5228999B2 (ja) * 2009-03-03 2013-07-03 株式会社リコー プリントシステム、情報処理装置、方法、プログラムおよび記憶媒体
JP5532770B2 (ja) * 2009-09-08 2014-06-25 株式会社リコー 印刷制御プログラム、情報処理装置、および印刷制御プログラムを記録したコンピュータ読み取り可能な記録媒体
JP5882623B2 (ja) * 2011-08-03 2016-03-09 キヤノン株式会社 情報処理装置、制御方法、プログラム
JP5924892B2 (ja) * 2011-09-08 2016-05-25 キヤノン株式会社 情報処理装置、情報処理方法、及びプログラム

Also Published As

Publication number Publication date
CN104077087B (zh) 2018-04-06
JP2014197281A (ja) 2014-10-16
CN104077087A (zh) 2014-10-01
US20140293345A1 (en) 2014-10-02

Similar Documents

Publication Publication Date Title
JP5825565B2 (ja) プリンタドライバ及びプリンタドライバの印刷機能の追加方法
JP5084314B2 (ja) 情報処理装置、情報処理方法、情報処理プログラム、及び情報処理プログラムを記録する記録媒体
US8264743B2 (en) Information processor, information processing method, and recording medium
US8773675B2 (en) Providing an integrated, feature oriented printer selection system
US8736877B2 (en) Print system, client, control method, and storage medium
US8817281B2 (en) Print setting server, document processing server, print system, and print setting method
JP2009059363A (ja) コンピュータ周辺装置ドライバ、装置及び方法
JP2009271930A (ja) プリンタ定義ファイルを用いてjdfを生成するための方法、システムおよびプログラム
US8427686B2 (en) Printer driver, information processing apparatus, and computer-readable recording medium recording therein printer driver having multiple decompression units
JP5924892B2 (ja) 情報処理装置、情報処理方法、及びプログラム
JP5868032B2 (ja) 情報処理装置、表示制御方法及びプログラム
KR100739748B1 (ko) Xml 문서를 이용한 디바이스 제어 방법 및 그 시스템
US9373061B2 (en) Non-transitory computer-readable storage medium, computing device, and display method of user interface of printer driver
US8982383B2 (en) Method and program for a universal job definition format (JDF) printer driver
JP5326477B2 (ja) 情報処理装置、情報処理プログラム、記録媒体及び情報処理方法
JP5709429B2 (ja) 画像処理装置及びその制御方法、プログラム
CN106933519A (zh) 信息处理设备和打印数据生成方法
JP5729652B2 (ja) プリンタドライバ及びプリンタドライバのローカライズ方法
JP2010092487A (ja) 印刷制御装置及びプリントチケットの制御方法
JP2009110050A (ja) 情報処理装置、情報処理システム、表示制御方法、表示制御プログラム及び記録媒体
JP2012203704A (ja) 印刷ジョブ編集装置、印刷ジョブ編集装置用プログラム、および印刷システム
JP2012059106A (ja) カスタマイズ装置、印刷システム、カスタマイズ方法およびカスタマイズプログラム
JP2007256991A (ja) データ処理装置、プログラム、コンピュータ読み取り可能な記録媒体
JP2015204056A (ja) 印刷制御装置、印刷制御装置のデータ処理方法、及びプログラム、プリンタドライバ
JP2020030697A (ja) 情報処理装置、端末装置、設定画面表示システム、設定画面表示方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20140924

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20150220

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20150326

R150 Certificate of patent or registration of utility model

Ref document number: 5729652

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150