JP2017033052A - Control device and program in image forming apparatus - Google Patents

Control device and program in image forming apparatus Download PDF

Info

Publication number
JP2017033052A
JP2017033052A JP2015149085A JP2015149085A JP2017033052A JP 2017033052 A JP2017033052 A JP 2017033052A JP 2015149085 A JP2015149085 A JP 2015149085A JP 2015149085 A JP2015149085 A JP 2015149085A JP 2017033052 A JP2017033052 A JP 2017033052A
Authority
JP
Japan
Prior art keywords
information
print
print setting
printcapabilities
printer driver
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.)
Pending
Application number
JP2015149085A
Other languages
Japanese (ja)
Inventor
鈴木 慎也
Shinya Suzuki
慎也 鈴木
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 JP2015149085A priority Critical patent/JP2017033052A/en
Publication of JP2017033052A publication Critical patent/JP2017033052A/en
Pending legal-status Critical Current

Links

Landscapes

  • Stored Programmes (AREA)

Abstract

PROBLEM TO BE SOLVED: To solve the problem in which: in a V4 printer driver being a new architecture, GPD can define "items related to Feature and Option providing functions as options" that can be represented by PrintCapabilities, but cannot define "items related to ParameterDef providing functions as input of numeral values and character strings;" and therefore, multi-lingual functions that have been executed through description in GPD cannot be executed in terms of items of Parameter.SOLUTION: In terms of processing of creating ParameterDef that cannot be defined in GPD, DriverPropertyBag referring to Locale information is switched, and "character strings of function display names" are added, and thereby enabling provision of PrintCapabilites designed for a multi-lingual printer driver.SELECTED DRAWING: Figure 6

Description

本発明は、新しいアーキテクチャにおけるプリンタードライバーのローカライズ文言を制御するプログラムに関する。   The present invention relates to a program for controlling localized language of a printer driver in a new architecture.

Microsoft(登録商標)のWindows(登録商標)8では、V4プリンタードライバーと呼ばれる新しいアーキテクチャで動作するプリンタードライバーが導入されている。V4プリンタードライバーは、V3プリンタードライバーのアーキテクチャとして提供されていたXPS(XML Paper Specification)プリンタードライバーの後継となるアーキテクチャであり、XPS文書を利用した印刷パスを利用している。   In Windows (registered trademark) 8 of Microsoft (registered trademark), a printer driver that operates with a new architecture called a V4 printer driver is introduced. The V4 printer driver is an architecture that succeeds the XPS (XML Paper Specification) printer driver provided as the architecture of the V3 printer driver, and uses a print path that uses an XPS document.

このXPS印刷パスにおいて、印刷物の体裁を決定するために利用されるものがPrintCapabilitiesと呼ばれるXML形式で記述された印刷機能情報と、PrintTicketと呼ばれるXML形式で記述された印刷設定情報である。V4プリンタードライバーでは、GPD(Generic Printer Description)と呼ばれる印刷設定定義ファイルに各印刷機能情報を記載し、このGPDを含んだプリンタードライバーをOSにインストールすることで、ユーザーに対してPrintCapabilitiesやPrintTicketを利用した印刷設定変更機能を提供することができる。   In this XPS printing pass, what is used to determine the appearance of the printed material is print function information described in an XML format called PrintCapabilities and print setting information described in an XML format called PrintTicket. In the V4 printer driver, each print function information is described in a print setting definition file called GPD (Generic Printer Description), and the user can use PrintCapabilities and PrintTicket by installing the printer driver including the GPD in the OS. The print setting change function can be provided.

また、GPDには各印刷機能情報における「機能表示名」を定義することができる。これは、あらかじめリソースDLLに文字列を定義しておき、その定義IDをリソースIDとしてGPDに記載することで、PrintCapabilitiesの機能表示名を表す「DisplayName」属性に該当の文字列が定義されるOSの仕組みが存在する。
「DisplayName」属性とは、PrintCapabilitesにおけるXML形式で記載されたXMLNodeの一部を指し、ここで記述されたValue属性が「機能表示名」として定義されることとなる。リソースDLLには、各種印刷設定における各国言語の「機能表示名の文字列」を定義することができ、リソースIDを記載したGPDと、各国言語の「機能表示名の文字列」が定義されたリソースDLLがあればマルチリンガルのプリンタードライバーを提供することができる。
In addition, a “function display name” in each print function information can be defined in the GPD. This is because the character string is defined in advance in the resource DLL, and the definition ID is described in the GPD as the resource ID, so that the corresponding character string is defined in the “DisplayName” attribute representing the function display name of PrintCapabilities. There is a mechanism.
The “DisplayName” attribute indicates a part of the XML Node described in the XML format in PrintCapabilities, and the Value attribute described here is defined as the “function display name”. The resource DLL can define a “function display name string” for each language in each print setting, and a GPD that describes the resource ID and a “function display name string” for each language. If there is a resource DLL, a multilingual printer driver can be provided.

ただし、これらのリソースIDを定義することができるのはGPDに記載されている印刷設定の項目のみとなる。GPDはPrintCapabilitiesで表現可能な、「機能を選択肢として提供するFeatureとOptionに関する項目」を定義することが可能だが、「機能を数値や文字列の入力として提供するParameterDefに関する項目」を定義することができない。そこで、GPDにダミーのFeatureとOptionの項目を定義し、作成されたダミー機能の「機能表示名の文字列」を利用して、ParameterDefの「DisplayName」属性に「機能表示名」を追加する手段が提案されている(特許文献1)。   However, these resource IDs can be defined only for print setting items described in the GPD. GPD can define “Items related to Features and Options that provide functions as options” that can be expressed in PrintCapabilities, but it is possible to define “Items related to ParameterDef that provides functions as numeric values and character strings” Can not. Therefore, means for defining dummy Feature and Option items in the GPD and adding the “function display name” to the “DisplayName” attribute of ParameterDef using the “function display name character string” of the created dummy function Has been proposed (Patent Document 1).

