JP6897074B2 - Information processing equipment, information processing systems, information processing methods, and programs - Google Patents
Information processing equipment, information processing systems, information processing methods, and programs Download PDFInfo
- Publication number
- JP6897074B2 JP6897074B2 JP2016231107A JP2016231107A JP6897074B2 JP 6897074 B2 JP6897074 B2 JP 6897074B2 JP 2016231107 A JP2016231107 A JP 2016231107A JP 2016231107 A JP2016231107 A JP 2016231107A JP 6897074 B2 JP6897074 B2 JP 6897074B2
- Authority
- JP
- Japan
- Prior art keywords
- information
- execution
- unit
- predetermined process
- 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
Links
Images
Landscapes
- Accessory Devices And Overall Control Thereof (AREA)
- Facsimiles In General (AREA)
Description
本発明は、情報処理装置、情報処理システム、情報処理方法、及びプログラムに関する。 The present invention relates to an information processing device, an information processing system, an information processing method, and a program.
Windows(登録商標)2000からWindows7までのWindowsOS(Operating System)では、Version3(以降「V3」と称する)プリンタドライバと呼ばれるプリンタドライバのアーキテクチャが採用されている。また、Windows8以降のWindowsOSでは、V3プリンタドライバに加え、Version4(以降「V4」と称する)プリンタドライバと呼ばれる新しいプリンタドライバのアーキテクチャが採用されている。 In Windows OS (Operating System) from Windows (registered trademark) 2000 to Windows 7, a printer driver architecture called Version 3 (hereinafter referred to as "V3") printer driver is adopted. Further, in Windows 8 or later, in addition to the V3 printer driver, a new printer driver architecture called a Version 4 (hereinafter referred to as "V4") printer driver is adopted.
V4プリンタドライバは、フィルタパイプライン方式を採用しており、例えば、サードパーティを含むベンダが、プリンタドライバに独自のフィルタモジュールを追加することにより、独自の拡張機能を提供可能な技術が知られている(例えば、特許文献1参照)。 The V4 printer driver adopts the filter pipeline method. For example, a technology that allows a vendor including a third party to provide a unique extended function by adding a unique filter module to the printer driver is known. (See, for example, Patent Document 1).
フィルタを含むプリンタドライバにおいて、フィルタが実行する処理に変更を加えたいとき、フィルタに大幅な変更を加える必要がないような処理の変更であっても、フィルタをインストールし直す必要があり、利用者の利便性が損なわれていた。 In a printer driver that includes a filter, when you want to make changes to the processing performed by the filter, you need to reinstall the filter even if the processing changes do not require major changes to the filter. The convenience of the was impaired.
また、V3プリンタドライバでは、例えば、独自のポートモニタ等を用意することにより、プリンタドライバに独自のフィルタモジュールを追加することなく、拡張機能を実現することができる。しかし、V4プリンタドライバでは、独自のポートモニタの利用が制限されており、ベンダが独自のポートモニタを用意して、独自の機能を追加することは困難である。 Further, in the V3 printer driver, for example, by preparing a unique port monitor or the like, it is possible to realize an extended function without adding a unique filter module to the printer driver. However, in the V4 printer driver, the use of the original port monitor is restricted, and it is difficult for the vendor to prepare the original port monitor and add the original function.
このように、従来の技術では、V4プリンタドライバ、又は同様の制限を持つプリンタドライバにおいて、利用者の利便性を維持しつつ、プリンタドライバに独自の拡張機能を追加することには困難を伴っていた。 As described above, in the conventional technology, it is difficult to add a unique extension function to the printer driver while maintaining the convenience of the user in the V4 printer driver or the printer driver having the same limitation. It was.
本発明の実施の形態は、上記の問題点に鑑みてなされたものであって、V4プリンタドライバ、又は同様の制限を有するプリンタドライバにおいて、利用者の利便性を維持しつつ、プリンタドライバに独自の拡張機能を追加することを容易にすることを目的とする。 The embodiment of the present invention has been made in view of the above problems, and is unique to the printer driver while maintaining the convenience of the user in the V4 printer driver or the printer driver having the same restrictions. The purpose is to make it easy to add extensions to.
上記課題を解決するため、本発明の一実施形態に係る情報処理装置は、印刷を制御するプログラムを実行する情報処理装置であって、前記印刷を制御するプログラムが利用可能な記憶領域であって、前記印刷に用いる印刷情報を記憶する印刷情報記憶部を有し、前記印刷を制御するプログラムは、前記印刷の対象となるデータを画像形成装置で印刷可能な印刷データに変換する印刷データ生成部と、前記印刷情報記憶部に記憶された前記印刷情報に、前記印刷データ生成部が生成する前記印刷データに関する所定の処理の実行情報が含まれている場合、該実行情報に基づいて前記所定の処理を実行する処理実行部と、として前記情報処理装置を機能させ、前記所定の処理の実行情報は、前記所定の処理を実現するためのスクリプト、または前記所定の処理を実現するためのスクリプトの取得先を示す参照情報を含み、前記処理実行部は、前記所定の処理の実行情報に前記参照情報が含まれる場合は前記参照情報に示される前記所定の処理を実現するためのスクリプトを実行する。
In order to solve the above problems, the information processing device according to the embodiment of the present invention is an information processing device that executes a program that controls printing, and is a storage area in which the program that controls printing can be used. , A print information storage unit that stores print information used for printing, and a program that controls printing converts the data to be printed into print data that can be printed by an image forming apparatus. When the print information stored in the print information storage unit includes execution information of a predetermined process related to the print data generated by the print data generation unit, the predetermined process is based on the execution information. The information processing apparatus is made to function as a process execution unit that executes a process, and the execution information of the predetermined process is a script for realizing the predetermined process or a script for realizing the predetermined process. The process execution unit includes reference information indicating an acquisition destination, and when the execution information of the predetermined process includes the reference information, executes a program for realizing the predetermined process shown in the reference information. ..
本発明の一実施形態によれば、V4プリンタドライバ、又は同様の制限を有するプリンタドライバにおいて、利用者の利便性を維持しつつ、プリンタドライバに独自の拡張機能を追加することが容易になる。 According to one embodiment of the present invention, in the V4 printer driver or the printer driver having the same limitation, it becomes easy to add a unique extended function to the printer driver while maintaining the convenience of the user.
以下、本発明の実施形態について、図面を参照しながら詳細に説明する。 Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings.
<システム構成>
まず、本実施形態に係る情報処理システム1のシステム構成について、図1を用いて説明する。図1は、一実施形態に係る情報処理システム1の一例のシステム構成を示す図である。
<System configuration>
First, the system configuration of the
図1に示すように、本実施形態に係る情報処理システム1は、1台以上のクライアント装置10と、1台以上の画像形成装置20と、サーバ装置30とを含み、これら装置はLAN(Local Area Network)等のネットワークNを介して互いに通信可能に接続されている。
As shown in FIG. 1, the
クライアント装置10は、例えばPC(パーソナルコンピュータ)、スマートフォン、タブレット端末等である。クライアント装置10は、例えば、ユーザからの印刷指示を受け付けて、印刷対象データから印刷データを作成した上で、印刷データを画像形成装置20に送信する。又は、クライアント装置10は、例えば、ユーザからの印刷指示を受け付けて、印刷対象データをサーバ装置30に送信する。
The
なお、印刷対象データとは、例えば、画像データや文書データ等の印刷可能な電子データである。また、印刷データとは、例えば、印刷対象データを、画像形成装置20が印刷可能なPDL(Page Description Language)形式に変換した電子データである。
The print target data is, for example, printable electronic data such as image data and document data. Further, the print data is, for example, electronic data obtained by converting the print target data into a PDL (Page Description Language) format that can be printed by the
画像形成装置20は、例えばプリンタ、印刷機能を備えたMFP(Multifunction Peripheral)等である。画像形成装置20は、クライアント装置10又はサーバ装置30から受信した印刷データを印刷する。
The
サーバ装置30は、例えばPC等である。サーバ装置30は、例えば、クライアント装置10から受信した印刷対象データから印刷データを作成して、作成した印刷データを画像形成装置20に送信する。
The
また、サーバ装置30は、ファイルサーバとして機能しても良い。すなわち、サーバ装置30は、例えば、クライアント装置10から受信した印刷データを記憶しておき、画像形成装置20からの要求に応じて、記憶した印刷データを要求元の画像形成装置20に送信しても良い。
Further, the
なお、以降では、1台以上のクライアント装置10について、各々を区別するときは、「クライアント装置10−1」、「クライアント装置10−2」等と表す。同様に、1台以上の画像形成装置20について、各々を区別するときは、「画像形成装置20−1」、「画像形成装置20−2」等と表す。
Hereinafter, when distinguishing between one or
<ハードウェア構成>
次に、本実施形態に係る情報処理システム1に含まれるクライアント装置10、画像形成装置20、及びサーバ装置30のハードウェア構成について、図2及び図3を用いて説明する。
<Hardware configuration>
Next, the hardware configurations of the
≪クライアント装置10及びサーバ装置30≫
図2は、一実施形態に係るクライアント装置10及びサーバ装置30の一例のハードウェア構成を示す図である。なお、クライアント装置10及びサーバ装置30は、同様のハードウェア構成を有しているため、以降では、クライアント装置10のハードウェア構成について説明する。
<<
FIG. 2 is a diagram showing a hardware configuration of an example of the
図2に示すように、本実施形態に係るクライアント装置10は、入力装置101と、表示装置102と、外部I/F103と、RAM(Random Access Memory)104とを有する。また、クライアント装置10は、ROM(Read Only Memory)105と、CPU(Central Processing Unit)106と、通信I/F107と、HDD(Hard Disk Drive)108とを有する。これらのハードウェアは、バスBで互いに接続されている。
As shown in FIG. 2, the
入力装置101は、キーボードやマウス、タッチパネル等を含み、ユーザが各操作信号を入力するのに用いられる。表示装置102は、ディスプレイ等を含み、クライアント装置10による処理結果を表示する。なお、入力装置101及び表示装置102の少なくとも一方は、必要なときにクライアント装置10に接続して利用する形態であっても良い。
The
通信I/F107は、クライアント装置10をネットワークNに接続するインタフェースである。クライアント装置10は、通信I/F107を介して通信を行うことができる。
The communication I /
HDD108は、プログラムやデータを格納している不揮発性の記憶装置である。HDD108に格納されるプログラムやデータには、クライアント装置10全体を制御する基本ソフトウェアであるOS(Operating System)、OS上において各種機能を提供するアプリケーションソフトウェア等がある。
The
なお、クライアント装置10は、HDD108に代え、記憶媒体としてフラッシュメモリを用いるドライブ装置(例えばソリッドステートドライブ:SSD)を有して良い。また、HDD108は、格納しているプログラムやデータを所定のファイルシステムやDBにより管理している。
The
外部I/F103は、外部装置とのインタフェースである。外部装置には、記録媒体103a等がある。クライアント装置10は、外部I/F103を介して記録媒体103aの読み取りや書き込みを行うことができる。記録媒体103aには、フレキシブルディスク、CD、DVD、SDメモリカード、USBメモリ等がある。
The external I /
ROM105は、電源を切ってもプログラムやデータを保持することができる不揮発性の半導体メモリである。ROM105には、OS設定、ネットワーク設定等のプログラムやデータ、及びクライアント装置10の起動時に実行されるBIOS(Basic Input/Output System)が格納されている。RAM104は、プログラムやデータを一時保持する揮発性の半導体メモリである。
The
CPU106は、ROM105やHDD108等の記憶装置からプログラムやデータをRAM104上に読み出し、当該プログラムやデータに基づく処理を実行することで、クライアント装置10全体の制御やその他の機能を実現する演算装置である。
The
本実施形態に係るクライアント装置10及びサーバ装置30は、図2に示すハードウェア構成を有することにより、後述するような各種処理を実現できる。
By having the hardware configuration shown in FIG. 2 in the
≪画像形成装置20≫
図3は、一実施形態に係る画像形成装置20の一例のハードウェア構成を示す図である。
<<
FIG. 3 is a diagram showing a hardware configuration of an example of the
図3に示すように、本実施形態に係る画像形成装置20は、コントローラ201と、操作パネル202と、外部I/F203と、通信I/F204と、プロッタ205を有する。また、コントローラ201は、CPU211と、RAM221と、ROM231と、NVRAM241と、HDD251とを有する。
As shown in FIG. 3, the
ROM231は、各種プログラムやデータを格納している不揮発性の半導体メモリである。RAM221は、プログラムやデータを一時保持する揮発性の半導体メモリである。NVRAM241は、例えば設定情報等を格納している。また、HDD251は、各種プログラムやデータを格納している不揮発性の記憶装置である。
The
CPU211は、ROM231やNVRAM241、HDD251等からプログラムやデータ、設定情報等をRAM221上に読み出し、当該プログラムやデータに基づく処理を実行することで、画像形成装置20全体の制御やその他の機能を実現する演算装置である。
The
操作パネル202は、ユーザからの入力を受け付ける入力部と、表示を行う表示部とを有する。外部I/F203は、外部装置とのインタフェースである。外部装置には、記録媒体203a等がある。画像形成装置20は、外部I/F203を介して記録媒体203aの読み取りや書き込みを行うことができる。なお、記録媒体203aには、例えば、ICカード、フレキシブルディスク、CD、DVD、SDメモリカード、USBメモリ等がある。
The
通信I/F204は、画像形成装置20をネットワークNに接続するインタフェースである。画像形成装置20は、通信I/F204を介して通信を行うことができる。プロッタ205は、印刷データを印刷する印刷装置である。
The communication I /
本実施形態に係る画像形成装置20は、図3に示すハードウェア構成を有することにより、後述するような各種処理を実現できる。
The
<クライアント装置10のソフトウェア構成>
次に、本実施形態に係るクライアント装置10のソフトウェア構成について、図4を用いて説明する。図4は、クライアント装置10の一例のソフトウェア構成を示す図である。
<Software configuration of
Next, the software configuration of the
図4に示すように、本実施形態に係るクライアント装置10は、アプリケーション301と、OS302と、プリンタドライバ303と、ストアデバイスアプリ304とを有する。
As shown in FIG. 4, the
アプリケーション301は、例えば文書作成ソフト、画像閲覧・編集ソフト、ブラウザ等、ユーザの印刷指示に応じて、OS302に印刷の指示(要求)を行うことができるアプリケーションソフトである。アプリケーション301には、ストアアプリ311と、デスクトップアプリ321とが含まれる。
The
ストアアプリ311は、例えば、Windows(登録商標)8/WindowsRT及びそれ以降のバージョンのWindowsOSにアプリケーションを提供する「Windowsストア」から、入手可能なアプリケーションである。ストアアプリ311では、「ストアアプリ UI」が用いられる。なお、Windows8及びWindows8.1では、OS302によって提供される「Modern UI」又は「Metro UI」とも称されるUIからストアアプリ311が呼び出される。
The
一方、デスクトップアプリ321は、例えば、Windows7以前のバージョンのWindowsOSにおいても使用可能なアプリケーションである。
On the other hand, the
OS302は、Windows8/WindowsRT及びそれ以降のバージョンのWindowsOSである。
プリンタドライバ303は、例えば、Version4プリンタドライバ(以降では、「V4プリンタドライバ」と表す。)である。V4プリンタドライバとは、Windows8/WindowsRTから採用されたアーキテクチャに基づくプリンタドライバである。以降では、プリンタドライバ303を「V4プリンタドライバ303」とも表す。
The
なお、Windows8以降のWindowsOSでは、Windows2000からWindows7で使用されていたVersion3プリンタドライバ(以降では、「V3プリンタドライバ」と表す。)に加えて、V4プリンタドライバも使用可能である。 In Windows OS after Windows 8, a V4 printer driver can be used in addition to the Version 3 printer driver (hereinafter referred to as "V3 printer driver") used in Windows 2000 to Windows 7.
プリンタドライバ303は、拡張設定部313と、設定制御部323と、描画部333とを含む。
The
拡張設定部313は、プリンタ拡張とも称され、デスクトップアプリ321から印刷を行う場合に、ベンダ独自の印刷設定画面を表示する。
The
設定制御部323は、禁則スクリプトとも称され、例えば、印刷設定の組み合わせが正当であるか否かを検証する。拡張設定部313は、例えば、設定制御部323により正当でないと検証された印刷設定の組み合わせを非表示にすること等ができる。
The setting
また、設定制御部323は、アプリケーション301やOS302等からの要求に応じて、プリンタドライバ303が設定可能な機能の情報を示すPrintCapabilityを返信する。更に、設定制御部323は、アプリケーション301やOS302等からの要求に応じて、プリンタドライバ303に設定されている各種機能の設定値をDevmodePropertyBagから取得し、取得した設定値を示すPrintTicketを返信する。また、PrintTicketで示された設定値をDevmodePropertyBagに保存する。
Further, the setting
なお、OS302に返信されたPrintCapabilityやPrintTicketは、例えば、拡張設定部313が表示する印刷設定画面における各機能の現在値の表示、選択肢の表示等に利用される。
The Print Capacity and Print Ticket returned to the
描画部333は、アプリケーション301において印刷指示が行われた印刷対象データから印刷データを作成する。
The
ストアデバイスアプリ304は、ストアアプリ311から印刷を行う場合に、ベンダ独自の印刷設定画面を表示する。なお、ストアデバイスアプリ304は、ストアアプリ311と同様に、「Windowsストア」から入手可能なアプリケーションである。
The
デスクトップアプリ321から印刷を行う場合、プリンタドライバ303は、拡張設定部313により表示された印刷設定画面で設定された設定内容に基づいて、印刷データを作成することができる。一方で、ストアアプリ311から印刷を行う場合、プリンタドライバ303は、ストアデバイスアプリ304により表示された印刷設定画面で設定された設定内容に基づいて、印刷データを作成することができる。
When printing from the
拡張設定部313及びストアデバイスアプリ304は、ベンダ独自の印刷設定画面を表示するUI部305を構成する。
The
<V4プリンタドライバ303及びストアデバイスアプリ304がアクセス可能な記憶領域>
次に、V4プリンタドライバ303及びストアデバイスアプリ304がアクセス可能な記憶領域について、図5を用いて説明する。図5は、V4プリンタドライバ303及びストアデバイスアプリ304がアクセス可能な記憶領域について説明するための図である。
<Storage area accessible to
Next, the storage area accessible to the
図5に示すように、拡張設定部313、設定制御部323、描画部333、及びストアデバイスアプリ304は、PropertyBag400と呼ばれる記憶領域にアクセスすることができる。なお、このような記憶領域へのアクセスは、OS302によって提供されるAPI(Application Programming Interface)を用いて行うことができる。
As shown in FIG. 5, the
図5に示すように、PropertyBag400には、DriverPropertyBag410と、QueuePropertyBag420と、UserPropertyBag430とが含まれる。
As shown in FIG. 5, the
DriverPropertyBag410は、V4プリンタドライバ303を作成するときに決定された構成情報等を記憶する記憶領域である。拡張設定部313、設定制御部323、描画部333、及びストアデバイスアプリ304は、DriverPropertyBag410から各種情報の読み出しが可能である。一方で、拡張設定部313、設定制御部323、描画部333、及びストアデバイスアプリ304は、DriverPropertyBag410に対して、情報の書き込みを行うことはできない。
The DriverPropertyBag410 is a storage area for storing the configuration information and the like determined when the
QueuePropertyBag420は、論理プリンタ(プリンタアイコン)毎の設定情報等を記憶する記憶領域である。拡張設定部313及びストアデバイスアプリ304は、QueuePropertyBag420に対して、各種情報の読み出し及び書き込みが可能である。また、設定制御部323及び描画部333は、QueuePropertyBag420に対して、各種情報の読み出しが可能である。
The QueenPropertyBag420 is a storage area for storing setting information and the like for each logical printer (printer icon). The
なお、論理プリンタとは、例えば、OS302のプリンタフォルダ等にプリンタアイコンとして表示される仮想的なプリンタである。例えば、クライアント装置10の利用者は、1つの画像形成装置20に対して、設定情報(例えば、用紙サイズや向き、印刷品質等)が異なる複数の論理プリンタを作成することができる。
The logical printer is, for example, a virtual printer displayed as a printer icon in the printer folder of
UserPropertyBag430は、論理プリンタ毎に、ユーザ毎の設定情報等を記憶する記憶領域である。拡張設定部313、設定制御部323、及びストアデバイスアプリ304は、UserPropertyBag430に対して、各種情報の読み出し及び書き込みが可能である。
The UserpropertyBag430 is a storage area for storing setting information and the like for each user for each logical printer. The
また、拡張設定部313及び描画部333は、更に、独自記憶領域500に対して、各種情報の読み出し及び書き込みが可能である。
Further, the
独自記憶領域500は、例えばレジストリやファイル等を用いて実現され、PropertyBag400とは異なる記憶領域である。独自記憶領域500は、V4プリンタドライバ303を提供するベンダ等によって定義される。
The
ストアデバイスアプリ304は、OS302の課す制約により、PropertyBag400以外の記憶領域に対してアクセスすることはできない。また、設定制御部323は、上述したDevmodePropertyBag及びPropertyBag400以外の記憶領域に対してアクセスすることはできない。すなわち、ストアデバイスアプリ304及び設定制御部323は、独自記憶領域500に対して、各種情報の読み出しや書き込み等を行うことができない。
The
このことは、ストアアプリ311に課されている制約と同様であり、例えば、ストアデバイスアプリ304及び設定制御部323が、OS302が使用するレジストリ等を変更し、OS302の動作に悪影響を与えることを防ぐためである。このような技術は、「サンドボックス」等と称されている。
This is the same as the restriction imposed on the
<機能構成>
図6は、一実施形態に係るクライアント装置10の機能構成の例を示す図である。
<Functional configuration>
FIG. 6 is a diagram showing an example of the functional configuration of the
クライアント装置(情報処理装置)10は、画像形成装置20、サーバ装置30等とネットワークNを介して接続され、プリンタドライバ(印刷を制御するプログラム)を実行する情報処理装置である。
The client device (information processing device) 10 is an information processing device that is connected to the
図6において、クライアント装置10は、アプリケーション(アプリケーションプログラム)301、OS302、プリンタドライバ303、印刷情報記憶部610、及び通信部620等を含む。このうち、アプリケーション301、OS302、及びプリンタドライバ303は、図4に示すアプリケーション301、OS302、及びプリンタドライバ303に対応している。
In FIG. 6, the
印刷情報記憶部610は、プリンタドライバ303から利用可能な記憶領域であり、プリンタドライバ303が印刷に用いる情報である印刷情報611を記憶する。印刷情報記憶部610は、例えば、PrintTicket、レジストリ、又は図5で説明したPropertyBag400、独自記憶領域500等で実現可能である。
The print
好ましくは、印刷情報記憶部610は、QueuePropertyBag420、又はPrintTicket等で実現される。なお、PrintTicketは、アプリケーション301が、印刷(ジョブ)毎に作成し、プリンタドライバ303が印刷に用いる情報である印刷情報611を記憶する記憶領域である。
Preferably, the print
この印刷情報611には、例えば、アプリケーション301によって設定された印刷の設定情報、プリンタドライバ303が保持している既定(デフォルト)の設定情報、及び画像形成装置20の情報等が含まれる。
The
また、本実施形態に係る印刷情報611には、描画部333で生成する印刷データに関する所定の処理の実行情報612が含まれる。
In addition, the
この所定の処理には、例えば、印刷データをサーバ装置30にアップロードする処理、印刷データのプレビューを表示する処理、表示したプレビューに対して印刷設定の変更を受け付ける処理等の様々な処理が含まれる。
This predetermined process includes, for example, various processes such as a process of uploading print data to the
また、実行情報612は、例えば、プラグイン実行部603で実行する所定の処理の設定情報、プラグイン実行部603で実行するプラグイン、又はプラグインの取得先を示す参照情報等が含まれる。
Further, the
通信部620は、クライアント装置10が、ネットワークNを介して、画像形成装置20、又はサーバ装置30等と通信するための手段であり、例えば、クライアント装置10で実行されるOS302、及び図2の通信I/F107等によって実現される。
The
プリンタドライバ303は、印刷を制御するプログラムであり、図4の説明で前述したように、拡張設定部313、設定制御部323、及び描画部333を含む。なお、本実施形態では、拡張設定部313、及び設定制御部323は、一般的なプリンタドライバの構成と同様で良いので、ここでは説明を省略する。
The
描画部333は、アプリケーション301において印刷指示が行われた印刷対象データから印刷データを作成する手段であり、例えば、描画制御部601、印刷情報取得部602、プラグイン実行部603、印刷データ生成部604等を含む。なお、描画部333は、例えば、フィルタパイプライン方式を採用するV4プリンタドライバの1つのフィルタモジュール等で実現される。
The
描画制御部601は、印刷を要求するアプリケーションが印刷を開始させたときに、OS302から送られてくる印刷要求(描画命令)に応じて、描画部333の描画処理を制御する。
The
印刷情報取得部602は、例えば、描画制御部601、又は印刷データ生成部604等の要求に応じて印刷情報記憶部610から、描画部333が印刷に用いる印刷情報611を取得する。
The print
プラグイン実行部(処理実行部)603は、印刷情報記憶部610が記憶する印刷情報611に、描画部333で生成する印刷データに関する所定の処理の情報である実行情報612が含まれる場合、実行情報612に基づいて所定の処理を実行する。
The plug-in execution unit (processing execution unit) 603 executes when the
一例として、プラグイン実行部603は、例えば、印刷データをサーバ装置30にアップロードする処理等の所定の処理を実行する機能を予め有している。また、実行情報612には、例えば、アップロード先のパス情報(宛先情報の一例)等、所定の処理を実行するために必要な設定情報等が含まれる。
As an example, the plug-in
別の一例として、実行情報612には、例えば、印刷データをサーバ装置30にアップロードする処理等の所定の処理を実現するためのスクリプト(又は実行ファイル等)や、スクリプトの取得先を示す参照情報等が含まれる。また、プラグイン実行部603は、所定の処理を実現するためのスクリプト(又は実行ファイル等)を実行する。
As another example, the
印刷データ生成部604は、印刷情報記憶部610が記憶する印刷情報611に基づいて、印刷対象データを、画像形成装置20で印刷可能な印刷データに変換する。
The print
上記の構成により、プリンタドライバ303の描画部333は、印刷情報記憶部610に記憶する印刷情報611に所定の処理の実行情報612が含まれている場合、印刷データの生成処理に加えて、所定の処理を実行することができるようになる。
According to the above configuration, when the
また、描画制御部601、印刷情報取得部602、プラグイン実行部603、及び印刷データ生成部604は、1つ以上のフィルタ(描画部333)を含むV4プリンタドライバにおける1つのフィルタの範囲内で提供される。
Further, the
<処理の概要>
続いて、本実施形態に係るクライアント装置10、及び情報処理システム1による情報処理方法の処理の流れについて説明する。
<Outline of processing>
Subsequently, the processing flow of the information processing method by the
(プリンタドライバの描画処理の概要)
図7は、一実施形態に係るプリンタドライバ303の描画処理の概要を示すフローチャートである。
(Outline of drawing process of printer driver)
FIG. 7 is a flowchart showing an outline of the drawing process of the
ステップS701において、プリンタドライバ303の描画制御部601は、印刷を要求するアプリケーション301からの印刷要求に応じて、OS302から通知される印刷(描画)を要求する描画命令を受け付ける。
In step S701, the
ステップS702において、描画制御部601は、印刷情報取得部602を用いて、印刷情報記憶部610から、印刷に用いる情報である印刷情報611を取得する。この印刷情報611には、例えば、アプリケーション301によって設定された印刷の設定情報、プリンタドライバ303が保持している既定の設定情報、画像形成装置20の情報、及び所定の処理の実行情報612等が含まれ得る。
In step S702, the
ステップ703において、描画制御部601は、例えば、印刷データ生成部604に印刷データの生成を指示し、印刷データ生成部604は、印刷情報611に基づいて、印刷対象データを印刷データに変換する(印刷データを生成する)。
In step 703, the
ステップS704において、描画制御部601(又は印刷データ生成部604)は、印刷情報記憶部610に記憶された印刷情報611に、所定の処理の実行情報612が含まれるか否かを判断する。
In step S704, the drawing control unit 601 (or the print data generation unit 604) determines whether or not the
印刷情報記憶部610に記憶された印刷情報611に所定の処理の実行情報612が含まれない場合、描画制御部601(又は印刷データ生成部604)は、処理をステップS707に移行させる。一方、印刷情報記憶部610に記憶された印刷情報611に、所定の処理の実行情報612が含まれる場合、描画制御部601(又は印刷データ生成部604)は、処理をステップS705に移行させる。
When the
ステップS705に移行すると、プラグイン実行部603は、所定の処理の実行情報612に基づいて、処理の処理(例えば、生成した印刷データをサーバ装置30にアップロードする処理等)を実行する。
When the process proceeds to step S705, the plug-in
ステップS706において、描画制御部601は、印刷を実行する印刷データがあるかを判断する。これは、例えば、ステップS705の実行した所定の処理が、印刷データをサーバ装置30にアップロードする処理である場合等、印刷データを印刷しなくても良い場合があるためである。
In step S706, the
印刷を実行する印刷データがない場合、描画制御部601は、描画処理を終了させる。一方、印刷を実行する印刷データがある場合、描画制御部601は、処理をステップS707に移行させる。
When there is no print data to be printed, the
ステップS707に移行すると、描画制御部601は、印刷データ生成部604が生成した印刷データを、OS302のスプーラ等に出力する。印刷データは、OS302により、通信部620を介して、画像形成装置20に送信される。
When the process proceeds to step S707, the
なお、図7に示す処理の流れは一例である。例えば、図7のステップS704、S705の処理は、ステップS703の前で行われるものであっても良い。 The processing flow shown in FIG. 7 is an example. For example, the processes of steps S704 and S705 in FIG. 7 may be performed before step S703.
また、図7のステップS706の処理は省略可能である。例えば、印刷データがない場合、ステップS707において、印刷データは出力されないので、ステップS706の判断を行わずに、ステップS707の処理を実行するものであっても良い。 Further, the process of step S706 in FIG. 7 can be omitted. For example, if there is no print data, the print data is not output in step S707, so the process of step S707 may be executed without making the determination of step S706.
(情報処理システムの処理の例)
続いて、シーケンス図を用いて、本実施形態に係る情報処理システム1による情報処理方法の基本的な処理の流れについて、さらに詳しく説明する。
(Example of processing of information processing system)
Subsequently, the basic processing flow of the information processing method by the
図8は、一実施形態に係る情報処理システムの処理の一例を示すシーケンス図である。 FIG. 8 is a sequence diagram showing an example of processing of the information processing system according to the embodiment.
ステップS801において、アプリケーション301は、利用者による印刷操作を受け付けると、ステップS802において、OS302に印刷を要求する印刷要求を通知する。
When the
ステップS803において、OS302は、アプリケーション301からの印刷要求を受け付けると、プリンタドライバ303に、印刷対象データの描画(印刷データの生成)を指示する描画命令を通知する。なお、プリンタドライバ303に通知された描画命令は、描画部333の描画制御部601によって受け付けられる。
In step S803, when the
ステップS804において、描画制御部601は、OS302から通知される描画命令を受け付けると、印刷情報取得部602に、印刷情報の取得を指示する。
In step S804, when the
ステップS805において、印刷情報取得部602は、印刷情報記憶部610に記憶された印刷情報を読み出す。ここでは、一例として、印刷情報取得部602は、印刷情報記憶部610に記憶された印刷情報611のうち、例えば、アプリケーション301によって保存された印刷の設定情報、プリンタドライバ303の既定の設定情報、及び画像形成装置20の情報等を読み出すものとする。
In step S805, the print
ステップS806において、印刷情報取得部602は、取得した印刷情報を、描画制御部601に出力する。
In step S806, the print
ステップS807において、描画制御部601は、印刷データ生成部604に、印刷データの生成を指示する。この指示には、例えば、ステップS806で取得した印刷情報等が含まれる。
In step S807, the
ステップS808、S809において、印刷データ生成部604は、印刷対象データを記憶するOS302のスプーラから印刷対象データを取得する。
In steps S808 and S809, the print
ステップS810において、印刷データ生成部604は、描画制御部601から通知された印刷情報に基づいて、印刷対象データを、画像形成装置20で印刷可能な印刷データに変換することにより、印刷データを生成する。
In step S810, the print
ステップS811、S812において、印刷データ生成部604は、印刷情報取得部602を用いて、印刷情報記憶部610に記憶された印刷情報611に含まれる実行情報612を取得する。ここでは、印刷情報611に、所定の処理の実行情報612が含まれているものとして、以下の説明を行う。
In steps S811 and S812, the print
ステップS813において、印刷データ生成部604は、取得した実行情報612を用いて、プラグイン実行部603に、所定の処理(プラグイン)の実行を指示する。なお、実行情報612、及び所定の処理の具体的な例については、第1〜4の実施形態で後述する。
In step S813, the print
ステップS814において、プラグイン実行部603は、印刷データ生成部604から指示された所定の処理を実行し、所定の処理を終えると、ステップS815において、所定の処理の実行結果を通知する。
In step S814, the plug-in
ステップS816、S617において、印刷データ生成部604は、印刷を実行する印刷データがある場合、生成した印刷データを、描画制御部601を介して、OS302のスプーラに出力する。
In steps S816 and S617, when there is print data for executing printing, the print
ステップS818において、OS302は、プリンタドライバ303から受け付けた印刷データを、通信部620を用いて、画像形成装置20に送信する。
In step S818, the
ステップS819において、画像形成装置20は、クライアント装置10のOS302から受け付けた印刷データを印刷し、ステップS820において、印刷を完了したことを示す完了通知を、クライアント装置10のOS302に通知する。
In step S819, the
ステップS821、S822、S823において、OS302が受け付けた完了通知は、プリンタドライバ303(描画制御部601)、及びアプリケーション301に通知される。
In steps S821, S822, and S823, the completion notification received by the
なお、図8に示す処理では、印刷データ生成部604が、プラグイン実行部603による所定の処理の実行を制御しているが、この制御は、描画制御部601が行うものであっても良い。
In the process shown in FIG. 8, the print
(別の一例)
図9は、一実施形態に係るシステムの処理の別の一例を示すシーケンス図である。なお、図9のステップS801〜S803、及びS807〜S810の処理は、図8に示す処理と同様なので、ここでは、図8に示す処理との相違点を中心に説明を行う。
(Another example)
FIG. 9 is a sequence diagram showing another example of the processing of the system according to the embodiment. Since the processes of steps S801 to S803 and S807 to S810 of FIG. 9 are the same as the processes shown in FIG. 8, here, the differences from the processes shown in FIG. 8 will be mainly described.
ステップS901において、描画制御部601は、OS302から通知される描画命令を受け付けると、印刷情報取得部602に、印刷情報記憶部610に記憶された、所定の処理の実行情報612を含む印刷情報611の取得を指示する。
In step S901, when the
ステップS902において、印刷情報取得部602は、印刷情報記憶部610に記憶された、所定の処理の実行情報612を含む印刷情報611を読み出す。この印刷情報611には、例えば、アプリケーション301によって保存された印刷の設定情報、プリンタドライバ303の既定の設定情報、画像形成装置20の情報、及び所定の処理の実行情報612等が含まれる。
In step S902, the print
ステップS903において、印刷情報取得部602は、取得した印刷情報611を、描画制御部601に出力する。
In step S903, the print
ステップS904において、描画制御部601は、取得した印刷情報611に含まれる実行情報612を用いて、プラグイン実行部603に、所定の処理の実行を指示する。
In step S904, the
ステップS905において、プラグイン実行部603は、描画制御部601から指示された所定の処理を実行し、所定の処理を終えると、ステップS906において、所定の処理の実行結果を通知する。
In step S905, the plug-in
このように、描画制御部601が、プラグイン実行部603による所定の処理の実行を制御することにより、印刷データ生成部604が印刷データを生成した後とは異なるタイミングで、プラグイン実行部603に所定の処理を実行させることができるようになる。
In this way, the
ステップS807〜S810において、描画制御部601は、印刷データ生成部604に印刷データの生成を実行させて、ステップS907において、印刷データ生成部604から、生成された印刷データを取得する。
In steps S807 to S810, the
ステップS908において、例えば、図8のステップS817〜S823に示す印刷データの送信処理が実行される。 In step S908, for example, the print data transmission process shown in steps S817 to S823 of FIG. 8 is executed.
<処理の詳細>
続いて、具体的な実施形態を例示して、本実施形態に係るクライアント装置10、及び情報処理システム1による情報処理方法の処理の流れについて、詳細に説明する。
<Details of processing>
Subsequently, a specific embodiment will be illustrated, and the processing flow of the information processing method by the
[第1の実施形態]
<機能構成>
図10は、第1の実施形態に係るクライアント装置10の機能構成の一例を示す図である。図10に示すクライアント装置10は、図6に示すクライアント装置10に示す印刷情報記憶部610として、図5で説明したPropertyBag400を利用する。なお、他の機能構成は、図6に示すクライアント装置10と同様である。
[First Embodiment]
<Functional configuration>
FIG. 10 is a diagram showing an example of the functional configuration of the
第1の実施形態では、プラグイン実行部603は、所定の処理の一例として、印刷データ生成部604が生成した印刷データを、ロケーションフリー印刷のファイルサーバであるサーバ装置30の所定のパスに送信する機能を、予め有しているものとする。
In the first embodiment, the plug-in
また、プラグイン実行部603が、印刷データを送信する宛先のパス情報は、印刷情報611に含まれる実行情報612によって、指定されるものとする。
Further, it is assumed that the path information of the destination to which the plug-in
さらに、印刷情報611は、PropertyBag400のQueuePropertyBag420に記憶されているものとする。
Further, it is assumed that the
QueuePropertyBag420は、OS302が提供する機能(例えば、ポイントアンドプリント機能等)を利用して、プリンタドライバ303をクライアント環境に移行させるとき、設定情報等が引き継がれる。したがって、QueuePropertyBag420は、印刷情報611を記憶する印刷情報記憶部610として、好適である。
The QueenPropertyBag420 inherits the setting information and the like when the
<処理の詳細>
図11は、第1の実施形態に係る情報処理システムの処理の一例を示すシーケンス図である。なお、図11のステップS801〜S810の処理は、図8に示す処理と同様なので、ここでは、図8に示す処理との相違点を中心に説明を行う。
<Details of processing>
FIG. 11 is a sequence diagram showing an example of processing of the information processing system according to the first embodiment. Since the processes of steps S801 to S810 of FIG. 11 are the same as the processes shown in FIG. 8, here, the differences from the processes shown in FIG. 8 will be mainly described.
ステップS1101、S1102において、印刷データ生成部604は、印刷情報取得部602を用いて、PropertyBag400に記憶された印刷情報611に含まれる実行情報612を取得する。本実施形態では、実行情報612には、プラグイン実行部603が、印刷データを送信するファイル保存先のパスを示す情報が含まれているものとする。図12(a)に、第1の実施形態に係る印刷情報611に含まれる実行情報612の一例のイメージを示す。
In steps S1101 and S1102, the print
図12(a)の例では、QueuePropertyBag420に記憶された印刷情報611に、ファイルの保存先のパスを示す文字列1201が定義された実行情報612が含まれている。
In the example of FIG. 12A, the
このように、実行情報612は、実行情報612としてのキー1202と、実行情報である文字列とを組合せて、印刷情報611に記憶されている。
As described above, the
図11に戻り、シーケンス図の説明を続ける。 Returning to FIG. 11, the description of the sequence diagram will be continued.
ステップS1103において、印刷データ生成部604は、取得した実行情報612に基づいて、プラグイン実行部603に、所定の処理の実行を指示する。この指示には、例えば、印刷データ、及び実行情報612等が含まれる。
In step S1103, the print
ステップS1104、S1105において、プラグイン実行部603は、所定の処理1000の一例として、印刷データ生成部604が生成した印刷データを、サーバ装置30の所定のパスに送信する処理1000を実行する。
In steps S1104 and S1105, the plug-in
例えば、ステップS1104、S1005において、プラグイン実行部603は、OS302を介して、実行情報612に含まれるサーバ装置30のパス情報に従って、サーバ装置30に印刷データを送信する。
For example, in steps S1104 and S1005, the plug-in
なお、図11に示す処理1000は、プラグイン実行部603が実行する所定の処理の一例である。プラグイン実行部603は、予め定められた処理を、実行情報612に含まれる設定情報に従って実行するものであれば良い。
The
ステップS1106、S1107において、プラグイン実行部603は、所定の処理1000の実行が完了すると、所定の処理が完了したことを示す完了通知を、印刷データ生成部604、描画制御部601等に通知する。
In steps S1106 and S1107, when the execution of the
(別の一例)
図11に示す処理では、印刷情報記憶部610が、PropertyBag400のQueuePropertyBag420である場合の例について説明を行った。
(Another example)
In the process shown in FIG. 11, an example in which the print
ここでは、別の一例として、印刷情報記憶部610が、アプリケーション301が、印刷(ジョブ)毎に作成し、印刷情報611を記憶する記憶領域であるPrintTicketである場合の例について説明する。
Here, as another example, an example will be described in which the print
<機能構成>
図13は、第1の実施形態に係るクライアント装置の機能構成の別の一例を示す図である。図13に示すクライアント装置10は、図6に示すクライアント装置10に示す印刷情報記憶部610として、PrintTicket1320を利用する。
<Functional configuration>
FIG. 13 is a diagram showing another example of the functional configuration of the client device according to the first embodiment. The
この場合、例えば、図5で前述したプリンタドライバ303がアクセス可能な独自記憶領域500等に、既定(デフォルト)のPrintTicket1310を予め記憶しておく。この既定のPrintTicket1310には、実行情報612を含む既定の印刷情報1311が含まれる。
In this case, for example, the
アプリケーション301は、印刷を要求する際に、独自記憶領域500に記憶された既定のPrintTicket1310を用いて、印刷対象データのPrintTicket1320を作成する。この処理により、アプリケーション301が、印刷毎に生成するPrintTicket1320に、独自記憶領域500に記憶した実行情報612が含まれるようになる。
When requesting printing, the
<処理の流れ>
図14は、第1の実施形態に係るアプリケーションの印刷要求処理の一例を示すフローチャートである。
<Processing flow>
FIG. 14 is a flowchart showing an example of print request processing of the application according to the first embodiment.
ステップS1401において、アプリケーション301は、例えば、利用者による印刷処理を受け付ける。
In step S1401, the
ステップS1402において、アプリケーション301は、所定の記憶領域(例えば、独自記憶領域500)に、既定のPrintTicket1310が記憶されているか否かを判断する。
In step S1402, the
所定の記憶領域に、既定のPrintTicket1310が記憶されていない場合、アプリケーション301は、ステップS1403において、通常通り、印刷の設定情報を含む、印刷対象データの印刷に用いるPrintTicketを作成する。
When the
一方、所定の記憶領域に、既定のPrintTicket1310が記憶されている場合、アプリケーション301は、処理をステップS1404に移行させる。
On the other hand, when the
ステップS1404に移行すると、アプリケーション301は、所定の記憶領域から、既定のPrintTicket1310を取得する。
When the process proceeds to step S1404, the
ステップS1405において、アプリケーション301は、既定のPrintTicket1310に、印刷の設定情報を反映し、印刷対象データの印刷に用いるPrintTicket1320を作成する。
In step S1405, the
ステップS1406において、アプリケーション301は、印刷対象データと、作成したPrintTicket1320とを用いて、OS302に印刷を要求する。
In step S1406, the
この例では、図11に示すシーケンス図のステップS1101、S1102において、印刷情報取得部602は、PrintTicket1320に記憶された印刷情報611に含まれる実行情報612を取得すれば良い。他の処理は、前述した図11の処理と同様である。図12(b)に、第1の実施形態に係る印刷情報611に含まれる実行情報612の別の一例のイメージを示す。
In this example, in steps S1101 and S1102 of the sequence diagram shown in FIG. 11, the print
図12(b)の例では、PrintTicket1320に記憶された印刷情報611に、ファイルの保存先のパスを示す文字列1201が定義された実行情報612が含まれている。
In the example of FIG. 12B, the
以上、本実施形態によれば、QueuePropertyBag420、又はPrintTicket1320に記憶された印刷情報611に含まれる実行情報612を用いて、プラグイン実行部603によるファイルの送信先を変更することができるようになる。
As described above, according to the present embodiment, the transmission destination of the file by the plug-in
[第2の実施形態]
第1の実施形態では、プラグイン実行部603が、所定の処理を実行する機能を、予め有している場合の例について説明を行った。
[Second Embodiment]
In the first embodiment, an example in which the plug-in
第2の実施形態では、プラグイン実行部603は、実行情報612に含まれるスクリプト言語に従って処理を実行する場合の例について説明する。
In the second embodiment, the plug-in
スクリプト言語は、比較的単純なプログラムを記述するための、簡易的なプログラミング言語全般を示す。スクリプト言語は、一般的にインタプリタ方式を採用しており、言語を逐次に解釈して実行することができる。 Scripting languages refer to all simple programming languages for writing relatively simple programs. The script language generally adopts an interpreter method, and the language can be interpreted and executed sequentially.
本実施形態では、プラグイン実行部603は、スクリプト言語で作成されたプログラム(以下、スクリプトと呼ぶ)を実行する機能を有しているものとする。
In the present embodiment, it is assumed that the plug-in
また、本実施形態では、印刷情報記憶部610に記憶された印刷情報611に含まれる実行情報612には、スクリプト言語で記述されたスクリプトが記憶されているものとする。
Further, in the present embodiment, it is assumed that the script written in the script language is stored in the
<処理の流れ>
図15は、第2の実施形態に係る情報処理システムの処理の例を示すシーケンス図である。なお、図15のステップS801〜S810の処理は、図8に示す処理と同様なので、ここでは、図8に示す処理との相違点を中心に説明を行う。
<Processing flow>
FIG. 15 is a sequence diagram showing an example of processing of the information processing system according to the second embodiment. Since the processes of steps S801 to S810 of FIG. 15 are the same as the processes shown in FIG. 8, here, the differences from the processes shown in FIG. 8 will be mainly described.
ステップS1501、S1502において、印刷データ生成部604は、印刷情報取得部602を用いて、印刷情報記憶部610に記憶された印刷情報611に含まれる実行情報612を取得する。なお、印刷情報記憶部610は、前述したように、PropertyBag400(例えば、QueuePropertyBag420)、又はPrintTicket1320等を用いることができる。
In steps S1501 and S1502, the print
図16、17は、第2の実施形態に係る実行情報のイメージを示す図である。 16 and 17 are diagrams showing images of execution information according to the second embodiment.
図16(a)は、第2の実施形態に係る印刷情報611に含まれる実行情報612の例1を示している。図16(a)の例では、QueuePropertyBag420(印刷情報記憶部610の一例)に記憶された印刷情報611には、プラグイン実行部603で実行するスクリプト1611が記述された実行情報612が含まれている。このように、印刷情報611に含まれる実行情報612には、例えば、プラグイン実行部603で実行するスクリプト1611が記述されている。
FIG. 16A shows Example 1 of the
図16(b)は、第2の実施形態に係る印刷情報611に含まれる実行情報612の例2を示している。図16(b)の例では、QueuePropertyBag420(印刷情報記憶部610の一例)に記憶された印刷情報611には、プラグイン実行部603で実行するスクリプト1611の取得先を示す参照情報(リンク情報)1622が記述されている。このように、印刷情報611に含まれる実行情報612には、プラグイン実行部603で実行するスクリプトの取得先を示す参照情報が含まれているものであっても良い。
FIG. 16B shows Example 2 of the
図17(a)は、第2の実施形態に係る印刷情報611に含まれる実行情報612の例3を示している。図17(a)に示すように、実行情報612を含む印刷情報611を記憶する印刷情報記憶部610は、PrintTicket1320であっても良い。この場合も同様に、実行情報612には、プラグイン実行部603で実行するスクリプト、又はプラグイン実行部603で実行するスクリプトの取得先を示す参照情報等が含まれる。
FIG. 17A shows Example 3 of the
ここでは、一例として、実行情報612に、印刷データ生成部604が生成した印刷データを、サーバ装置30の所定のパスに送信する処理を実行させるスクリプトが保存されているものとする。ただし、この処理は、所定の処理の一例であり、本実施形態では、実行情報612に保存するスクリプトを変更することにより、プラグイン実行部603に、様々な処理を実行させることができる。
Here, as an example, it is assumed that the
図15に戻り、シーケンス図の説明を続ける。 Returning to FIG. 15, the description of the sequence diagram will be continued.
ステップS1503において、印刷データ生成部604は、取得した実行情報612に基づいて、プラグイン実行部603に、所定の処理の実行を指示する。この指示には、例えば、印刷データ、及び実行情報612(スクリプト)等が含まれる。
In step S1503, the print
ステップS1504、S1505において、プラグイン実行部603は、印刷データ生成部604から通知された実行情報612に含まれる、所定の処理1500を実現するためのスクリプトを実行する。ここでは、プラグイン実行部603は、所定の処理1500の一例として、印刷データ生成部604が生成した印刷データを、サーバ装置30の所定のパスに送信する処理を実行する。
In steps S1504 and S1505, the plug-in
例えば、ステップS1504、S1505において、プラグイン実行部603は、スクリプトを実行することにより、OS302を介して、サーバ装置30に印刷データを送信する。なお、サーバ装置30のパス情報は、例えば、スクリプトに記述されているものとする。
For example, in steps S1504 and S1505, the plug-in
なお、図15に示す所定の処理1500はあくまで一例である。プラグイン実行部603は、実行情報612に記述されたスクリプト、又は実行情報612に示されるリンク先から取得したスクリプトを、を実行するものであれば良い。
The
ステップS1106、S1107において、プラグイン実行部603は、所定の処理1500の実行が完了すると、例えば、所定の処理が完了したことを示す完了通知を、印刷データ生成部604、描画制御部601等に通知する。
In steps S1106 and S1107, when the execution of the
上記の処理により、プリンタドライバ303の描画部333は、印刷情報記憶部610に記憶された印刷情報611に含まれる実行情報612に基づいて、様々な処理の実行することができるようになる。
By the above processing, the
なお、上記の説明では、プラグイン実行部603は、スクリプトを実行するものとして説明を行ったが、変形例として、プラグイン実行部603は、実行情報612に記述された参照情報に基づいて、EXE(Executable)ファイル等の実行ファイルを取得して実行するものであっても良い。
In the above description, the plug-in
図17(b)は、第2の実施形態に係る実行情報の例4を示している。図17(b)の例では、印刷情報記憶部610に記憶された印刷情報611には、プラグイン実行部603が実行する実行ファイルの取得先のパスを示す参照情報1711が記述されている。
FIG. 17B shows Example 4 of execution information according to the second embodiment. In the example of FIG. 17B, the
プラグイン実行部603は、参照情報1711に示されるパスから実行ファイルを取得し、実行する。
The plug-in
以上、本実施形態によれば、印刷情報記憶部610に記憶された印刷情報611に含まれる実行情報612に、所定の処理を実現するためのスクリプトや、参照情報等を記憶し、プリンタドライバ303に様々な処理を実行させることができる。
As described above, according to the present embodiment, the
[第3の実施形態]
第1、2の実施形態では、プラグイン実行部603が実行する処理の一例として、印刷データをサーバ装置30に送信する処理について説明を行った。第3の実施形態では、プラグイン実行部603が実行する処理の別一例として、印刷データのプレビュー処理を行う場合の例について説明する。
[Third Embodiment]
In the first and second embodiments, as an example of the process executed by the plug-in
なお、本実施形態では、プラグイン実行部603は、第2の実施形態と同様に、スクリプト言語で作成されたスクリプトを実行する機能を有しているものとする。
In this embodiment, the plug-in
また、実行情報612には、印刷データ生成部604が生成した印刷データのプレビュー処理を行うスクリプトが記述されているものとして、以下の説明を行う。
Further, assuming that the
<処理の流れ>
(情報処理システムの処理)
図18は、第3の実施形態に係る情報処理システムの処理の例を示す図である。なお、図18のステップS801〜S810の処理は、図8に示す処理と同様なので、ここでは、図8に示す処理との相違点を中心に説明を行う。
<Processing flow>
(Processing of information processing system)
FIG. 18 is a diagram showing an example of processing of the information processing system according to the third embodiment. Since the processes of steps S801 to S810 of FIG. 18 are the same as the processes shown in FIG. 8, here, the differences from the processes shown in FIG. 8 will be mainly described.
また、実行情報612に記述された、プラグイン実行部603で実行するスクリプト1611の記述内容以外の処理は、第2の実施形態と同様なので、詳細な説明は省略する。
Further, since the processing other than the description content of the
ステップS1801、S1802において、印刷データ生成部604は、印刷情報取得部602を用いて、印刷情報記憶部610に記憶された印刷情報611に含まれる実行情報612を取得する。なお、本実施形態では、実行情報612には、プラグイン実行部603で実行するスクリプト1611として、印刷データのプレビュー用のスクリプトが記述されている。
In steps S1801 and S1802, the print
ステップS1803において、印刷データ生成部604は、取得した実行情報612に基づいて、プラグイン実行部603に、所定の処理の実行を指示する。この指示には、例えば、印刷データ、及び実行情報612(プレビュー用のスクリプト)等が含まれる。
In step S1803, the print
続いて、プラグイン実行部603は、印刷データ生成部604から通知された実行情報612に含まれる、プレビュー用のスクリプトを実行することにより、印刷データのプレビュー処理1800を実行する。
Subsequently, the plug-in
例えば、ステップS1804において、プラグイン実行部603は、拡張設定部313、設定制御部323、又はOS302のAPI等を利用して、印刷データを表示装置102にプレビュー表示させる。
For example, in step S1804, the plug-in
ステップS1805において、プラグイン実行部603は、利用者の確認操作を受け付けると、ステップS1806において、実行結果(OK)を印刷データ生成部604に通知する。
When the plug-in
ステップS1807において、印刷データ生成部604は、プラグイン実行部603から、実行結果(OK)を受け付けると、生成した印刷データを、描画制御部601に出力する。
In step S1807, when the print
ステップS1808において、例えば、図8のステップS817〜S823に示すような印刷データの送信処理が実行される。 In step S1808, for example, the print data transmission process as shown in steps S817 to S823 of FIG. 8 is executed.
(印刷データの生成処理)
図19は、第4の実施形態に係る印刷データ生成処理の例を示すフローチャートである。この処理は、例えば、図18のステップS807〜S809、S1801〜S1807で実行される印刷データの生成処理において、プレビュー表示の後に、印刷設定の変更を行う場合の処理の一例を示している。
(Print data generation process)
FIG. 19 is a flowchart showing an example of the print data generation process according to the fourth embodiment. This process shows, for example, an example of a process in which the print setting is changed after the preview display in the print data generation process executed in steps S807 to S809 and S1801 to S1807 of FIG.
ステップS1901において、印刷データ生成部604は、印刷対象データを取得する。この処理は、例えば、図18のステップS808、S809の処理に対応している。
In step S1901, the print
ステップS1902において、印刷データ生成部604は、印刷対象データを画像形成装置20で印刷可能な印刷データに変換することにより、印刷データを生成する。この処理は、例えば、図18のステップS810の処理に対応している。
In step S1902, the print
ステップS1903において、プラグイン実行部603は、生成された印刷データの印刷後のイメージを示す印刷プレビュー画面を、表示装置102等に表示させる。
In step S1903, the plug-in
ステップS1904において、表示させた印刷プレビュー画面に対して、利用者から受け付けた確認結果が「OK」である場合、プラグイン実行部603は、処理をステップS1907に移行させる。一方、利用者から受け付けた確認結果が「OK」でない場合、プラグイン実行部603は、処理をステップS1905に移行させる。
If the confirmation result received from the user is "OK" with respect to the displayed print preview screen in step S1904, the plug-in
ステップS1905に移行すると、プラグイン実行部603は、印刷設定の変更画面を、表示装置102等に表示させる。
When the process proceeds to step S1905, the plug-in
ステップS1906において、プラグイン実行部603は、利用者による印刷設定の変更操作を受け付けると、受け付けた変更を印刷の設定情報に反映し、処理をステップS1902に戻す。
In step S1906, when the plug-in
なお、上記のステップS1903〜S1905の処理は、例えば、図18の印刷データのプレビュー処理1800に対応している。
The process of steps S1903 to S1905 described above corresponds to, for example, the
ステップS1907に移行すると、印刷データ生成部604は、生成した印刷データを、例えば、描画制御部601等に出力する。
When the process proceeds to step S1907, the print
上記の処理により、クライアント装置10の利用者は、印刷データのプレビュー画面を確認し、必要に応じて、印刷の設定情報を変更することができるようになる。
By the above processing, the user of the
このように、本実施形態に係るプリンタドライバ303は、印刷情報記憶部610に記憶されたスクリプトや、参照情報等に応じて、様々な処理を実行することができる。
As described above, the
以上、本発明の各実施形態によれば、V4プリンタドライバ、又は同様の制限を有するプリンタドライバにおいて、利用者の利便性を維持しつつ、プリンタドライバに独自の拡張機能を容易に追加することができるようになる。 As described above, according to each embodiment of the present invention, in the V4 printer driver or the printer driver having the same limitation, it is possible to easily add a unique extended function to the printer driver while maintaining the convenience of the user. become able to.
[第5の実施形態]
<機能構成>
(クライアント装置の機能構成)
図20は、第5の実施形態に係るクライアント装置の機能構成図である。図20に示す第5の実施形態に係るクライアント装置10は、図6に示す一実施形態に係るクライアント装置10の機能構成に加えて、1つ以上の拡張プラグイン2001、及び連携アプリ2002を含む。
[Fifth Embodiment]
<Functional configuration>
(Functional configuration of client device)
FIG. 20 is a functional configuration diagram of the client device according to the fifth embodiment. The
拡張プラグイン2001は、例えば、図2のCPU106で実行されるプログラム、例えば、DLL(Dynamic Link Library)、又は実行ファイル等によって実現される。拡張プラグイン2001は、描画部333のプラグイン実行部603からの制御に従って、例えば、印刷データの変更処理、読出処理、又は転送処理等の様々な拡張機能を実行する。
The extension plug-in 2001 is realized by, for example, a program executed by the
連携アプリ2002は、例えば、図2のCPU106等で実行され、拡張プラグイン2001を用いて拡張機能を実行するための情報を、実行情報612として印刷情報記憶部610に記憶する。例えば、連携アプリ2002は、クライアント装置10にインストールされると、クライアント装置10のプログラム領域(例えば、"C:\ProgramFiles\"等)に、1つ以上の拡張プラグイン2001を配置(コピー)する。また、連携アプリ2002は、プログラム領域に配置した1つ以上の拡張プラグイン2001を配置した場所を示すパス情報、プラグイン名等を含む実行情報612を、印刷情報記憶部610に記憶する。
The
印刷情報記憶部610は、例えば、図5の独自記憶領域500や、QueuePropertyBag420等によって実現され、1つ以上の拡張プラグイン2001に関する実行情報612を記憶する。例えば、独自記憶領域500の一例として、通常のWindowsアプリケーションで使用されるレジストリHKLM(HKEY_LOCAL_MACHINE)等を用いることができる。なお、独自記憶領域500以外に、OS302のポイントアンドプリント機能で情報が引き継がれる他の論理プリンタ毎の記憶領域(例えば、QueuePropertyBag420等)であっても良い。
The print
本実施形態に係るプラグイン実行部(処理実行部)603は、印刷情報記憶部610に記憶された印刷情報611に実行情報612が含まれている場合、実行情報612に従って1つ以上の拡張プラグイン2001を呼び出すことにより、所定の処理を実行する。
When the
なお、上記以外の機能構成については、例えば、図6に示す一実施形態に係るクライアント装置10の機能構成と同様で良い。
The functional configuration other than the above may be the same as the functional configuration of the
図21は、第5の実施形態に係るプラグイン実行部、及び拡張プラグインの機能構成図である。 FIG. 21 is a functional configuration diagram of the plug-in execution unit and the extension plug-in according to the fifth embodiment.
(プラグイン実行部の機能構成)
プラグイン実行部(処理実行部)603は、実行制御部2101を有する。また、好ましくは、プラグイン実行部603は、出力制御部2102を有する。
(Functional configuration of plug-in execution part)
The plug-in execution unit (processing execution unit) 603 has an
実行制御部2101は、印刷情報記憶部610に実行情報612が記憶されている場合、実行情報612に従って、1つ以上の拡張プラグイン2001を呼出して、拡張プラグイン2001による拡張機能の実行を制御する。
When the
出力制御部2102は、1つ以上の拡張プラグイン2001から、印刷データを含む出力要求(印刷要求)を受け付けると、印刷データを画像形成装置20等に出力する制御を行う。例えば、出力制御部2102は、受付した印刷データを、OS302のスプーラ等に出力する。
When the
このように、プラグイン実行部603は、拡張プラグイン2001に対して、印刷データの出力要求を受付するためのインタフェース(出力制御部2102)を備えることができる。
As described above, the plug-in
(拡張プラグインの機能構成)
拡張プラグイン2001は、例えば、処理制御部2103、及び処理部2104を有する。また、好ましくは、拡張プラグイン2001は、出力要求部2105等を有する。
(Functional configuration of extension plug-in)
The expansion plug-in 2001 has, for example, a
処理部2104は、処理制御部2103からの制御に従って、予め定められた処理(拡張機能)を実行する。なお、予め定められた処理には、例えば、印刷データに変更を加える変更処理、印刷データから情報を読出する読出処理、印刷データを転送する転送処理、又は認証処理等が含まれる。
The
処理制御部2103は、描画部333のプラグイン実行部603からの処理要求を受付し、受付した処理要求に従って、処理部2104に処理を実行させる。
The
出力要求部2105は、処理制御部2103が処理(例えば変更処理)を実行した印刷データを、画像形成装置20等に出力する場合、プラグイン実行部603の出力制御部2102に、印刷データの出力を要求する。
When the
このように、拡張プラグイン2001は、描画部333に対して、印刷データの出力を要求することができる。
In this way, the extension plug-in 2001 can request the
なお、例えば、拡張プラグイン2001にて印刷データの転送処理を行った場合等、クライアント装置10から画像形成装置20へ印刷データを出力することが不要である場合、拡張プラグイン2001は、出力要求を行わずに処理の終了の通知のみを行う。
When it is not necessary to output the print data from the
<処理の流れ>
図22は、第5の実施形態に係る情報処理システムの処理の例を示すシーケンス図である。なお、OS302、描画制御部601、印刷データ生成部604、印刷情報取得部602等の処理は、第1〜4の実施形態と同様なので、ここでは詳細な説明は省略する。
<Processing flow>
FIG. 22 is a sequence diagram showing an example of processing of the information processing system according to the fifth embodiment. Since the processes of the
ステップS2201において、OS302は、例えば、デスクトップアプリ321等からの印刷要求に応じて、プリンタドライバ303に、印刷対象データの描画(印刷データの生成)を指示する描画命令を通知する。なお、プリンタドライバ303に通知された描画命令は、描画部333の描画制御部601によって受け付けられる。
In step S2201, the
ステップS2202において、描画制御部601は、OS302から通知される描画命令を受け付けると、印刷情報取得部602に、印刷情報611の取得を指示する。
In step S2202, when the
ステップS2203において、印刷情報取得部602は、印刷情報記憶部610に記憶された印刷情報611を読み出す。なお、ここでは、印刷情報611には、連携アプリ2002等によって記憶された1つ以上の拡張プラグイン2001が実行する処理に関する実行情報612が含まれているものとする。
In step S2203, the print
ステップS2204において、印刷情報取得部602は、取得した印刷情報611を、描画制御部601に通知する。
In step S2204, the print
ステップS2205において、描画制御部601は、印刷データ生成部604に、印刷データの生成を指示する。
In step S2205, the
ステップS2206、S2207において、印刷データ生成部604は、印刷対象データを記憶するOS302のスプーラ等から印刷対象データを取得する。
In steps S2206 and S2207, the print
ステップS2208において、印刷データ生成部604は、印刷対象データを、画像形成装置20で印刷可能な印刷データに変換することにより、印刷データ1を生成する。
In step S2208, the print
ステップS2209において、印刷データ生成部604は、生成した印刷データ1を描画制御部601に通知する。
In step S2209, the print
ステップS2210において、描画制御部601は、ステップS2209で取得した印刷データ1と、ステップS2204で取得した印刷情報611に含まれる実行情報612とを含む実行指示をプラグイン実行部603に通知する。
In step S2210, the
ステップS2211〜S2216において、プラグイン実行部603は、実行指示に含まれる実行情報612に従って、1つ以上の拡張プラグイン2001を呼出して、処理を実行させる。
In steps S221 to S2216, the plug-in
ここで、実行情報612の一例のイメージを図23に示す。図23の例では、実行情報2300は、第1の拡張プラグイン2302と、第2の拡張プラグイン2303とを含む配列2301で定義されている。各プラグインは、例えば、「name」、「path」、「ReadOnly」等の情報要素を含む。
Here, an image of an example of
「name」は、各プラグインの名前(プラグイン名)を示す情報である。「path」は、各プラグインにアクセスするためのパス情報である。「ReadOnly」は、各プラグインが、読出し専用の属性を有している(true)か、読出し専用の属性を有していないか(false)を示す情報である。 “Name” is information indicating the name of each plug-in (plug-in name). "Path" is path information for accessing each plug-in. "ReadOnly" is information indicating whether each plug-in has a read-only attribute (true) or does not have a read-only attribute (false).
なお、図23に示す実行情報2300は、印刷情報記憶部610に記憶される実行情報612の一例である。実行情報612は、1つ以上の拡張プラグイン2001を呼出するための情報が含まれていれば良い。
The
プラグイン実行部603は、実行情報612に含まれるパス情報に従って、例えば、順次に拡張プラグイン2001を呼出することにより、各拡張プラグイン2001に処理を実行させる。
The plug-in
例えば、図22のステップS2211において、プラグイン実行部603の実行制御部2101は、第1の拡張プラグインであるプラグイン1を呼出し、プラグイン1に印刷データ1を通知する。このとき、プラグイン実行部603は、処理の要求元を特定するための情報である論理プリンタ名や、ジョブID等の情報も、拡張プラグイン2001(プラグイン1)に通知する。
For example, in step S2211 of FIG. 22, the
ステップS2212において、プラグイン1の処理制御部2103は、予め定められた処理(例えば、印刷データ1をカラーからモノクロに変換する変更処理等)を、処理部2104に実行させる。
In step S2212, the
ステップS2213において、プラグイン1の処理制御部2103は、変更処理が実行された印刷データ2を含む完了通知を、プラグイン実行部603に通知する。
In step S2213, the
ステップS2214において、プラグイン実行部603の実行制御部2101は、第2の拡張プラグインであるプラグイン2を呼出し、プラグイン2に印刷データ2を通知する。
In step S2214, the
ステップS2215、S2216において、プラグイン2の処理制御部2103は、予め定められた処理(例えば、印刷データ2をサーバ装置30に転送し、印刷データ2を画像形成装置20に出力する処理等)を、処理部2104、及び出力要求部2105に実行させる。
In steps S2215 and S2216, the
これにより、例えば、ステップS2215において、プラグイン2の処理部2104は、印刷データ2をサーバ装置30に転送する処理を実行する。また、ステップS2216において、プラグイン2の出力要求部2105は、印刷データ2の出力(印刷)を描画部333に要求する。
As a result, for example, in step S2215, the
ステップS2217において、プラグイン実行部603の出力制御部2102は、拡張プラグイン2001から、印刷データ2の出力要求を受付すると、印刷データ2の出力要求を描画制御部601に通知する。
In step S2217, when the
ステップS2218、S2219において、描画部333の描画制御部601は、OS302を介して、画像形成装置20に印刷データ2を送信する。
In steps S2218 and S2219, the
ステップS2220において、画像形成装置20は、受信した印刷データ2の印刷を実行する。
In step S2220, the
上記の処理により、プリンタドライバ303は、プリンタドライバ303の外部にある1つ以上の拡張プラグイン2001を呼出して、拡張機能を実行させることができるようになる。また、プリンタドライバ303は、拡張プラグイン2001からの印刷データの出力を受付するインタフェースを有しているので、印刷データの出力を要する拡張機能を、拡張プラグイン2001に実行させることができるようになる。
By the above processing, the
[第6の実施形態]
<機能構成>
(クライアント装置の機能構成)
図24は、第6の実施形態に係るクライアント装置の機能構成図である。図24に示す第6の実施形態に係るクライアント装置10は、図20に示す第5の実施形態に係るクライアント装置10の機能構成に加えて、UI部305が図示されている。このUI部305は、図4に示すUI部305に対応しており、拡張設定部313、ストアデバイスアプリ304等が含まれる。
[Sixth Embodiment]
<Functional configuration>
(Functional configuration of client device)
FIG. 24 is a functional configuration diagram of the client device according to the sixth embodiment. In the
本実施形態に係るUI部305は、プラグイン実行部603からのUI表示要求に従って、設定画面や認証画面等の表示画面(UI)を表示装置102等に表示させて、ユーザの入力操作を受け付ける。なお、UI部305は、拡張設定部313、ストアデバイスアプリ304とは異なるアプリ(実行ファイル)等によって実現されるものであっても良い。
The
図25は、第6の実施形態に係るプラグイン実行部、及び拡張プラグインの機能構成図である。 FIG. 25 is a functional configuration diagram of the plug-in execution unit and the extension plug-in according to the sixth embodiment.
(プラグイン実行部の機能構成)
図25に示す第6の実施形態に係るプラグイン実行部603は、図20に示す第5の実施形態に係るプラグイン実行部603の機能構成に加えて、UI制御部2501を含む。
(Functional configuration of plug-in execution part)
The plug-in
UI制御部2501は、拡張プラグイン2001から、UI(ユーザインタフェース)の表示を要求するUI表示要求を受け付けると、UI表示要求に含まれるUI情報を用いて、例えば、設定画面や認証画面等の表示画面(UI)をUI部305に表示させる。また、UI制御部2501は、UI部305が受け付けた入力データを、要求元の拡張プラグイン2001に通知する。
When the
このように、プラグイン実行部603は、拡張プラグイン2001に対して、UIの表示要求を受付するためのインタフェース(UI制御部2501)を有していることが望ましい。これにより、拡張プラグイン2001の各々でUIを表示させるためのUI表示機能を用意する必要がなくなると共に、1つの印刷処理の中で、複数の表示プロセスが実行されることを低減させることができる。ここで、UI表示機能とは、UIの画面を立ち上げるための実行ファイルである。
As described above, it is desirable that the plug-in
(拡張プラグインの機能構成)
図25に示す第6の実施形態に係る拡張プラグイン2001は、図20に示す第5の実施形態に係る拡張プラグイン2001の機能構成に加えて、UI呼出部2502を含む。
(Functional configuration of extension plug-in)
The extension plug-in 2001 according to the sixth embodiment shown in FIG. 25 includes a
UI呼出部2502は、拡張プラグイン2001から、UIを表示する必要がある場合、プラグイン実行部603のUI制御部2501に、UIの表示を要求する。これにより、拡張プラグイン2001は、プラグイン実行部603のUI制御部2501を利用して、UIの表示を要求することができる。
When it is necessary to display the UI from the extension plug-in 2001, the
<処理の流れ>
図26は、第6の実施形態に係る情報処理システムの処理の例を示すシーケンス図である。なお、図26のステップS2201〜S2210の処理は、図22に示す第5の実施形態に係る処理と同様なので、ここでは、第5の実施形態との相違点を中心に説明を行う。
<Processing flow>
FIG. 26 is a sequence diagram showing an example of processing of the information processing system according to the sixth embodiment. Since the processes of steps S2201 to S2210 of FIG. 26 are the same as the processes of the fifth embodiment shown in FIG. 22, the differences from the fifth embodiment will be mainly described here.
ステップS2601〜S2608において、プラグイン実行部603は、実行指示に含まれる実行情報612に従って、1つ以上の拡張プラグイン2001を呼出して、処理を実行させる。ここでは、実行情報612に、UIを表示させる処理を含むプラグイン3の情報が含まれているものとして以下の説明を行う。
In steps S2601 to S2608, the plug-in
ステップS2601において、プラグイン実行部603の実行制御部2101は、プラグイン3を呼出し、プラグイン3に印刷データ1を通知する。これにより、プラグイン3の処理制御部2103は、予め定められた処理(例えば、UIを表示させて、入力された入力データを用いて印刷データを変更する変更処理等)を、処理部2104に実行させる。
In step S2601, the
ステップS2602において、プラグイン3の処理部2104は、UI呼出部2502を用いて、プラグイン実行部603にUIの表示を要求するUI表示要求を通知する。このUI表示要求には、例えば、UIを表示するためのUI情報が含まれる。なお、このUI情報には、例えば、画面のサイズやタイトル、画面に表示させる内容に関する情報等が含まれる。
In step S2602, the
ステップS2603において、プラグイン実行部603のUI制御部2501は、UI表示要求を受付すると、UI部305にUIの起動を要求し、UI情報を通知する。
In step S2603, when the
ステップS2604において、UI部305は、受付したUI情報を用いてUIを表示し、ユーザによって入力される入力データを受付する。つまり、このUIで表示する表示内容は、拡張プラグイン2001において生成され、UIの表示はUI部305のプロセスにおいて行われる。
In step S2604, the
ステップS2605において、UI部305は、受付した入力データをプラグイン実行部603に通知する。
In step S2605, the
ステップS2606において、プラグイン実行部603のUI制御部2501は、UI部305から受付した入力データを、要求元のプラグイン3のUI呼出部2502に通知する。
In step S2606, the
ステップS2607において、プラグイン3の処理部2104は、UI呼出部2502が受付した入力データを用いて印刷データを変更する変更処理を実行し、印刷データ3を生成する。
In step S2607, the
ステップS2608において、プラグイン3の処理部2104は、出力要求部2105を用いて、印刷データ3の出力(印刷)を描画部333に要求する。
In step S2608, the
なお、上記に示すような変更処理を行う拡張プラグイン2001以外に、サーバ装置30等に印刷データの転送処理を行う拡張プラグイン2001にて、UIを表示することが考えられる。
In addition to the extension plug-in 2001 that performs the change processing as shown above, it is conceivable that the UI is displayed by the extension plug-in 2001 that performs the transfer processing of print data to the
この場合、UI部305は、ステップS2604において、転送処理を行うか否かの選択を表示したUIを表示し、ユーザによる選択操作を受付する。
In this case, in step S2604, the
UI部305が、転送処理を行うという選択を受付した場合、拡張プラグイン2001は、ステップS2607において、印刷データ3をサーバ装置30等に転送し、ステップS2608において、描画部333に、処理の終了の通知を行う。このとき、拡張プラグイン2001は、描画部333に印刷データ3の出力要求は行わない。
When the
一方、UI部305が、転送処理を行わないという選択を受付した場合、拡張プラグイン2001は、ステップS2607において、特に処理を行わずに、ステップS2608において、印刷データ3の出力を描画部333に要求する。
On the other hand, when the
このように、本実施形態によれば、プラグイン実行部603は、拡張プラグイン2001からのUI表示要求に応じて、UI部305にUIを表示させるUI制御部2501を有している。これにより、プリンタドライバ303は、拡張プラグイン2001に、UIを用いて入力された入力データを利用する様々な拡張処理を実行させることができるようになる。
As described above, according to the present embodiment, the plug-in
また、本実施形態では、拡張プラグイン2001は、プラグイン実行部603のUI制御部2501を利用してUIを表示することができる。したがって、クライアント装置10に複数の拡張プラグイン2001を組み込む場合であっても、UI表示をするためのアプリケーション(実行ファイル)を、拡張プラグイン2001毎に配置することが不要となる。これにより、本実施形態に係るクライアント装置10によれば、印刷実行時において1回の印刷処理で、複数の表示プロセスが実行されることを低減させることができる。
Further, in the present embodiment, the extension plug-in 2001 can display the UI by using the
[第7の実施形態]
第5、6の実施形態では、プラグイン実行部603は、印刷データが生成された後に、拡張プラグイン2001を用いて、拡張機能を実行させていた。しかし、これは一例であり、プラグイン実行部603は、他のタイミング、例えば、印刷処理の開始時や、終了時等に、拡張プラグイン2001を用いて、拡張機能を実行させるものであっても良い。
[7th Embodiment]
In the fifth and sixth embodiments, the plug-in
<処理の流れ>
図27は、第7の実施形態に係る情報処理システムの処理の例を示すシーケンス図である。この処理は、印刷処理の開始時に、拡張プラグイン2001を用いて拡張機能を実行する処理の一例を示している。なお、図27のステップS2201〜S2204、及びステップS2205〜S2210の処理は、図22に示す第5の実施形態の処理と同様なので、ここでは、第5の実施形態との相違点を中心に説明を行う。
<Processing flow>
FIG. 27 is a sequence diagram showing an example of processing of the information processing system according to the seventh embodiment. This process shows an example of a process of executing an extended function by using the extended plug-in 2001 at the start of the printed process. Since the processes of steps S2201 to S2204 and steps S2205 to S2210 of FIG. 27 are the same as the processes of the fifth embodiment shown in FIG. 22, the differences from the fifth embodiment will be mainly described here. I do.
また、ここでは、ステップS2204で取得する印刷情報に、例えば、図28に示すような実行情報2800が含まれているものとする。
Further, here, it is assumed that the print information acquired in step S2204 includes, for example, the
図28に示す実行情報2800において、プラグインAの実行情報2801、及びプラグインBの実行情報2803には、図23で説明した「name」、「path」、及び「ReadOnly」の情報要素に加えて、「Timing」の情報要素が含まれている。
In the
「Timing」は、各プラグインの実行タイミングを示す情報の一例であり、例えば、「Start」は、印刷処理の開始したときに拡張プラグイン2001を呼出することを示している。また「Page」は、印刷データを生成したときに拡張プラグイン2001を呼出することを示している。 "Timing" is an example of information indicating the execution timing of each plug-in. For example, "Start" indicates that the extension plug-in 2001 is called when the printing process is started. Further, "Page" indicates that the extension plug-in 2001 is called when the print data is generated.
例えば、図28のプラグインAの実行情報2801において、情報要素「Timing」2802には、「Start」が設定されているので、プラグインAは、印刷処理の開始時に呼出される。また、図29のプラグインBの実行情報2803において、情報要素「Timing」2804には、「Page」が設定されているので、プラグインBは、印刷データの生成時に呼出される。
For example, in the
図27のステップS2701において、描画制御部601は、印刷処理の開始時に呼出するプラグインの実行情報(実行情報A)をプラグイン実行部603に通知する。図28に示す実行情報2800の例では、プラグインAの実行情報2801が、プラグイン実行部603に通知される。
In step S2701 of FIG. 27, the
ステップS2702〜S2710において、プラグイン実行部603は、実行指示に含まれる実行情報Aに従って、プラグインAを呼出して処理を実行させる。ここでは、プラグインAが、UIを用いてユーザの認証処理を行うプラグインであるものとして、以下の説明を行う。
In steps S2702 to S2710, the plug-in
ステップS2702において、プラグイン実行部603の実行制御部2101は、プラグインAを呼出し、プラグインAに処理の実行を開始させる。
In step S2702, the
ステップS2703において、プラグインAの処理部2104は、UI呼出部2502を用いて、プラグイン実行部603にUIの表示を要求するUI表示要求を通知する。このUI表示要求には、例えば、認証画面を表示するためのUI情報が含まれる。
In step S2703, the
ステップS2704において、プラグイン実行部603のUI制御部2501は、UI表示要求を受付すると、UI部305にUIの起動を要求し、UI情報を通知する。
In step S2704, when the
ステップS2705において、UI部305は、受付したUI情報を用いて認証画面のUIを表示し、ユーザによって入力される認証データ(例えばパスワード等)を受付する。
In step S2705, the
ステップS2706において、UI部305は、受付した認証データをプラグイン実行部603に通知する。
In step S2706, the
ステップS2707において、プラグイン実行部603のUI制御部2501は、UI部305から受付した認証データを、要求元のプラグインAのUI呼出部2502に通知する。
In step S2707, the
ステップS2708において、プラグインAの処理部2104は、UI呼出部2502が受付した認証データを用いて認証処理を実行する。
In step S2708, the
ステップS2709において、プラグインAの処理部2104は、描画部222のプラグイン実行部603に認証結果(図27の例では認証OK)を通知する。
In step S2709, the
ステップS2710において、プラグイン実行部603は、描画制御部601に認証結果を含む完了通知を通知する。
In step S2710, the plug-in
描画制御部601は、認証結果がOKである場合、ステップS2205以降の処理を実行させる。一方、描画制御部601は、認証結果がOKでない場合、例えば、印刷処理を終了させる。
When the authentication result is OK, the
このように、描画部333のプラグイン実行部603は、例えば、印刷処理の開始時に拡張プラグイン2001を呼出して、拡張機能を実行させることができる。
In this way, the plug-in
同様に、プラグイン実行部603は、印刷処理の終了時等に拡張プラグイン2001を呼出して、拡張機能を実行させるものであっても良い。この場合、例えば、図28に示す実行情報2800において、「Timing」の情報要素を「End」に設定する。
Similarly, the plug-in
[第8の実施形態]
第1〜7の実施形態では、プリンタドライバ303の各機能がクライアント装置10に含まれるものとして説明を行った。
[8th Embodiment]
In the first to seventh embodiments, each function of the
しかし、例えば、OS302のポイントアンドプリント機能を用いて印刷を行う場合等、プリンタドライバ303に含まれる機能構成は、クライアント装置10とサーバ装置30とに分散されて配置されるものであっても良い。本実施形態では、サーバ装置30で印刷データを生成するサーバサイドレンダリングを行う場合の処理の例について説明する。
However, for example, when printing is performed using the point-and-print function of the
<機能構成>
図29は、第8の実施形態に係る情報処理システムの機能構成図である。
<Functional configuration>
FIG. 29 is a functional configuration diagram of the information processing system according to the eighth embodiment.
本実施形態に係るクライアント装置10は、例えば、図24に示す第6の実施形態に係るクライアント装置10に含まれる機能構成のうち、デスクトップアプリ321、OS302(OS302−1)、プリンタドライバ303、UI部305等を含む。また、クライアント装置10側では、プリンタドライバ303に含まれる機能構成のうち、設定制御部323、及び拡張設定部313等を用いる。
The
一方、本実施形態に係るサーバ装置30は、例えば、図24に示す第6の実施形態に係るクライアント装置10に含まれる機能構成のうち、連携アプリ2002、OS302(OS302−2)、印刷情報記憶部610、プリンタドライバ303、及び1つ以上の拡張プラグイン2001等を含む。また、サーバ装置30側では、プリンタドライバ303に含まれる機能構成のうち、描画部333等を用いる。
On the other hand, the
なお、各部の機能は、例えば、図24に示す第6の実施形態に示す機能構成と同様である。 The functions of each part are the same as those shown in the sixth embodiment shown in FIG. 24, for example.
<処理の流れ>
図30は、第8の実施形態に係る情報処理システムの処理の例を示すシーケンス図である。本実施形態では、クライアント装置10でユーザによる印刷操作が行われ、サーバ装置30側で描画処理が行われる。この場合、サーバ装置30にインストールされたプリンタドライバ303の描画部333による描画処理は、基本的に第5〜7の実施形態と同様である。
<Processing flow>
FIG. 30 is a sequence diagram showing an example of processing of the information processing system according to the eighth embodiment. In the present embodiment, the
ただし、サーバ装置30側の拡張プラグイン2001が、UIを表示させる処理を実行する場合、クライアント装置10側でUIを表示させる必要がある。ここでは、サーバ装置30側の拡張プラグイン2001が、クライアント装置10側でUIを表示させる場合の処理を中心に説明する。
However, when the extension plug-in 2001 on the
ステップS3001において、クライアント装置10のOS302−1は、デスクトップアプリ321から印刷要求を受付する。この印刷要求には、例えば、印刷の設定情報であるPrintTicketが含まれる。また、PrintTicketには、例えば、クライアント装置10のIPアドレス、及び印刷要求に対応するUI部305のプロセスID等が含まれるものとする。なお、このPrintTicketは、例えば、デスクトップアプリ321が、OS302を介して、プリンタドライバ303にPrintTicketの取得を要求したときに、設定制御部323によって生成される。
In step S3001, the OS 302-1 of the
ステップS3002、S3003において、OS302−1は、印刷データの生成を要求する描画命令を、サーバ装置30のOS302−2を介して、サーバ装置30の描画部333の描画制御部601に送信する。
In steps S3002 and S3003, the OS 302-1 transmits a drawing command requesting the generation of print data to the
ステップS3004において、描画制御部601は、描画命令を受け付けると、印刷情報取得部602に、印刷情報611の取得を指示する。
In step S3004, when the
ステップS3005において、印刷情報取得部602は、印刷情報記憶部610に記憶された印刷情報611を読み出す。なお、ここでは、印刷情報611には、連携アプリ2002等によって記憶された1つ以上の拡張プラグイン2001が実行する処理に関する実行情報612が含まれているものとする。
In step S3005, the print
ステップS3006において、印刷情報取得部602は、取得した印刷情報611を、描画制御部601に通知する。
In step S3006, the print
ステップS3007において、描画制御部601は、印刷データ生成部604に、印刷データの生成を指示する。
In step S3007, the
ステップS3008、S3009において、印刷データ生成部604は、印刷対象データを記憶するOS302−2のスプーラ等から印刷対象データを取得する。
In steps S3008 and S3009, the print
ステップS3010において、印刷データ生成部604は、印刷対象データを、画像形成装置20で印刷可能な印刷データに変換することにより、印刷データ1を生成する。
In step S3010, the print
ステップS3011において、印刷データ生成部604は、生成した印刷データ1を描画制御部601に通知する。
In step S3011, the print
ステップS3012において、描画制御部601は、印刷データ1、実行情報612、クライアント装置10のIPアドレス、プロセスID等を含む実行指示をプラグイン実行部603に通知する。
In step S3012, the
ステップS3013〜S3026において、プラグイン実行部603は、実行指示に含まれる実行情報612に従って、1つ以上の拡張プラグイン2001を呼出して、処理を実行させる。ここでは、実行情報612に、UIを表示させる処理を含むプラグイン3の情報が含まれているものとして以下の説明を行う。
In steps S3013 to S3026, the plug-in
ステップS3013において、プラグイン実行部603の実行制御部2101は、拡張プラグイン2001(プラグイン3)を呼出し、拡張プラグイン2001に印刷データ1を通知する。これにより、拡張プラグイン2001の処理制御部2103は、予め定められた処理(例えば、UIを表示させて、入力された入力データを用いて印刷データを変更する変更処理等)を、処理部2104に実行させる。
In step S3013, the
ステップS3014において、拡張プラグイン2001の処理部2104は、UI呼出部2502を用いて、プラグイン実行部603にUIの表示を要求するUI表示要求を通知する。このUI表示要求には、例えば、UIを表示するためのUI情報が含まれる。
In step S3014, the
ステップS3015において、プラグイン実行部603のUI制御部2501は、UI表示要求を受付すると、OS302−2を介して、クライアント装置10にUIの起動を要求するUI起動要求を送信する。このUI起動要求には、例えば、クライアント装置10のIPアドレス、プロセスID、及びUI情報等が含まれる。
In step S3015, when the
別の一例として、プラグイン実行部603のUI制御部2501は、UI情報を含むUI起動要求を描画制御部601に通知するものであっても良い。この場合、描画制御部601は、クライアント装置10のIPアドレス、プロセスIDをUI起動要求に付加し、UI起動要求を、OS302−2を介して、クライアント装置10に送信する。
As another example, the
ステップS3016において、クライアント装置10のUI部305は、受付したUI情報を用いてUIを表示し、ユーザによって入力される入力データを受付する。
In step S3016, the
ステップS3017において、クライアント装置10のUI部305は、入力データを要求元のプラグイン実行部603に通知する。
In step S3017, the
ステップS3018において、プラグイン実行部603のUI制御部2501は、受付した入力データを、要求元の拡張プラグイン2001のUI呼出部2502に通知する。
In step S3018, the
ステップS3019において、拡張プラグイン2001の処理部2104は、UI呼出部2502が受付した入力データを用いて印刷データを変更する変更処理を実行し、印刷データ3を生成する。
In step S3019, the
ステップS3020において、拡張プラグイン2001の処理部2104は、出力要求部2105を用いて、印刷データ3の出力(印刷)を描画部333に要求する。
In step S3020, the
ステップS3021において、プラグイン実行部603の出力制御部2102は、受付した印刷データ3を含む出力要求を描画制御部601に通知する。
In step S3021, the
ステップS3022において、描画制御部601は、OS302−2に印刷データ3を通知することにより、例えば、図29の画像形成装置20により印刷が行われる。
In step S3022, the
このように、プリンタドライバ303の各機能構成は、クライアント装置10とサーバ装置30とに分散して配置されていても、クライアント装置10に配置されているときと同様に処理を実行することができる。
As described above, even if each functional configuration of the
[第9の実施形態]
図31は、第9の実施形態に係る情報処理システムの機能構成図である。本実施形態では、OS302のポイントアンドプリント機能を用いて印刷を行う場合であって、クライアント装置10側で印刷データを生成するクライアントサイドレンダリングを行う場合の例について説明する。
[9th Embodiment]
FIG. 31 is a functional configuration diagram of the information processing system according to the ninth embodiment. In the present embodiment, an example will be described in which printing is performed using the point-and-print function of
この場合、クライアント装置10の機能構成は、例えば、図24に示す第6の実施形態に係るクライアント装置10と同様で良い。図31の例では、クライアント装置10は、サーバ装置30に接続された画像形成装置20を用いて、印刷を実行することができる。この場合、プリンタドライバ303の描画部333の処理は、図26に示す第6の実施形態の処理と同様である。
In this case, the functional configuration of the
また、図31において、OS302のポイントアンドプリント機能を用いて、サーバ装置30からクライアント装置10にプリンタドライバ303をインストールすることができる。この場合、サーバ装置30の印刷情報記憶部610に記憶された印刷情報611、及び実行情報612は、クライアント装置10の印刷情報記憶部610に引き継がれる。
Further, in FIG. 31, the
したがって、例えば、第1〜4の実施形態に示すように、プラグイン実行部603が、実行情報612(例えばスクリプト、宛先情報等)に従って処理を実行する場合、クライアント装置10は、そのまま拡張機能を利用することができる。
Therefore, for example, as shown in the first to fourth embodiments, when the plug-in
1 情報処理システム
10 クライアント装置(情報処理装置)
20 画像形成装置
30 サーバ装置(外部装置)
301 アプリケーション(アプリケーションプログラム)
302 OS
303 プリンタドライバ(印刷を制御するプログラム)
304 ストアデバイスアプリ
305 UI部
311 ストアアプリ
313 拡張設定部
321 デスクトップアプリ
323 設定制御部
333 描画部
400 PropertyBag
420 QueuePropertyBag
603 プラグイン実行部(処理実行部)
604 印刷データ生成部
610 印刷情報記憶部
611 印刷情報
612 実行情報
1320 PrintTicket
2001 拡張プラグイン
2101 実行制御部
2102 出力制御部
2501 UI制御部
1
20
301 application (application program)
302 OS
303 Printer driver (program that controls printing)
304
420 QueenPropertyBag
603 Plug-in execution unit (processing execution unit)
604 Print
2001 Extended plug-in 2101
Claims (12)
前記印刷を制御するプログラムが利用可能な記憶領域であって、前記印刷に用いる印刷情報を記憶する印刷情報記憶部を有し、
前記印刷を制御するプログラムは、
前記印刷の対象となるデータを画像形成装置で印刷可能な印刷データに変換する印刷データ生成部と、
前記印刷情報記憶部に記憶された前記印刷情報に、前記印刷データ生成部が生成する前記印刷データに関する所定の処理の実行情報が含まれている場合、該実行情報に基づいて前記所定の処理を実行する処理実行部と、
として前記情報処理装置を機能させ、
前記所定の処理の実行情報は、
前記所定の処理を実現するためのスクリプト、または前記所定の処理を実現するためのスクリプトの取得先を示す参照情報を含み、
前記処理実行部は、
前記所定の処理の実行情報に前記参照情報が含まれる場合は前記参照情報に示される前記所定の処理を実現するためのスクリプトを実行する
ことを特徴とする情報処理装置。 An information processing device that executes a program that controls printing.
A storage area that can be used by a program that controls printing, and has a print information storage unit that stores print information used for printing.
The program that controls printing is
A print data generation unit that converts the data to be printed into print data that can be printed by an image forming apparatus, and a print data generation unit.
When the print information stored in the print information storage unit includes execution information of a predetermined process related to the print data generated by the print data generation unit, the predetermined process is performed based on the execution information. The process execution part to be executed and
To make the information processing device function as
The execution information of the predetermined process is
Includes reference information indicating the acquisition destination of the script for realizing the predetermined process or the script for realizing the predetermined process.
The processing execution unit
An information processing apparatus characterized in that when the reference information is included in the execution information of the predetermined process, a script for realizing the predetermined process shown in the reference information is executed.
前記所定の処理の実行情報を含む
ことを特徴とする請求項1に記載の情報処理装置。 The print information stored in the print information storage unit is
The information processing apparatus according to claim 1, further comprising execution information of the predetermined process.
前記所定の処理を実行する機能を予め有し、
前記所定の処理の実行情報は、
前記処理実行部が前記所定の処理を実行するための設定情報を含む請求項1又は2に記載の情報処理装置。 The processing execution unit
It has a function to execute the predetermined process in advance, and has a function to execute the predetermined process.
The execution information of the predetermined process is
The information processing apparatus according to claim 1 or 2, wherein the processing execution unit includes setting information for executing the predetermined processing.
論理プリンタ毎に、前記印刷を制御するプログラムの設定情報を記憶する記憶領域である請求項1乃至3のいずれか一項に記載の情報処理装置。 The print information storage unit
The information processing apparatus according to any one of claims 1 to 3, which is a storage area for storing setting information of a program that controls printing for each logical printer.
前記印刷データ生成部、及び処理実行部は、1つのフィルタの範囲内で提供される請求項5に記載の情報処理装置。 The printer driver is a V4 printer driver that includes one or more filters.
The information processing apparatus according to claim 5, wherein the print data generation unit and the processing execution unit are provided within the range of one filter.
前記印刷データ生成部が生成する前記印刷データを、所定の外部装置に送信する処理を含む請求項1乃至6のいずれか一項に記載の情報処理装置。 The predetermined process is
The information processing apparatus according to any one of claims 1 to 6, which includes a process of transmitting the print data generated by the print data generation unit to a predetermined external device.
前記外部装置の宛先情報を含む請求項7に記載の情報処理装置。 The execution information of the predetermined process is
The information processing device according to claim 7, which includes destination information of the external device.
前記印刷データ生成部が生成する前記印刷データのプレビューを表示させる処理を含む請求項1乃至8のいずれか一項に記載の情報処理装置。 The predetermined process is
The information processing apparatus according to any one of claims 1 to 8, which includes a process of displaying a preview of the print data generated by the print data generation unit.
前記情報処理装置は、
前記印刷を制御するプログラムが利用可能な記憶領域であって、前記印刷に用いる印刷情報を記憶する印刷情報記憶部を有し、
前記印刷を制御するプログラムは、
前記印刷の対象となるデータを前記画像形成装置で印刷可能な印刷データに変換する印刷データ生成部と、
前記印刷情報記憶部に記憶された前記印刷情報に、前記印刷データ生成部が生成する前記印刷データに関する所定の処理の実行情報が含まれている場合、該実行情報に基づいて前記所定の処理を実行する処理実行部と、
として前記情報処理装置を機能させ、
前記所定の処理の実行情報は、
前記所定の処理を実現するためのスクリプト、または前記所定の処理を実現するためのスクリプトの取得先を示す参照情報を含み、
前記処理実行部は、
前記所定の処理の実行情報に前記参照情報が含まれる場合は前記参照情報に示される前記所定の処理を実現するためのスクリプトを実行する
ことを特徴とする情報処理システム。 An information processing system including an image forming apparatus that executes printing and an information processing apparatus that executes a program that controls printing by the image forming apparatus.
The information processing device
A storage area that can be used by a program that controls printing, and has a print information storage unit that stores print information used for printing.
The program that controls printing is
A print data generation unit that converts data to be printed into print data that can be printed by the image forming apparatus, and a print data generation unit.
When the print information stored in the print information storage unit includes execution information of a predetermined process related to the print data generated by the print data generation unit, the predetermined process is performed based on the execution information. The process execution part to be executed and
To make the information processing device function as
The execution information of the predetermined process is
Includes reference information indicating the acquisition destination of the script for realizing the predetermined process or the script for realizing the predetermined process.
The processing execution unit
An information processing system characterized in that when the reference information is included in the execution information of the predetermined process, a script for realizing the predetermined process shown in the reference information is executed.
前記印刷を制御するプログラムから利用可能な記憶領域であって、前記印刷に用いる印刷情報を記憶する印刷情報記憶部と、
前記印刷の対象となるデータを画像形成装置で印刷可能な印刷データに変換する印刷データ生成部と、
前記印刷情報記憶部に記憶された前記印刷情報に、前記印刷データ生成部が生成する前記印刷データに関する所定の処理の実行情報が含まれている場合、該実行情報に基づいて前記所定の処理を実行する処理実行部と、
としてコンピュータを機能させ、
前記所定の処理の実行情報は、
前記所定の処理を実現するためのスクリプト、または前記所定の処理を実現するためのスクリプトの取得先を示す参照情報を含み、
前記処理実行部は、
前記所定の処理の実行情報に前記参照情報が含まれる場合は前記参照情報に示される前記所定の処理を実現するためのスクリプトを実行する
ことを特徴とするプログラム。 A program that controls printing
A storage area that is available from the program that controls printing, and is a print information storage unit that stores print information used for printing.
A print data generation unit that converts the data to be printed into print data that can be printed by an image forming apparatus, and a print data generation unit.
When the print information stored in the print information storage unit includes execution information of a predetermined process related to the print data generated by the print data generation unit, the predetermined process is performed based on the execution information. The process execution part to be executed and
Make your computer work as
The execution information of the predetermined process is
Includes reference information indicating the acquisition destination of the script for realizing the predetermined process or the script for realizing the predetermined process.
The processing execution unit
A program characterized in that when the reference information is included in the execution information of the predetermined process , a script for realizing the predetermined process shown in the reference information is executed.
前記印刷を制御するプログラムから利用可能な記憶領域であって、前記印刷に用いる印刷情報を記憶する印刷情報記憶部に前記印刷情報を記憶し、
前記印刷の対象となるデータを画像形成装置で印刷可能な印刷データに変換して、印刷データを生成するステップと、
前記印刷情報記憶部に記憶された前記印刷情報に、前記生成するステップで生成する前記印刷データに関する所定の処理の実行情報が含まれている場合、該実行情報に基づいて前記所定の処理を実行するステップと、
を含み、
前記所定の処理の実行情報は、
前記所定の処理を実現するためのスクリプト、または前記所定の処理を実現するためのスクリプトの取得先を示す参照情報を含み、
前記処理実行部は、
前記所定の処理の実行情報に前記参照情報が含まれる場合は前記参照情報に示される前記所定の処理を実現するためのスクリプトを実行する
ことを特徴とする情報処理方法。 It is an information processing method by an information processing device that executes a program that controls printing.
The print information is stored in a print information storage unit that is a storage area that can be used from the program that controls the print and that stores the print information used for the print.
A step of converting the data to be printed into printable data that can be printed by an image forming apparatus to generate print data, and
When the print information stored in the print information storage unit includes execution information of a predetermined process related to the print data generated in the generation step, the predetermined process is executed based on the execution information. Steps to do and
Including
The execution information of the predetermined process is
Includes reference information indicating the acquisition destination of the script for realizing the predetermined process or the script for realizing the predetermined process.
The processing execution unit
An information processing method comprising executing a script for realizing the predetermined process shown in the reference information when the reference information is included in the execution information of the predetermined process.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/697,609 US10540129B2 (en) | 2016-09-15 | 2017-09-07 | Information processing device, information processing system, and information processing method for executing script included in print information |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016180201 | 2016-09-15 | ||
JP2016180201 | 2016-09-15 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2018049581A JP2018049581A (en) | 2018-03-29 |
JP6897074B2 true JP6897074B2 (en) | 2021-06-30 |
Family
ID=61766421
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2016231107A Active JP6897074B2 (en) | 2016-09-15 | 2016-11-29 | Information processing equipment, information processing systems, information processing methods, and programs |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6897074B2 (en) |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009016936A (en) * | 2007-06-29 | 2009-01-22 | Canon Inc | Image formation system and control method thereof |
JP2009037405A (en) * | 2007-08-01 | 2009-02-19 | Canon Inc | Image processor |
JP5164818B2 (en) * | 2008-12-11 | 2013-03-21 | キヤノン株式会社 | Job processing system, job processing apparatus and control method thereof |
JP2011065557A (en) * | 2009-09-18 | 2011-03-31 | Canon Inc | Print controller, method, and program |
-
2016
- 2016-11-29 JP JP2016231107A patent/JP6897074B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
JP2018049581A (en) | 2018-03-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5528136B2 (en) | Information processing apparatus, information processing apparatus control method, and computer program | |
KR101337160B1 (en) | Information processing apparatus, information processing method and storage medium | |
JP5595035B2 (en) | Information processing apparatus, method and program | |
JP7166741B2 (en) | Information processing apparatus, information processing apparatus control method, image forming apparatus, image forming apparatus control method, information processing system, and program | |
WO2014083757A1 (en) | Information processing apparatus, print server system, method for controlling print server system, and program | |
JP2008159033A (en) | Electronic apparatus and information processing system | |
JP2011187063A (en) | Printing internet inaccessible web content via remote printing service | |
JP2008092556A (en) | System and method for remotely constructing remote interface for image processing device | |
JP2013033422A (en) | Information processing system, information processor, button processing method and program | |
JP7224821B2 (en) | Device diagnostic web system and device diagnostic method | |
JP5786464B2 (en) | Web server, printing apparatus, printing system, and web server program | |
JP2013218445A (en) | Management apparatus, system, control method for management apparatus, and program | |
JP2023153147A (en) | Print setting application, control method, and information processing apparatus | |
JP5137858B2 (en) | Image processing apparatus, image processing method, storage medium, and program | |
CN111638856A (en) | Image forming system, image forming apparatus, output method, and storage medium | |
WO2014136429A1 (en) | Information processing apparatus and method for the same | |
JP6897074B2 (en) | Information processing equipment, information processing systems, information processing methods, and programs | |
JP6160102B2 (en) | Image formation output control system, image formation output control device, and control program | |
JP7006411B2 (en) | Information processing equipment, information processing methods, and programs | |
JP5791467B2 (en) | Management apparatus, management apparatus control method, and program | |
US20180074764A1 (en) | Information processing device, information processing system, and information processing method | |
JP5745013B2 (en) | Image processing system, image processing apparatus, control method in image processing system, control method for image processing apparatus, and program | |
JP2012133590A (en) | Print system, client pc and control method thereof, print server and control method thereof | |
JP7279347B2 (en) | Information processing equipment | |
JP7242203B2 (en) | Information processing device, application and control method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20190903 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20200622 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20200707 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20200824 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20201222 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20210210 |
|
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: 20210511 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20210524 |
|
R151 | Written notification of patent or utility model registration |
Ref document number: 6897074 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R151 |