特開2014−197281号公報JP 2014-197281 A

しかし、上記手段を利用するとダミー機能がPrintCapabilitesに定義されてしまうことになり、PrintCapabilitesを利用する様々なアプリケーションで利用できない印刷設定項目が使用されてしまう。また、アプリケーションはプリンタードライバーが定義した文言をそのまま表示したい場合が存在する。例えば、ストアアプリ用の印刷設定UIであるWSDA(Windows Store Device App)は機種共通で開発される場合もあり、機種固有機能の表示文字列はドライバーの文言をそのままユーザーに表示する。その場合、WSDAはプリンタードライバーが提供するPrintCapabilitesのDisplayNameを利用して印刷設定UIに表示する。その場合ParameterDefに定義された「機能表示名」は必要不可欠であり、正しいローカライズ文字列をPrintCapabilitesに定義する必要がある。   However, if the above means is used, a dummy function is defined in PrintCapabilities, and print setting items that cannot be used in various applications that use PrintCapabilities are used. Also, there are cases where the application wants to display the wording defined by the printer driver as it is. For example, WSDA (Windows Store Device App), which is a print setting UI for a store application, may be developed for all models, and the display character string of the model-specific function displays the driver's text as it is to the user. In this case, WSDA displays the print setting UI using the PrintCapabilities DisplayName provided by the printer driver. In that case, the “function display name” defined in ParameterDef is indispensable, and a correct localized character string must be defined in PrintCapabilities.

そこで、本発明は、上記問題を解決する手段として、ParameterDefの「機能表示名」に対してどの言語の文字列を定義すべきかを判別し、PrintCapabilitiesにDisplayName属性として文字列を追加する仕組みを提供することを目的とする。   Therefore, the present invention provides a mechanism for determining which language character string should be defined for “Function Display Name” of ParameterDef and adding the character string as a DisplayName attribute to PrintCapabilities as a means for solving the above problem. The purpose is to do.

上記の目的を達成するために、本発明に係る画像形成装置およびその制御方法は、
情報処理装置と印刷装置から構成されている情報処理方法において、
XML形式の印刷設定機能情報を受信する手段(ステップS601)と、
ログインしているOSにおけるLocale情報を取得する手段(ステップS602)と、
前記Locale情報に合致するDriverPropertyBagの情報を取得する手段(ステップS603)と、
前記印刷設定機能情報におけるParameter部がすでに存在しているかを判定する手段(ステップS604)と、
前記印刷設定機能情報におけるParameter部が前記Locale情報と合致した機能名文字列となっているかを判断する手段(ステップS605)と、
前記DriverPropertyBagの情報を印刷設定機能情報に反映する手段(ステップS606)と、
を有することを特徴とする。
In order to achieve the above object, an image forming apparatus and a control method thereof according to the present invention include:
In an information processing method including an information processing apparatus and a printing apparatus,
Means for receiving print setting function information in XML format (step S601);
Means for acquiring locale information in the logged-in OS (step S602);
Means for obtaining information of DriverPropertyBag that matches the locale information (step S603);
Means (step S604) for determining whether a Parameter portion in the print setting function information already exists;
Means for determining whether the Parameter portion in the print setting function information is a function name character string that matches the locale information (step S605);
Means for reflecting the information of the DriverPropertyBag in the print setting function information (step S606);
It is characterized by having.

本発明に係る画像形成装置およびその制御方法によれば、GPDに定義できないParameterDefの生成処理に関して、Locale情報によって参照するDriverPropertyBagを切り替えて「機能表示名の文字列」を追加することで、マルチリンガルに対応したPrintCapabilitesを提供することができる。   According to the image forming apparatus and the control method thereof according to the present invention, regarding the ParameterDef generation process that cannot be defined in the GPD, the “DriverPropertyBag” referred to by the locale information is switched to add the “character string of function display name”, thereby adding multilingual PrintCapabilities corresponding to the above can be provided.

本発明の一実施形態としての、コンピューターシステムのハードウェアとソフトウェアのブロック構成図である。It is a block block diagram of the hardware and software of a computer system as one Embodiment of this invention. 本発明の一実施形態としての、印刷処理システムのブロック構成図である。1 is a block configuration diagram of a print processing system as an embodiment of the present invention. FIG. 本発明の一実施形態としての、印刷設定定義ファイル(GPD)の一部である。FIG. 4 is a part of a print setting definition file (GPD) as an embodiment of the present invention. 本発明の一実施形態としての、リソースDLLファイルの定義内容の一部である。It is a part of the definition content of the resource DLL file as one embodiment of the present invention. 本発明の一実施形態としての、日本語で表示されたPrintCapabilites(Feature−Option)の一部である。It is a part of PrintCapabilities (Feature-Option) displayed in Japanese as one embodiment of the present invention. 本発明の一実施形態としての、英語で表示されたPrintCapabilites(Feature−Option)の一部である。FIG. 2 is a part of PrintCapabilities (Feature-Option) displayed in English as an embodiment of the present invention. 本発明の一実施形態としての、日本語用のParameter情報が定義されたDriverPropertyBagの定義部の一部である。It is a part of the definition part of DriverPropertyBag in which the parameter information for Japanese is defined as one embodiment of the present invention. 本発明の一実施形態としての、英語用のParameter情報が定義されたDriverPropertyBagの定義部の一部である。It is a part of the definition part of DriverPropertyBag in which Parameter information for English is defined as one embodiment of the present invention. 本発明の一実施形態としての、印刷設定編集モジュール処理のフローチャートである。6 is a flowchart of print setting editing module processing according to an embodiment of the present invention. 本発明の一実施形態としての、日本語で表示されたPrintCapabilites(ParameterDef)の一部である。It is a part of PrintCapabilities (ParameterDef) displayed in Japanese as one embodiment of the present invention. 本発明の一実施形態としての、英語で表示されたPrintCapabilites(ParameterDef)の一部である。FIG. 4 is a part of PrintCapabilities (ParameterDef) displayed in English as an embodiment of the present invention.

以下、本発明を実施するための最良の形態について図面を用いて説明する。   The best mode for carrying out the present invention will be described below with reference to the drawings.

[実施形態1]
図1は本発明の実施形態を示す一般的なコンピューターを用いたシステムのブロック構成図である。
[Embodiment 1]
FIG. 1 is a block diagram of a system using a general computer showing an embodiment of the present invention.

CPU101は主記憶装置102のROM1021あるいはRAM1022あるいは補助記憶装置105に格納されたプログラムに従って装置全体の制御を行う。RAM1022はCPU101が各種処理を行う際のワークエリアとしても使用される。本実施形態における各コンポーネントの処理はすべてRAM102に読み込んで動作する。補助記憶装置105はアプリケーション1051やプリンタードライバー1052、オペレーティングシステム(OS)1053等を記録する。プリンタードライバー1052は、印刷機能を持つデバイスに対して、印刷指示を行うことができる。   The CPU 101 controls the entire apparatus according to a program stored in the ROM 1021 or the RAM 1022 of the main storage device 102 or the auxiliary storage device 105. The RAM 1022 is also used as a work area when the CPU 101 performs various processes. All the processing of each component in this embodiment is read into the RAM 102 and operates. The auxiliary storage device 105 records an application 1051, a printer driver 1052, an operating system (OS) 1053, and the like. The printer driver 1052 can issue a print instruction to a device having a print function.

キーボード1031やマウス・タッチパネルなどに代表されるポインティングデバイス1032などの入力機器は、入力I/F103を通じて、ユーザーがコンピューターに対して各種指示を与えるためのデバイスである。出力I/F104は、データを外部に出力するためのインターフェースであり、モニタ1041やプリンター1042などの出力機器に対してデータを出力する。プリンター1042とは直接接続されるローカルI/Oのみならず、通信I/F106を通じて接続されるネットワーク1061を通して接続されていてもよい。また、107は共通データシステムバスで、I/Fやモジュール間でデータのやりとりを行う。   An input device such as a pointing device 1032 typified by a keyboard 1031 and a mouse / touch panel is a device for the user to give various instructions to the computer through the input I / F 103. The output I / F 104 is an interface for outputting data to the outside, and outputs data to an output device such as a monitor 1041 or a printer 1042. The printer 1042 may be connected not only through the local I / O directly connected but also through the network 1061 connected through the communication I / F 106. Reference numeral 107 denotes a common data system bus, which exchanges data between I / Fs and modules.

図2はドライバー印刷システムのブロック構成図である。   FIG. 2 is a block diagram of the driver printing system.

ドライバー印刷システムはXPSファイルフォーマットをスプールデータとして使用し、印刷を行うシステムである。ドライバー印刷システムは、オペレーティングシステム1053上で動作している。プリントマネージャ218、GDItoXPS変換モジュール207、フィルタパイプラインマネージャ212、ポートモニター219はオペレーティングシステム1053に含まれるモジュールである。GDIとはプリンターの印刷イメージの生成を行うグラフィックスコンポーネントであり、GDItoXPS変換モジュール207は、GDIで描画されたデータをXPSデータへ変換する機能を持つ。フィルタパイプラインマネージャ212は、XPS印刷パスの特徴であるフィルタ印刷処理の管理を行うモジュールである。   The driver printing system is a system that performs printing using the XPS file format as spool data. The driver printing system operates on the operating system 1053. The print manager 218, the GDI to XPS conversion module 207, the filter pipeline manager 212, and the port monitor 219 are modules included in the operating system 1053. GDI is a graphics component that generates a print image of a printer. The GDI to XPS conversion module 207 has a function of converting data drawn in GDI into XPS data. The filter pipeline manager 212 is a module that manages filter print processing, which is a feature of the XPS print path.

ポートモニター219は、デバイスにアクセスするプリントマネージャ208とプリンタードライバー間で通信を制御することができプリンタードライバーはポートモニター219を経由して印刷処理を行う。GDItoXPS変換モジュール207、コンフィグレーションモジュール208、フィルタパイプラインマネージャ212は、プリンタードライバー1052に含まれているが、オペレーティングシステム1053から提供されているプリンタードライバー1052のモジュールという位置づけである。   The port monitor 219 can control communication between the print manager 208 accessing the device and the printer driver, and the printer driver performs print processing via the port monitor 219. The GDI to XPS conversion module 207, the configuration module 208, and the filter pipeline manager 212 are included in the printer driver 1052, but are positioned as modules of the printer driver 1052 provided from the operating system 1053.

コンフィグレーションモジュール208は、プリンタードライバーが提供する印刷設定編集モジュール2081を使用して印刷設定情報を編集することができ、印刷設定編集モジュール2081は、スクリプト言語、特にJavaScript(登録商標)で記載されたプログラムのことを指し、プリンタードライバーが提供するプロパティバッグ2082を利用して印刷設定情報を編集する。プロパティバッグ2082とは、プリンターの機種依存情報として利用するためのDriverPropertyBagと呼ばれるデータ群と、プリントキューに紐づいたQueuePropertyBagと呼ばれるデータ群が保持された領域を指す。   The configuration module 208 can edit the print setting information by using the print setting editing module 2081 provided by the printer driver. The print setting editing module 2081 is described in a script language, particularly Java Script (registered trademark). This refers to a program, and print setting information is edited using a property bag 2082 provided by the printer driver. The property bag 2082 refers to an area in which a data group called DriverPropertyBag for use as printer model-dependent information and a data group called QueuePropertyBag associated with the print queue are held.

DriverPropertyBagは、ドライバーパッケージ内に存在するプリンターの機種依存データであり、プリンタードライバーインストール後にOS内の特定の領域に読み取り専用としてデータ群が保持される。   DriverPropertyBag is model-dependent data of a printer that exists in the driver package, and a data group is held as a read-only in a specific area in the OS after the printer driver is installed.

QueuePropertyBagは、Key−Valueペアのxml定義ファイルをOSに登録することで利用することが可能であり、Valueに関して一定の権限上で編集が可能である。   The QueuePropertyBag can be used by registering the xml definition file of the Key-Value pair in the OS, and can be edited with a certain authority regarding the Value.

プリンタードライバー1052とフィルタパイプラインマネージャ212の各フィルタは、図1の補助記憶装置105にプリンタードライバー1052として格納されている。GDI印刷アプリケーション201とXPS印刷アプリケーション202は、図1の補助記憶装置105にアプリケーション1051として格納されている。ユーザーはキーボード1031やタッチパネル/マウスなどに代表されるポインティングデバイス1032などといった入力装置を使用して、出力装置のモニタ1041に映し出されたGDI印刷アプリケーション201(以下、GDIアプリと略す)、もしくはXPS印刷アプリケーションプログラム202(以下、XPSアプリと略す)から印刷処理を実行する。印刷処理はプリンターの選択、印刷設定の作成、描画データの変換と3つの処理を順番に行うことで実行する。   Each filter of the printer driver 1052 and the filter pipeline manager 212 is stored as the printer driver 1052 in the auxiliary storage device 105 of FIG. The GDI printing application 201 and the XPS printing application 202 are stored as applications 1051 in the auxiliary storage device 105 of FIG. A user uses an input device such as a keyboard 1031 or a pointing device 1032 typified by a touch panel / mouse to display a GDI print application 201 (hereinafter abbreviated as GDI application) displayed on the monitor 1041 of the output device or XPS printing. Print processing is executed from an application program 202 (hereinafter abbreviated as XPS application). The print process is executed by sequentially performing three processes, ie, printer selection, print setting creation, and drawing data conversion.

まずは、印刷したいプリンター1042の選択をする。ユーザーから見るとプリンター1042の選択は、印刷を実行するプリンター1042に対応したプリンタードライバー1052を選択することと同義である。1052の選択には、不図示のプリントキューを利用する。   First, the printer 1042 to be printed is selected. From the viewpoint of the user, selecting the printer 1042 is synonymous with selecting the printer driver 1052 corresponding to the printer 1042 that executes printing. For selection of 1052, a print queue (not shown) is used.

次に印刷設定を作成する。印刷設定はまず、アプリケーション1051が印刷設定用のメモリ領域をRAM1022に確保する。そして、アプリケーション1051は、プリンタードライバー1052のコンフィギュレーションモジュール204を呼び出して、印刷設定データを作成して格納する。GDIアプリ201では印刷設定データとしてバイナリのDEVMODE構造体203を用い、XPSアプリ202ではマークアップ言語のXMLで記載されたPrintTicket204を用いる。   Next, print settings are created. For print setting, first, the application 1051 secures a memory area for print setting in the RAM 1022. Then, the application 1051 calls the configuration module 204 of the printer driver 1052 to create and store print setting data. The GDI application 201 uses a binary DEVMODE structure 203 as print setting data, and the XPS application 202 uses a PrintTicket 204 written in markup language XML.

DEVMODE構造体203は、オペレーティングシステムが定義する標準領域とプリンタードライバーが独自で定義する拡張領域を持つ。PrintTicket204は、XML形式で記述された印刷設定情報で、標準領域と拡張領域は名前空間によって記載が分かれている。印刷設定データには機種固有の情報も含まれているので、コンフィギュレーションモジュール208は、機種依存ファイル209を利用して、印刷設定データを作成する。このDEVMODE構造体203もしくはPrintTicket204が印刷設定を保持しており、アプリケーションが直接、値を書き換えることで印刷設定を変更する。機種依存ファイル209は、GPDと呼ばれる印刷設定定義ファイルを指し、図3(A)のようにテキストベースで記載されている。   The DEVMODE structure 203 has a standard area defined by the operating system and an extended area uniquely defined by the printer driver. PrintTicket 204 is print setting information described in the XML format, and the description of the standard area and the extended area is divided according to the name space. Since the print setting data includes model-specific information, the configuration module 208 uses the model-dependent file 209 to create print setting data. The DEVMODE structure 203 or the PrintTicket 204 holds the print setting, and the application changes the print setting by directly rewriting the value. The model-dependent file 209 indicates a print setting definition file called GPD and is described on a text basis as shown in FIG.

図3(A)の内容について、詳細に説明する。   The contents of FIG. 3A will be described in detail.

301は機能を表わすFeatureを定義している。図3(A)では例として「両面設定」を表わすDuplexというFeatureを定義する。特に、310のようにPrintSchemaKeywordMapを定義すると、ここに記載された名称のPrintSchemaがPrintCapabilitesで定義される。また、両面設定の設定項目であるOptionとして、Simplex(片面印刷(302))、LongEdge(両面長辺とじ(303))、ShortEdge(両面短辺とじ(304))を定義する。そして各項目において、*rcNameIDとよばれる「機能表示名を表わすリソースID」を定義している(320)。ここで示すのはID値であり、リソースDLLにはリソースID値と「機能表示名の文字列」が紐づかれいている(図3(B))。実際にPrintCapabilitiesの各項目におけるDisplayName属性に表現されるのはこれらで定義した文字列である。そして、このリソースDLLには各言語の文字列を記載することが可能であり、同IDで紐づいた各言語の文字列をPrintCapabilitesのDisplayName属性に反映する機能がOSによって提供されている。   301 defines a Feature representing a function. In FIG. 3A, a feature called Duplex representing “double-sided setting” is defined as an example. In particular, when a PrintSchemaKeywordMap is defined as 310, a PrintSchema with the name described here is defined in PrintCapabilities. In addition, Simplex (single-sided printing (302)), LongEdge (double-sided long edge binding (303)), and ShortEdge (double-sided short edge binding (304)) are defined as options that are setting items for duplex setting. In each item, a “resource ID representing a function display name” called * rcNameID is defined (320). An ID value is shown here, and a resource ID value and a “character string of function display name” are associated with the resource DLL (FIG. 3B). What is actually expressed in the DisplayName attribute in each item of PrintCapabilities is a character string defined by these. The resource DLL can describe a character string of each language, and the OS provides a function of reflecting the character string of each language linked by the same ID in the DisplayName attribute of PrintCapabilities.

実際に、図4(A)は日本語で示したPrintCapabilitiesを図示したものであり、図4(B)は英語で示したPrintCapabilitiesを図示ししたものとなる。これは、図3のリソースIDと各言語の「機能表示名」の対応がなされているために生成することができる。本プリンタードライバーでは、このPrintCapabilitiesを基準としたPrintTicket204を利用して印刷設定を制御している。   Actually, FIG. 4A shows PrintCapabilities shown in Japanese, and FIG. 4B shows PrintCapabilities shown in English. This can be generated because the correspondence between the resource ID of FIG. 3 and the “function display name” of each language is made. In this printer driver, print settings are controlled using the PrintTicket 204 based on the PrintCapabilities.

プリンター1042に依存した専用の設定は、プリンターエクステンション210が持つユーザーインターフェースで設定する。プリンターエクステンション210は、プリンタードライバー1052の一種ではあるが、別のアプリケーションとしてインストールを行う。プリンタードライバー1052は、ユーザーインターフェースの設定に従い、DEVMODE構造体203もしくはPrintTicket204のプリンター1042に依存した設定を変更する。印刷設定とは具体的に、出力する用紙サイズを「A4」にする、印刷の向きを「横」にする、など印刷を行うのに必要なデータのことを指す。   Dedicated settings depending on the printer 1042 are set by a user interface of the printer extension 210. The printer extension 210 is a kind of the printer driver 1052, but is installed as another application. The printer driver 1052 changes the setting depending on the printer 1042 of the DEVMODE structure 203 or the PrintTicket 204 according to the setting of the user interface. Specifically, the print setting refers to data necessary for printing such as “A4” for the output paper size and “landscape” for the print orientation.

PrintTicket204は印刷設定がXML形式で記述されているので、XPSアプリ202がすべての設定値を直接変更して書き換えることは容易だが、プリンターエクステンション210のユーザーインターフェースを使って設定変更してもかまわない。印刷設定は文書印刷のたびに作成するが、プリンター1042のオプション機器や、ユーザーごとの環境設定など設定を保持しておきたいものは、ユーザーインターフェースがオペレーティングシステムのレジストリデータベース205に保存する。レジストリデータベース205が使用できないときは、ユーザーインターフェースは、アプリケーションデータ220に設定を保存する。印刷設定のデフォルト値はオペレーティングシステムのプリントマネージャ218が、レジストリデータベース205に保存する。レジストリデータベース205や、アプリケーションデータ220は、補助記憶装置105に保存される。最後に描画データの変換を行う。   Since the print settings of the PrintTicket 204 are described in the XML format, it is easy for the XPS application 202 to directly change and rewrite all the setting values. However, the setting may be changed using the user interface of the printer extension 210. The print settings are created every time a document is printed, but the user interface stores settings such as optional devices of the printer 1042 and environment settings for each user in the registry database 205 of the operating system. When the registry database 205 cannot be used, the user interface stores settings in the application data 220. The default value of the print setting is stored in the registry database 205 by the print manager 218 of the operating system. The registry database 205 and application data 220 are stored in the auxiliary storage device 105. Finally, drawing data is converted.

印刷設定が確定したら、ユーザーはアプリケーションから印刷処理を実行する。GDIアプリ201から印刷する場合は、プリンタードライバーの形態を取るGDItoXPS変換モジュール207に描画データが送られ、XPSスプールファイル206が作成される。このときGDItoXPS変換モジュール207はコンフィギュレーションモジュール208を呼び出し、印刷設定をDEVMODE構造体203からPrintTicket204に変換する。変換する際には、印刷設定編集モジュール2081が使用される。XPSアプリ202から印刷する場合は、XPSファイルをXPSアプリ自身が生成するのと、オペレーティングシステムがXPSアプリからの描画命令に応じてXPSファイルを生成するのと2通りの方法がある。どちらの方法であっても、印刷の途中でXPSスプールファイル206を生成する。   When the print settings are determined, the user executes print processing from the application. When printing from the GDI application 201, drawing data is sent to the GDI to XPS conversion module 207 in the form of a printer driver, and an XPS spool file 206 is created. At this time, the GDI to XPS conversion module 207 calls the configuration module 208 to convert the print setting from the DEVMODE structure 203 to the PrintTicket 204. At the time of conversion, a print setting editing module 2081 is used. When printing from the XPS application 202, there are two methods: an XPS file is generated by the XPS application itself, and an XPS file is generated by the operating system in response to a drawing command from the XPS application. In either method, the XPS spool file 206 is generated during printing.

XPSスプールファイル206が生成されたら、プリントフィルタパイプライン211に処理が渡される。プリントフィルタパイプライン211は複数のフィルタを通すことで印刷が行われる仕組みで、フィルタコンフィギュレーションファイル216でフィルタの数や順番を制御する。プリントフィルタパイプライン211で動作するフィルタパイプラインマネージャ212はフィルタコンフィギュレーションファイル216に従って、この実施例では通信フィルタ213、レイアウトフィルタ214、レンダラフィルタ215の順に処理を行う。フィルタはプリンタードライバー1052の構成によって、数や種類が異なる。印刷処理はXPSスプールファイル206をフィルタに受け渡すことで行われ、フィルタがそれぞれXPSスプールファイル206を加工し次のフィルタに渡していくことで処理が進む。   When the XPS spool file 206 is generated, the process is passed to the print filter pipeline 211. The print filter pipeline 211 is a mechanism in which printing is performed by passing a plurality of filters. The filter configuration file 216 controls the number and order of the filters. In this embodiment, the filter pipeline manager 212 operating in the print filter pipeline 211 performs processing in the order of the communication filter 213, the layout filter 214, and the renderer filter 215 in accordance with the filter configuration file 216. The number and type of filters differ depending on the configuration of the printer driver 1052. The printing process is performed by passing the XPS spool file 206 to the filter, and the process proceeds when the filter processes the XPS spool file 206 and passes it to the next filter.

通信フィルタ213は、プリントマネージャ218およびポートモニターを経由してプリンター1042と通信する機能と、直接プリンター1042と通信する機能を持つ。レイアウトフィルタ214は、倍率の変更や製本の面付けレイアウトやスタンプなどレイアウトに関する処理を行う。レンダラフィルタ215では、XPSスプールファイル206をレンダリングしてPDL(PageDescriptionLanguage)に変換する。PDLデータは印刷処理のスケジュール管理を行うプリントマネージャ218で管理され、キュー(待ち行列)に印刷ジョブが次々と登録される。プリンター1042が印刷できる状態になったら、キューに登録した順にポートモニター219を通して送信する。このようにして、アプリケーションからの印刷データをPDLデータに変換することがプリンタードライバーの主な役目であり、印刷処理が行われる。   The communication filter 213 has a function of communicating with the printer 1042 via the print manager 218 and the port monitor, and a function of directly communicating with the printer 1042. The layout filter 214 performs layout-related processing such as magnification change, bookbinding imposition layout, and stamp. The renderer filter 215 renders the XPS spool file 206 and converts it into PDL (Page Description Language). The PDL data is managed by a print manager 218 that manages a print processing schedule, and print jobs are successively registered in a queue (queue). When the printer 1042 is ready to print, it transmits through the port monitor 219 in the order registered in the queue. In this way, conversion of print data from the application into PDL data is the main role of the printer driver, and print processing is performed.

ここで、本実施形態で示すプロパティバッグ2082のDriverPropertyBagについて説明する。DriverPropertyBagとは、機種依存情報が定義されたデータ群のことを指し、本実施例では図5(A)、図5(B)のようなJSON(JavaScript Object Notation)と呼ばれる形式の文字列を保持することとする。JSONは、JavaScriptが利用しやすいデータ形式であり、DriverPropertyBagの定義に沿った形で定義されているものとする。本実施形態では、これらのデータを各言語分作成して格納する。例えば、図5(A)、図5(B)のように日本語用と英語用のParameter追加用のデータを持たせることを想定する。本実施形態では文字列以外のパラメータも定義しているが、文字列の箇所のみ各言語分に分けてもよい。   Here, the DriverPropertyBag of the property bag 2082 shown in the present embodiment will be described. DriverPropertyBag refers to a data group in which model-dependent information is defined, and in this embodiment, holds a character string in a format called JSON (Java Script Object Notation) as shown in FIGS. 5 (A) and 5 (B). I decided to. JSON is a data format that can be easily used by JavaScript, and is defined in a form that conforms to the definition of DriverPropertyBag. In this embodiment, these data are created for each language and stored. For example, it is assumed that data for adding parameters for Japanese and English is provided as shown in FIGS. In the present embodiment, parameters other than the character string are also defined, but only the character string portion may be divided for each language.

次に、PrintCapabilitesに各言語の文字列を追加する処理について、図6のフローチャートを用いて説明する。本実施形態では、PrintCapabilitesを生成する際に動作する印刷設定編集モジュール1081の処理について説明する。   Next, processing for adding a character string of each language to PrintCapabilities will be described with reference to the flowchart of FIG. In the present embodiment, processing of the print setting editing module 1081 that operates when generating PrintCapabilities will be described.

まずステップS600にて印刷編集モジュール1081の処理を開始する。具体的にはOSによって呼び出されるcompletePrintCapabilitiesという関数の処理が該当する。以降、記載がない限り印刷設定編集モジュール1081の処理についての説明となるため、主語は印刷設定編集モジュール1081となる。   First, in step S600, the processing of the print editing module 1081 is started. Specifically, this corresponds to processing of a function called completePrintCapabilities called by the OS. Henceforth, since it becomes description about the process of the print setting edit module 1081 if there is no description, the subject becomes the print setting edit module 1081.

ステップS601において、PrintCapabilitesを受信する。completePrintCapabilitiesが呼び出される場合には、関数の引数にPrintCapabilitesのXMLNodeのI/Fが渡されるため、印刷設定編集モジュール1081は引数で渡されたPrintCapabilitesのXMLNodeを編集することとなる。   In step S601, PrintCapabilities is received. When completePrintCapabilities is called, the PrintCapabilities XMLNode I / F is passed to the function argument, so the print setting editing module 1081 edits the PrintCapabilities XMLNode passed as an argument.

ステップS602において、追加すべき文言のためにLocale情報を取得する。これはOSのAPIを利用してもよいが、Locale情報を取得するためにPrintTicketに存在するJobLocaleとよばれるFeatureのOptionを参照してもよい。これはOSが提供するLocale.gpdと呼ばれるOSが提供するGPDファイルを取り込むことでPrintCapabilitesに追加される印刷設定項目である。これは、インストールされているOSの場所を特定することができる印刷設定であり、印刷設定編集モジュール1081は、このJobLocaleの設定値を参照することで追加する文言の判断を行う。また、プリンターエクステンション210にて、現在のLocale情報をプロパティバッグ2081に保存しておき、印刷設定編集モジュール1081がその情報を参照しても構わない。   In step S602, the locale information is acquired for the wording to be added. This may use the API of the OS, but may refer to an Option of Feature called JobLocal that exists in the PrintTicket in order to acquire Locale information. This is the Local. This is a print setting item added to PrintCapabilities by taking in a GPD file provided by the OS called gpd. This is a print setting that can specify the location of the installed OS, and the print setting editing module 1081 determines a word to be added by referring to the setting value of this JobLocale. Further, the current locale information may be stored in the property bag 2081 in the printer extension 210, and the print setting editing module 1081 may refer to the information.

ステップS603において、Locale情報に応じたDriverPropertyBagを参照する。これは前述したような図5(A)、図5(B)など、各言語で分けられたDriverPropertyBag情報のどれを参照するかを判断する。また、DriverPropertyBag以外のQueuePropertyBagを参照してもよい。これは、ドライバーインストール後にドライバーパッケージに存在しない言語のマルチリンガルに対応するために、外部からのアクセスが可能なQueuePropertyBagに同情報を定義することで、ローカライズのカスタマイズが可能になるためである。その場合、FeatureやOptionの項目もDisplayName属性の編集対象になる。   In step S603, the DriverPropertyBag corresponding to the locale information is referred to. This determines which of the DriverPropertyBag information divided in each language, such as FIG. 5 (A) and FIG. 5 (B) described above, is referred to. Further, a QueuePropertyBag other than the DriverPropertyBag may be referred to. This is because localization can be customized by defining the same information in a QueuePropertyBag that can be accessed from the outside in order to support multilingual languages that do not exist in the driver package after driver installation. In this case, the Feature and Option items are also edit targets of the DisplayName attribute.

ステップS604において、PrintCapabilites内のParameterDefがすでに存在しているかを確認する。本関数のcompletePrintCapabilitiesでは、すでに印刷設定編集モジュール1082が追加処理を行った後のPrintCapabilitesが渡される場合もあるため、該当のParameterDefが存在しているかを判断する必要がある。また、追加されている場合でも正しい文字列になっているかを判定する必要がある。もし、ParameterDefが存在していない場合は、ステップS606に進む。もし、ParameterDefが存在する場合は、ステップS605に進み、現在の文字列がLocale情報にあった文字列が定義されているかを判断する。   In step S604, it is confirmed whether ParameterDef in PrintCapabilities already exists. In this function, completePrintCapabilities, since PrintCapabilities after the print setting editing module 1082 has already performed additional processing may be passed, it is necessary to determine whether the corresponding ParameterDef exists. In addition, it is necessary to determine whether the character string is correct even when it is added. If ParameterDef does not exist, the process proceeds to step S606. If ParameterDef exists, the process proceeds to step S605, and it is determined whether a character string in which the current character string is in the locale information is defined.

ステップS605において、現在のLocale情報にあった表示文字列であった場合は、処理を行わずステップS607に進み、印刷設定編集モジュールの処理を終了する。もし、該当文字列が異なっている場合は、ステップS606に進む。   If it is determined in step S605 that the display character string is in the current locale information, the process proceeds to step S607 without performing any process, and the process of the print setting editing module is terminated. If the character strings are different, the process proceeds to step S606.

ステップS606において、DriverPropertyBagから取得した情報をPrintCapabilitesに反映する。そしてステップS607へ進み、印刷設定編集モジュール1081の処理を終了する。本処理が完了した場合、図7(A)、図7(B)のようにDisplayName属性の箇所が各Locale情報に応じて正しい文字列が定義されたPrintCapabilitesを提供することができる。   In step S606, the information acquired from DriverPropertyBag is reflected in PrintCapabilities. In step S607, the processing of the print setting editing module 1081 is terminated. When this processing is completed, PrintCapabilities can be provided in which the display name attribute portion defines a correct character string according to each locale information as shown in FIGS. 7A and 7B.

上記手段により、GPDに定義できないParameterDefの生成処理に関して、Locale情報によって参照するDriverPropertyBagを切り替えて「機能表示名の文字列」を追加することで、マルチリンガルに対応したPrintCapabilitesを提供することができる。   By the means described above, regarding the ParameterDef generation process that cannot be defined in the GPD, it is possible to provide PrintCapabilities corresponding to multilingual by switching the DriverPropertyBag referenced by the locale information and adding the “character string of function display name”.

101 CPU、102 主記憶装置、105 補助記憶装置 101 CPU, 102 main storage device, 105 auxiliary storage device

Claims (1)

情報処理装置と印刷装置から構成されている情報処理方法において、
XML形式の印刷設定機能情報を受信する手段(ステップS601)と、
ログインしているOSにおけるLocale情報を取得する手段(ステップS602)と、
前記Locale情報に合致するDriverPropertyBagの情報を取得する手段(ステップS603)と、
前記印刷設定機能情報におけるParameter部がすでに存在しているかを判定する手段(ステップS604)と、
前記印刷設定機能情報におけるParameter部が前記Locale情報と合致した機能名文字列となっているかを判断する手段(ステップS605)と、
前記DriverPropertyBagの情報を印刷設定機能情報に反映する手段(ステップS606)と、
を有することを特徴とする画像形成装置およびその制御方法。
In an information processing method including an information processing apparatus and a printing apparatus,
Means for receiving print setting function information in XML format (step S601);
Means for acquiring locale information in the logged-in OS (step S602);
Means for obtaining information of DriverPropertyBag that matches the locale information (step S603);
Means (step S604) for determining whether a Parameter portion in the print setting function information already exists;
Means for determining whether the Parameter portion in the print setting function information is a function name character string that matches the locale information (step S605);
Means for reflecting the information of the DriverPropertyBag in the print setting function information (step S606);
An image forming apparatus and a control method thereof.
JP2015149085A 2015-07-29 2015-07-29 Control device and program in image forming apparatus Pending JP2017033052A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2015149085A JP2017033052A (en) 2015-07-29 2015-07-29 Control device and program in image forming apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2015149085A JP2017033052A (en) 2015-07-29 2015-07-29 Control device and program in image forming apparatus

Publications (1)

Publication Number Publication Date
JP2017033052A true JP2017033052A (en) 2017-02-09

Family

ID=57988845

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015149085A Pending JP2017033052A (en) 2015-07-29 2015-07-29 Control device and program in image forming apparatus

Country Status (1)

Country Link
JP (1) JP2017033052A (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3471389A2 (en) 2017-10-16 2019-04-17 Canon Kabushiki Kaisha Program
JP2019067367A (en) * 2017-09-28 2019-04-25 株式会社リコー Information processing apparatus, program, information processing system, and information processing method
JP2019128637A (en) * 2018-01-22 2019-08-01 日本電気株式会社 Information processing apparatus, print processing method, and computer program
EP3540589A1 (en) 2018-03-15 2019-09-18 Canon Kabushiki Kaisha Program and information processing apparatus

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019067367A (en) * 2017-09-28 2019-04-25 株式会社リコー Information processing apparatus, program, information processing system, and information processing method
JP7243064B2 (en) 2017-09-28 2023-03-22 株式会社リコー Information processing device, program, information processing system and information processing method
EP3471389A2 (en) 2017-10-16 2019-04-17 Canon Kabushiki Kaisha Program
US10747481B2 (en) 2017-10-16 2020-08-18 Canon Kabushiki Kaisha Control method for acquiring data
US11662963B2 (en) 2017-10-16 2023-05-30 Canon Kabushiki Kaisha Control method for acquiring data
JP2019128637A (en) * 2018-01-22 2019-08-01 日本電気株式会社 Information processing apparatus, print processing method, and computer program
EP3540589A1 (en) 2018-03-15 2019-09-18 Canon Kabushiki Kaisha Program and information processing apparatus
US10809955B2 (en) 2018-03-15 2020-10-20 Canon Kabushiki Kaisha Control method and information processing apparatus extending the function of a printer driver
EP4357905A2 (en) 2018-03-15 2024-04-24 Canon Kabushiki Kaisha Program and information processing apparatus

Similar Documents

Publication Publication Date Title
US20170371682A1 (en) Information processing apparatus, information processing method, and storage medium
US9442678B2 (en) Information processing apparatus, information processing system and non-transitory computer-readable information recording medium
JP6552189B2 (en) Information processing apparatus, control method and driver installation program
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
US8786869B2 (en) Updateable printer driver, information processing apparatus, and computer-readable recording medium recording therein printer driver
JP5979893B2 (en) Information processing apparatus, control method, and program
KR20160106494A (en) Information processing system, server apparatus, control method, and storage medium
CN110659003B (en) Information processing apparatus, control method, and storage medium
JP2009211695A (en) Method of building print container and gui program
JP2020004158A (en) Information processing apparatus, method of controlling information processing apparatus, and program
JP2013077284A (en) Information processing apparatus, program, and control method
JP5882623B2 (en) Information processing apparatus, control method, and program
JP2017033052A (en) Control device and program in image forming apparatus
JP2020009420A (en) Information processing device, control method, and control program
US20150355871A1 (en) Information processing apparatus, method for controlling information processing apparatus, and storage medium
US20150178020A1 (en) Information processing apparatus, information processing method, and storage medium
US20170024170A1 (en) Printer driver and information processing device
JP2015184915A (en) Information processing device, information processing method, and program
JP2011227739A (en) Information processing device, control method and program
JP6833419B2 (en) Information processing equipment, methods and programs
JP2018180750A (en) Control apparatus in image forming apparatus and program
JP5900387B2 (en) Printing control apparatus, printing instruction apparatus, printing system, and program
JP2019008673A (en) Information processing apparatus and driver installing method
JP7494006B2 (en) Information processing method and information processing device
JP7171227B2 (en) Information processing device, its control method and application