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

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

Info

Publication number
JP7341647B2
JP7341647B2 JP2018190015A JP2018190015A JP7341647B2 JP 7341647 B2 JP7341647 B2 JP 7341647B2 JP 2018190015 A JP2018190015 A JP 2018190015A JP 2018190015 A JP2018190015 A JP 2018190015A JP 7341647 B2 JP7341647 B2 JP 7341647B2
Authority
JP
Japan
Prior art keywords
printing
application
printer driver
settings
print
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2018190015A
Other languages
English (en)
Other versions
JP2020060849A (ja
JP2020060849A5 (ja
Inventor
琢也 名取
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Priority to JP2018190015A priority Critical patent/JP7341647B2/ja
Priority to US16/591,078 priority patent/US11068212B2/en
Publication of JP2020060849A publication Critical patent/JP2020060849A/ja
Priority to US17/360,920 priority patent/US11733936B2/en
Publication of JP2020060849A5 publication Critical patent/JP2020060849A5/ja
Priority to JP2023081974A priority patent/JP2023107788A/ja
Priority to US18/358,765 priority patent/US20230367522A1/en
Application granted granted Critical
Publication of JP7341647B2 publication Critical patent/JP7341647B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1202Dedicated interfaces to print systems specifically adapted to achieve a particular effect
    • G06F3/1203Improving or facilitating administration, e.g. print management
    • G06F3/1205Improving or facilitating administration, e.g. print management resulting in increased flexibility in print job configuration, e.g. job settings, print requirements, job tickets
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1224Client or server resources management
    • G06F3/1228Printing driverless or using generic drivers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1229Printer resources management or printer maintenance, e.g. device status, power levels
    • G06F3/1232Transmitting printer device capabilities, e.g. upon request or periodically
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1237Print job management
    • G06F3/1242Image or content composition onto a page
    • G06F3/1243Variable data printing, e.g. document forms, templates, labels, coupons, advertisements, logos, watermarks, transactional printing, fixed content versioning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1237Print job management
    • G06F3/1253Configuration of print job parameters, e.g. using UI at the client
    • G06F3/1254Automatic configuration, e.g. by driver
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1275Print workflow management, e.g. defining or changing a workflow, cross publishing
    • G06F3/1276Print workflow management, e.g. defining or changing a workflow, cross publishing within a printer driver, e.g. driver resides either on a server or on a client
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1278Dedicated interfaces to print systems specifically adapted to adopt a particular infrastructure
    • G06F3/1285Remote printer device, e.g. being remote from client or server
    • G06F3/1288Remote printer device, e.g. being remote from client or server in client-server-printer device configuration

Description

本発明は、印刷装置と通信する情報処理装置、制御方法、及びプログラムに関する。
プリンタドライバを利用し、印刷装置に対して印刷データを送信する構成が一般に知られている。情報処理装置には、基本ソフトウェアであるオペレーティングシステム(OS)がインストールされており、プリンタドライバはそのOSの規定するプリントアーキテクチャに従って構成され、OSから呼び出されて動作する。印刷装置を提供するベンダは、OSの仕様に適合するプリンタドライバを提供する。OSとプリンタドライバは、協働して出力先の印刷装置を用いて印刷を行う機能を実現する。
ところで、OSとしてMicrosoft(登録商標)のWindows(登録商標)8より前のバージョンを利用する場合、プリンタドライバは、V3プリンタドライバと呼ばれるアーキテクチャで構成される。
また、Windows8.1以降において、V4プリンタドライバと呼ばれるアーキテクチャが登場している。V4プリンタドライバは、セキュリティ性が重視されているため、プリンタドライバそのものの拡張性がV3プリンタドライバと比較して低下している。このような拡張性の低下を補うため、印刷装置を提供するベンダは、プリンタドライバの機能を補助するための専用のアプリケーションを提供することができる。このアプリケーションはUWP Device Apps(Universal Windows Platform Device Apps)と呼ばれる。UWP Device Appsは、ストアアプリケーション(UWP)から印刷を行う際のユーザエクスペリエンスを高めることができる。また、V4プリンタドライバには、ベンダ独自の印刷設定を行うための印刷設定アプリケーションであるPrinterExtensionを紐付けることができる。
また、従来、機能が異なる複数種類の印刷装置を制御するためのプリンタドライバとしてユニバーサルプリンタドライバと称されるプリンタドライバが知られている(特許文献1)。当該プリンタドライバでは、機種やモデル毎に個々の印刷装置に好適な操作画面を表示することができる。
更に、プリンタドライバを使用せずに、印刷装置に対して印刷データを送信できるようにすることが考えられている。例えば、Ubuntu(登録商標)17.04では、OSのデフォルト機能として、IPP Everywhere(登録商標)に対応する印刷装置に対して印刷データを送信する仕組みが搭載されている。IPP Everywhereは、様々な印刷装置を使用した印刷を可能とする一連の規格であり、業界団体などで規格の策定や普及活動が行われている。
特開2011-243067
特許文献1に開示されているようなユニバーサルプリンタドライバは、ベンダ毎に提供されることが一般的である。従って、同じベンダが販売している機能が異なる複数種類の印刷装置については、1つのユニバーサルプリンタドライバで対応することができた。しかしながら、異なるベンダの印刷装置を1つのユニバーサルプリンタドライバで対応することは困難であった。これは、ベンダ毎に各々異なる通信方式、PDL(ページ記述言語)やJDL(ジョブ記述言語)で印刷データのやりとりを行っているため、統一することが難しいといった事情に起因する。また、印刷設定項目に関してもベンダ毎に設定項目が異なっている、又は、同じような設定項目であっても解釈が違うなどの事情があり、1つのユニバーサルプリンタドライバで対応することが困難であった。
前述したように、IPP Everywhereなどに代表されるIPPに準拠する仕組みを使用した共通のプリンタドライバやプリントクライアントを提供することが考えられる。しかしながら、IPPに準拠する共通のプリンタドライバでは、ベンダが独自に作りこんで提供する機能を利用することができないという問題がある。
この問題を鑑みて、このような、共通のプリンタドライバに対しても、従来技術のようにベンダ独自の印刷設定を行うための拡張アプリケーションを紐付けることが考えられる。
ここで、ベンダが独自に作りこんで提供する機能の一つに、地紋印刷機能がある。地紋印刷機能とは、印刷物の背景または前景に、その印刷物をコピーすると特定の文字列や図形が浮かび上がるように地紋を印刷する機能である。この機能を利用することで、印刷物の原本とコピーの判別が可能になり、印刷物の偽造防止やコピーの抑止が期待できる。このような地紋印刷機能では、出力先の印刷装置の出力特性(モデルごとの特性パラメータ)に合わせて、適切に背景画像を生成する必要がある。このようなモデルごとに異なる特性パラメータを拡張アプリケーション内に全て格納すると、アプリケーションのサイズが肥大化してしまう恐れがある。また、新機種を発売する度に拡張アプリケーションを修正する必要があり、運用コストが増大するという懸念もある。
本発明は上述の問題点の少なくとも1つを鑑みなされたものである。本発明は、共通プリンタドライバで使用する印刷装置を追加する際に、当該印刷装置に対応する拡張アプリケーションに対し、印刷装置の特性パラメータを提供する仕組みを提供することを目的の1つとする。また、本発明の別の目的は、共通プリンタドライバを使用する際の印刷の利便性を高める仕組みを提供することを目的の1つとする。
上記の少なくとも1つの目的を達成するために本発明はユーザによる設定に基づく第2の画像データを第1の画像データに付加する画像付加機能を有さないプリンタドライバであって、異なる複数のベンダのプリンタで印刷可能な印刷データを生成する前記プリンタドライバと印刷装置の機種情報を対応付けて記憶する情報処理装置にインストールされるアプリケーションであって、前記アプリケーションは前記情報処理装置に、前記プリンタドライバと対応づけて記憶された前記情報により特定される前記印刷装置が印刷データの送信先として選択されている状態で、前記印刷装置が実行することができる前記画像付加機能である地紋機能に関する能力情報である前記印刷装置の特性パラメータに基づき前記画像付加機能により付加される前記第2の画像データに関する設定を受け付ける設定画面を表示する表示制御工程と、前記第1の画像データを取得する取得工程と、前記設定画面を介して設定された前記第2の画像データに関する設定に基づき、取得した前記第1の画像データに前記第2の画像データを付加した印刷データを生成する生成工程と、前記生成工程において生成した前記印刷データを提供する提供工程と、を実行させることを特徴とする。
本発明の1つの側面としては、共通プリンタドライバで使用する印刷装置を追加する際に、当該印刷装置に対応する拡張アプリケーションに、印刷装置の特性パラメータを提供することができるようになる。従って、拡張アプリケーションが印刷装置の特性パラメータに合わせた適切な拡張機能を提供できるようになる。また、本発明の別の側面としては、共通プリンタドライバを使用する際の利便性を高めることができるようになる。
印刷システムの一例を示す図である。 コンピュータ101のハードウェア構成の一例を示す図である。 コンピュータ101のソフトウェア構成の一例を示す図である。 コンピュータ101におけるドライバと印刷拡張アプリの関連付けの一例を説明するフローチャートである。 ドライバと印刷拡張アプリの関連付けの一例を説明する模式図である。 コンピュータ101における印刷処理の一例を説明するフローチャートである。 コンピュータ101のディスプレイ207に表示される画面と当該画面を介してなされる設定値の一例を示す図である。 コンピュータ101における印刷処理の一例を説明するフローチャートである。 コンピュータ101における印刷処理の一例を説明するフローチャートである。 コンピュータ101における印刷処理の一例を説明するフローチャートである。 コンピュータ101のディスプレイ207に表示される画面と当該画面を介してなされる設定値の一例を示す図である。
以下、本発明を実施するための実施形態について図面を用いて説明する。なお、以下の実施の形態は特許請求の範囲に係る発明を限定するものでなく、また実施の形態で説明されている特徴の組み合わせのすべてが発明の解決手段に必須のものとは限らない。
<第1の実施形態>
まず図1を用いて、本発明に係る印刷システムの構成を説明する。本実施形態の印刷システムは、情報処理装置の一例であるクライアントコンピュータ101、クライアントコンピュータ101へ対してデータを配信するサーバ105と、印刷装置102~104を備える。各装置は、Wide Area Network(WAN)を含むネットワーク100を通じて相互に通信可能である。
なお、印刷装置102~104は、印刷機能のみを備えるシングルファンクションプリンタでも、印刷機能、スキャン機能、複写機能を備えるマルチファンクションプリンタでも構わない。また、クライアントコンピュータ101は、ネットワーク100に対し一台に限らず、複数台接続されていてもよい。印刷装置102は、ページ記述言語(PDL)形式の印刷データを外部から受信し印刷を行うことができる。
クライアントコンピュータ101は、印刷装置102などに印刷データを送信することができる。サーバ105は、タッチアプリケーションや印刷拡張アプリケーション、プリンタドライバ、拡張INFのパッケージなどをクライアントに配信するサーバである。本実施形態では一例としてサーバ105が各パッケージを提供する場合を例示しているがこれに限定されるものではない。各パッケージは、複数の異なるサーバが配信していてもよい。また、各パッケージ配信のためのサーバは、クラウドサーバ等であっても構わない。
図2は、図1のクライアントコンピュータ101のハードウェア構成を示すブロック図である。CPU(Central Processing Unit)201を含む制御部は、クライアントコンピュータ101全体の動作を制御する。CPU201は、ROM(Read Only Memory)203又は外部メモリ209に記憶されたプログラムをRAM(Random Access Memory)202に展開し、それを実行することで各種制御を行う。RAM202は、CPU201の主記憶メモリであり、ワークエリア又は各種プログラムを展開するための一時記憶領域として用いられる。ROM203は、CPU201で実行可能な制御プログラムやブートプログラム等を格納する。外部メモリI/F(インタフェース)208を介して制御部に接続される外部メモリ209は、OS210、共通プリンタドライバ211、アプリケーション212などを記憶する。
本実施形態では外部メモリ209としてHDD(Hard Disk Drive)等の補助記憶装置を想定しているが、HDDの代わりにSSD(Solid State Drive)などの不揮発性メモリを用いるようにしても良い。このように、CPU201、RAM202、ROM203、外部メモリ209等のハードウェアは、いわゆるコンピュータを構成している。
操作入力装置I/F204は、キーボードやポインティングデバイス(マウス)、タッチ入力デバイスなどの操作入力装置205を制御するインタフェースである。操作入力装置205は、ユーザからの操作を受け付ける受付部として機能する。ディスプレイI/F206はディスプレイ207への画面の表示を制御する。ディスプレイ207は、ユーザに対して情報を表示する表示部として機能する。
クライアントコンピュータ101は、ネットワークI/F213を介してネットワーク100に接続される。ネットワークI/F213は、ネットワーク100上の印刷装置に印刷データを送信したり、ネットワーク100上のサーバ105からストアアプリケーションやプリンタドライバなどを受信したりする。なお、ネットワーク100上の外部端末とのデータ通信は例えばIEEE802.11シリーズに準拠する無線通信やLTEや5Gなどの移動通信システムや、LANケーブルなどの有線ケーブルを介した通信である。
続けて、図3を用いて、クライアントコンピュータ101のソフトウェア構成の一例について説明する。まず、クライアントコンピュータ101内の動作ソフトウェアについて説明する。クライアントコンピュータ101内のソフトウェアは、OS210とアプリケーション212から構成される。
まず、OS210を構成する個々の要素について説明する。OS210は、クライアントコンピュータ101は管理制御を行う。本実施形態のOS210は、印刷システム300、プリンタドライバ格納領域310、外部設定ファイル群320を備えている。
印刷システム300は、プリントキュー301、スプーラ302、フィルタパイプラインマネージャ303、コンフィグレーションモジュール304、印刷時起動アプリランチャ305から構成される。
プリントキュー301は、ネットワーク100内に存在する印刷装置を使用して印刷を行う際に、印刷ジョブを一時的に保存する領域であり、複数個存在することができる。本実施形態では、説明のため、印刷装置102乃至104に対応するプリントキュー301が作成されているものとする。
スプーラ302は、アプリケーション212のいずれかから印刷された印刷対象データであるXPS(XML Paper Specification)ファイルを一時的に保存および管理するモジュールである。スプーラ302に保存されたXPSファイルは、フィルタパイプラインマネージャ303を通して、PDL(Page Description Language)に変換された後に、スプーラ302を通じて印刷装置へ送信される。
フィルタパイプラインマネージャ303は、1つ以上のフィルタ311をロードして、XPSファイルをPDLファイルへと変換するモジュールである。フィルタパイプラインマネージャ303は、OS210が提供する印刷アーキテクチャの一部として構成される。
OS210は、フィルタコンフィグ312の定義に基づき、共通プリンタドライバ211を構成する要素の一つである1つ以上のフィルタ311を読み込み、そのフィルタ311を使用してPDLを生成する。PDLは、例えば、PCL(Printer Control Language)やPDF(Portable Document Format)などを採用することができる。
コンフィグレーションモジュール304は、PrintTicketの生成、変更を行うモジュールである。また、コンフィグレーションモジュール304は、組み合わせることができない設定が行われないよう制限する禁則機能を有する。また、コンフィグレーションモジュール304はプリンタの能力情報であるPrintCapabilitiesを管理する。印刷拡張アプリ350の詳細印刷設定UI部352、印刷時起動バックグラウンドタスク部353と印刷時起動UI部354は、コンフィグレーションモジュール304が提供するAPIを呼び出すことができる。各部は、当該APIを呼び出すことで、XML(Extensible Markup Language)形式のPrintTicketやPrintCapabilitiesを取得することができる。共通プリンタドライバ211は、互いに競合する印刷設定の組み合わせを示す禁則ルールやデバイスの機能が記述されたデバイス機能テキストファイル群313や、スクリプトファイル群314をOS210に提供する。これらのファイル群は、相手先の印刷装置ごとに別のファイルが記憶される。即ち、デバイス機能テキストファイル群313とスクリプトファイル314群の中から選択されたファイルに基づき、コンフィグレーションモジュール304の動作はカスタマイズされる。
印刷時起動アプリランチャ305は、印刷時起動バックグラウンドタスク部353などが提供するバックグラウンドタスクの実行を制御するモジュールである。印刷時起動アプリランチャ305は、ユーザにより印刷開始指示が入力されたことをOS210が検知し、印刷を行う場合に、印刷時起動バックグラウンドタスク部353を起動する。なお、レジストリ322にバックグラウンドタスクの起動を無効とする設定が記憶されている場合、OS210はバックグラウンドタスクの実行を抑制する。
プリンタドライバ格納領域310は共通プリンタドライバ211などのプリンタドライバが保存される領域である。なお、本実施形態では、一例として共通プリンタドライバ211がインストールされている場合を例示しているが、共通プリンタドライバ211に加えて、それ以外のプリンタドライバがインストールされていても構わない。共通プリンタドライバ211は、フィルタ311、フィルタコンフィグ312、デバイス機能テキストファイル群313、スクリプトファイル群314、INF群315から構成される。なお、本実施形態では、フィルタ311及びフィルタコンフィグ312はいずれの印刷装置を使用する場合も共通である。一方、ファイル群313~314及びINF群315は、相手先の印刷装置毎に別のファイルとして保存される。共通プリンタドライバ211は、ユーザにより選択された出力先のプリンタに応じて、コンフィグレーションモジュール304が使用するファイルを切り替える。なお、本実施形態では、共通プリンタドライバ211は、複数のベンダの印刷装置に対応するユニバーサルプリンタドライバであり、当該ドライバ単体でIPPに準拠する印刷設定が行えるものとする。本実施形態において、共通プリンタドライバ211は、ユーザによりインストールされたドライバであることを想定しているがこれに限定されるものではない。例えば、共通プリンタドライバ211は、OS210にプリインストールされていてもよい。
フィルタ311は、フィルタパイプラインマネージャ303によって呼び出されるフィルタであり、入力されたXPSファイルをPDLへと変換して出力する機能を有する。フィルタコンフィグ312は、フィルタパイプラインマネージャ303が参照する定義ファイルであり、1つ以上のフィルタ311を呼び出す順序が記述されている。デバイス機能テキストファイル群313とスクリプトファイル群314、コンフィグレーションモジュール304によって呼び出されるファイルであり、コンフィグレーションモジュール304の動作をカスタマイズできる。INF群315は、共通プリンタドライバ211をセットアップするための設定情報が記載されたテキストファイルである。
ここで、前述したように、IPP Everywhereなどに代表されるIPPに準拠する仕組みを使用した共通のプリンタドライバやプリントクライアントを提供することが考えられる。しかしながら、複数のベンダの印刷装置を利用可能な共通のプリンタドライバでは、IPPに準拠する印刷設定しか利用できず、ベンダが独自に作りこんで提供する機能を利用することができないという問題がある。
この問題を鑑みて、このような、共通のプリンタドライバに対しても、ベンダ独自の印刷設定を行うための拡張アプリケーションを紐付けることが考えられる。
ところで、ベンダが独自に作りこんで提供する機能の一つに、地紋印刷機能がある。地紋印刷機能とは、印刷物の背景または前景に、その印刷物をコピーすると特定の文字列や図形が浮かび上がるように地紋を印刷する機能である。この機能を利用することで、印刷物の原本とコピーの判別が可能になり、印刷物の偽造防止やコピーの抑止が期待できる。このような地紋印刷機能では、出力先の印刷装置の出力特性(モデルごとの特性パラメータ)に合わせて、適切に背景画像を生成する必要がある。このようなモデルごとに異なる特性パラメータを拡張アプリケーション内に全て格納すると、アプリケーションのサイズが肥大化してしまう恐れがある。また、新機種を発売する度に拡張アプリケーションを修正する必要があり、運用コストが増大するという懸念もある。
これを鑑み、本実施形態では、共通プリンタドライバで使用する印刷装置を追加する際に、当該印刷装置に対応する拡張アプリケーションに対し、印刷装置の特性パラメータを適切に提供できるようにする。以下具体的に説明する。
図3の説明に戻り、外部設定ファイル群320は、メタデータ321、レジストリ322から構成される。
メタデータ321は、印刷拡張アプリ350の印刷拡張アプリ識別子とV4プリンタドライバが使用するプリントキューのHWID(HardwareId)という双方の識別子を持つ定義情報でありそれぞれを関連付ける役割を持つ。
レジストリ322は、OS210の設定群が記述されたレジストリデータベースの領域である。レジストリ322には、Key And Value方式で値を記載することができ、プリントキュー301毎の設定を記述することができる。レジストリ322には、印刷時起動アプリランチャ305によるバックグラウンドタスクの起動を有効とするか無効とするかを示すポリシーの設定や、プリンタドライバ211に関連付く印刷拡張アプリ350の識別子とプリンタのHWIDの対応関係が登録されている。レジストリ322に登録されている設定は、OS210の設定画面を介して参照や変更が可能である。
続いて、アプリケーション212を構成する個々の要素について説明する。アプリケーション212は、デスクトップアプリ330、タッチアプリ340、印刷拡張アプリ350から構成される。
デスクトップアプリ330は、OS210のデスクトップ用の実行環境で動作するアプリケーションである。デスクトップアプリ330は後述するタッチアプリ340に見られる制限や公式マーケットはない。
タッチアプリ340は、OS210のタッチアプリ用の実行環境で動作するアプリケーションである。インターネット上で公開されるアプリケーション配布システムとなる公式マーケットを通じてダウンロードされ、クライアントコンピュータ101にインストールされる。タッチアプリ340は、必要なモジュール群がパッケージ化して署名されており、OS210内のAPIの呼び出しが制限されている。
印刷拡張アプリ350はタッチアプリ340の一種であり、タッチアプリ340と同様にOS210のタッチアプリ用の実行環境で動作する。印刷拡張アプリ350は、OS210がアプリケーション配布システムとなる公式マーケットからインターネットを経由して取得する。また、本実施形態の印刷拡張アプリ350は、印刷時に独自にカスタマイズしたUIを表示させる印刷時UI表示機能を持つ。印刷拡張アプリ350は、メタデータ321を介してプリンタベンダが提供するプリンタドライバと関連付くことができる。また、複数のプリンタベンダが提供する印刷装置に対して共通で利用される共通プリンタドライバ211と関連付く場合には、レジストリ322を用いて関連付けられる。共通プリンタドライバ211と印刷拡張アプリ350の関連付けについては、図4のフローチャートに基づいて後述する。
印刷拡張アプリ350は、タイルアプリ部351、詳細印刷設定UI部352、印刷時起動バックグラウンドタスク部353、印刷時起動UI部354、アプリ保存領域355、設定ファイル356、カスタム設定ファイル357から構成される。
タイルアプリ部351は、印刷拡張アプリ350を起動するユーザ操作を受け付けたことに従って実行され、登録された印刷装置のステータス表示などの機能を提供する。詳細印刷設定UI部352は、OS210によって発行された詳細印刷設定イベントを受信したことに従って実行される。詳細印刷設定UI部352は、コンフィグレーションモジュール304からAPIを通じて取得したPrintTicketとPrintCapabilitiesに基づき印刷設定用のUIを生成して表示する。印刷時起動UI部354は、ユーザ操作に従って、適宜PrintTicketの設定を変更し、コンフィグレーションモジュール304に返すことができる。
印刷時起動バックグラウンドタスク部353は、印刷イベントが発行された際に実行すべきバックグラウンドタスクに対応するコンポーネントである。印刷時起動バックグラウンドタスク部353は、コンフィグレーションモジュール304のAPIを通じてPrintTicketの取得や読み書きをすることができる。また、WF機能を利用する場合、バックグラウンドタスク部により、印刷時起動UI部354を起動するか否かを判断し、必要に応じてフォアグラウンドタスクのコンポーネントである印刷時起動UI部354の起動をOS210に要求することが既定されている。さらに、アプリ保存領域355に値を読み書きすることで、印刷時起動UI部354と値の受け渡しをすることができる。印刷時起動UI部354を起動しないと判断した場合は、印刷時起動アプリランチャ305は、印刷拡張アプリ350を起動することなく印刷データの生成を行う。
設定ファイル356は、印刷拡張アプリ350の設定値が記述されているファイルである。印刷拡張アプリ350を一意に示す印刷拡張アプリ識別子や、利用するカスタム設定ファイル357が記載されている。カスタム設定ファイル357は、印刷拡張アプリ350がプリンタドライバに対して利用できるサービスの設定を記載した設定ファイルである。
<共通プリンタドライバと印刷拡張アプリの関連付け>
図4及び図5を用いて、プリンタドライバのインストールに際して、共通プリンタドライバ211と印刷拡張アプリ350を関連付ける一連の流れを説明する。図4は共通プリンタドライバ211と印刷拡張アプリ350を関連付ける一連の流れを示すフローチャートである。また、図5は共通プリンタドライバ211と印刷拡張アプリ350の関連付けを説明する模式図である。図4のフローチャートに示す各動作は、OS210が外部メモリ209に記憶された各モジュール、コンポーネント、アプリケーションを実現するためのプログラムをRAM202に読み出し、当該プログラムをCPU201が実行することにより実現される。図4のフローチャートは、例えば、共通プリンタドライバ211から利用する印刷装置を追加するユーザ操作をCPU201が検知した場合に、実行される。
S401において、OS210はネットワーク100内にマルチキャストによる問い合わせを行い、共通プリンタドライバ211に対応する印刷装置の探索をする。探索には例えば、BonjourやWSD(Web Services for Devices)等を用いることができる。
S402において、OS210はS401に対する応答を受信する。続けて、当該応答に基づき追加対象のプリンタを選択するためのプリンタリストを表示する。ここでは、説明のため、印刷装置102~104が探索で見つかり、印刷装置102及び印刷装置104がリスト上に表示されているものとする。印刷装置103は、既に共通プリンタドライバ211から利用できるように共通プリンタドライバに関連付けられているものとする。従って、OS210は、追加対象のプリンタを選択するためのプリンタリストには印刷装置103を表示しないよう制御する。
続けて、S403において、OS210は、S402で表示した、プリンタリストの中から、対象プリンタを選択するユーザ操作を受け付ける。ここでは、説明のため、印刷装置102が選択されたものとして説明する。
S404において、OS210はS403で選択された対象プリンタを用いて印刷できるよう、共通プリンタドライバ211のセットアップを行う。S404のセットアップでは、印刷ポートの設定や、対象プリンタから取得したIPPに準拠する印刷属性情報に基づいたプリンタの能力設定が行われる。S401~S404までの処理を実行することにより共通プリンタドライバ211から印刷装置を利用できるようになる。S405以降の処理は、共通プリンタドライバ211を印刷拡張アプリで拡張するための制御である。
続けて、S405において、OS210は対象プリンタから印刷装置を識別するための識別情報であるHWIDを取得する。ここで取得するHWIDとは、印刷装置の機種やモデルごとに異なる識別子であり、印刷装置の種類を特定するために用いられる識別情報である。印刷装置102が選択された場合、「XXX」が取得される。
S406において、OS210は取得したHWIDが記載された基本拡張INFを生成する。S406の処理について図5を用いて説明する。
OS210は、デフォルトのテンプレートである、基本INFに基づき、印刷装置のHWIDを追加した基本拡張INFファイルを作成する。印刷装置102が対象プリンタとして選択された場合は、HWID「XXX」が書き込まれた基本拡張INF506が生成される。なお、この時点では、印刷拡張アプリの識別子はまだ対応付けられていない。
続けて、S407において、OS210は、S405で取得したHWIDが記載された拡張INFパッケージがサーバ105又は所定のディレクトリに存在するか判断する。まず、OS210は、コンピュータ101の所定のディレクトリにHWIDが記載された拡張INFパッケージが格納されているかどうかを検索し、当該検索結果に応じて拡張INFパッケージがあるかどうかを判断する。コンピュータ101内にS405で取得したHWIDが記載された拡張INFパッケージが存在すると判断した場合は処理をS408に進める。存在しないと判断した場合は、続けて、サーバ105にHWIDを含む確認の問い合わせを行う。サーバ105は、当該問い合わせに対して、対応する拡張INFパッケージを管理しているかどうかを判断し、確認結果を応答する。OS210は、当該確認結果に基づき対応する拡張INFパッケージが存在するかどうかを判断する。なお、サーバ105は、様々なベンダの拡張INFパッケージを管理している。共通プリンタドライバ211に印刷拡張アプリケーションを紐付けたいベンダは、サーバ105に拡張INFパッケージを予め登録しておくことができる。
OS210は、拡張INFパッケージがサーバ105に存在すると判断した場合は、処理をS408に進める。一方、OS210は、所定のディレクトリにも、サーバ105にも、該当する拡張INFパッケージが存在しないと判断した場合は、印刷拡張アプリ350の関連付けを行わず、印刷装置の追加処理を完了する。例えば、印刷装置104の場合、拡張INFパッケージが用意されていない。従って、対象プリンタが印刷装置104の場合、印刷拡張アプリの関連付けを行うことなくセットアップ処理を完了する。
図4の説明に戻り、S408において、OS210は、該当する拡張INFパッケージを所定のディレクトリ又はサーバ105から取得する。拡張INFパッケージは、拡張INF、デバイス機能テキストファイル、スクリプトファイルを含む。例えば、図5に示す印刷装置102に対応する拡張INFパッケージ510には、拡張INF515、デバイス機能テキストファイル513、スクリプトファイル514が含まれている。また、印刷装置103に対応する拡張INFパッケージ520には、拡張INF525、デバイス機能テキストファイル523、スクリプトファイル524が含まれている。
拡張INFパッケージに含まれているデバイス機能テキストファイルや、スクリプトファイルには、印刷装置の種類によって異なる特性パラメータが格納されうる。
例えば、デバイス機能テキストファイル513には、地紋印刷機能を使用する際に必要となる地紋パラメータが含まれている。また、スクリプトファイル514には、印刷装置で特有の問題が発生する印刷設定の組み合わせを示す禁則条件などの特性パラメータが含まれている。例えば、印刷エンジンの出力特性によっては、低い解像度と地紋印刷機能の組み合わせると適切に隠れた情報を印字できないケースがある。これらが互いに設定されないように制御するためのルールがスクリプトファイル514に含まれている。また、拡張INFパッケージに含まれる特性パラメータは一例であり、その他、印刷装置でより適切な印刷を行うための多種多様なパラメータを含むことが可能である。例えば、カラーマッチングのためのカラープロファイルや、ハーフトーン処理に用いるディザマトリクスなどの特性パラメータを含むことが可能である。
S409において、OS210は、取得した拡張INFパッケージに含まれる拡張INFで元の基本拡張INFを更新する。対象プリンタが印刷装置102の場合、印刷装置102用のINFとしてOS210により生成された基本拡張INF506は、拡張INFパッケージ510に含まれる拡張INF515の内容で更新される。
続けて、S410において、OS210は、S409で更新した基本拡張INF、及びS408で取得した拡張INFパッケージに基づき対象プリンタの拡張セットアップを行う。例えば、対象プリンタが印刷装置102の場合、OS210は取得した拡張INFパッケージ510に含まれるスクリプトファイル514で、対象プリンタに関連付けたスクリプトファイルを上書き又は拡張し、スクリプトファイル314群に格納する。また、OS210は取得した拡張INFパッケージ510に含まれるデバイス機能テキストファイル513で元のデバイス機能テキストファイルを上書きおよび拡張し、デバイス機能テキストファイル群に格納する。
また、OS210は、基本拡張INF506に基づき印刷拡張アプリ350と、共通プリンタドライバ211との関連付けを行う。関連付けについて図5を用いて説明する。対応する印刷拡張アプリ350がコンピュータ101にインストールされている場合は、OS210は、HWIDと印刷拡張アプリの識別子を対応付けた情報をレジストリ322に登録する。なお、対応する印刷拡張アプリ350がコンピュータ101にインストールされていない場合、OS210は、基本拡張INF506に含まれる印刷拡張アプリの識別子を含むアプリ取得要求をサーバ105に送信する。アプリ取得要求を受信したサーバ105は、対応する印刷拡張アプリのインストールパッケージをコンピュータ101に配信する。OS210は、当該配信された拡張アプリケーションをインストールが完了すると、HWIDと当該インストールした印刷拡張アプリの識別子を対応付けた情報をレジストリ322に登録する。
これらの一連の処理により、ユーザが使用したい印刷装置の識別情報と、使用すべき印刷拡張アプリを一意に特定するための情報が登録される。また、各ファイル群に印刷装置の特性パラメータが書き込まれる。これらの各ファイル群に書き込まれた特性パラメータは、後述の処理により拡張アプリがアクセス可能な領域に書き込まれ、拡張アプリから参照可能となる。
なお、図4及び図5では、1つの共通プリンタドライバ211が複数の印刷装置向けのファイル群313、314を有し、当該ファイルを切り替えて複数の印刷装置に対応する場合を例示した。しかしながら、共通プリンタドライバ211の実現方法はこれに限定されるものではない。例えば、共通プリンタドライバ211の既定のテンプレートを予め用意しておき、当該テンプレートに基づき新たな印刷装置向けに共通プリンタドライバ211のインストール処理を行うようにしてもよい。この場合、S404の処理に代えて、共通ドライバの新規インストールが行われる。また、S409、S410の処理に代えて、新たにインストールされた共通プリンタドライバに対する拡張設定処理が行われる。
<印刷制御>
続いて、共通プリンタドライバ211を用いた印刷制御について図6~図10を用いて説明する。図6、図8乃至図10はコンピュータ101における印刷制御を示すフローチャートである。図7は、ディスプレイ207に表示される操作画面の一例である。図6、図8乃至図10のフローチャートに示す各動作は、外部メモリ209に記憶された各モジュール、コンポーネント、アプリケーションを実現するためのプログラムをRAM202に読み出し、CPU201で実行することにより実現される。なお、処理の主体を明確にするため、必要に応じて、各モジュール、コンポーネント、アプリケーションを主語として説明する。
S601において、OS210は印刷設定表示イベントを受け付ける。印刷設定表示イベントは、ユーザが印刷出力機能を備えるアプリケーション上で印刷コマンドを実行することにより発生する。S602において、OS210は簡易印刷設定ダイアログ700を表示する。図7(a)はディスプレイ207に表示される簡易印刷設定ダイアログ700の一例である。簡易印刷設定ダイアログ700では、印刷に用いる印刷装置設定701、用紙サイズ設定702、部数設定703を使用して設定を行うことができる。詳細設定ボタン705は、印刷拡張アプリ350が提供する詳細印刷設定UI部352のUIを表示する場合に使用するボタンである。印刷ボタン710は、印刷設定を完了し、印刷を開始する場合に使用するボタンである。キャンセルボタン711は、印刷設定を中止する場合に使用するボタンである。以降、本実施形態では、説明のため、ダイアログ700を介して設定されている印刷に用いる印刷装置を対象プリンタと呼ぶ。また、対象プリンタとして印刷装置102が選択されているものとして説明する。
図6の説明に戻り、S603において、OS210は簡易印刷設定ダイアログ700におけるユーザ操作を受け付ける。S604において、OS210は詳細設定ボタン705がクリックされたか否かを判定する。OS210は、S604において、詳細設定ボタン705がクリックされたことを検知した場合、処理をS605に進め、詳細設定ボタン705がクリックされたことを検知していない場合、処理をS630に進める。
S605において、OS210は印刷拡張アプリ探索処理を行う。S605の探索処理については後述する。S606において、OS210はS605の印刷拡張アプリ探索処理の結果が真であるか否かを判定する。S606の結果、S605の印刷拡張アプリ探索処理の結果が真である場合、処理をS607に進め、S606の結果、S605の印刷拡張アプリ探索処理の結果が真でない場合、処理をS620に進める。
S607において、OS210は対象プリンタに関連付けられた印刷拡張アプリを起動する。具体的にはS605の探索処理結果に含まれる印刷拡張アプリ350の識別子に基づき起動するアプリケーションを決定し、起動する。なお、本実施形態では、ベンダが提供する印刷拡張アプリは所定のフォルダに格納されており、識別子に基づき一意に起動すべき印刷拡張アプリを決定できるものとする。ただしこれに限定されるものではなく、例えば、S605の処理結果に拡張アプリを起動するためのURIやファイルパスを含めるようにしてもよい。この場合、OS210は、当該URIやファイルパスを用いて拡張アプリケーションを起動する。
S608において、OSにより起動された印刷拡張アプリ350は、詳細印刷設定ダイアログ720を表示する。詳細印刷設定UI部352は、ファイル群313及び314のうち対象となるプリンタの機能テキストファイルに基づき生成されたPrintTicketとPrintCapabilitiesに基づき詳細印刷設定ダイアログを表示する。図7(b)は印刷拡張アプリ350の詳細印刷設定ダイアログ720の一例である。ユーザは、印刷拡張アプリ350の詳細印刷設定ダイアログ720を介して、ページ集約721、ステープル722、地紋印刷723に関する設定を行うことができる。
地紋印刷723に関する設定値として、地紋として印刷する文字列を示すテキスト731、印刷される地紋の色732、地紋として印刷する文字列の用紙に対する角度733、地紋として印刷する文字列のフォントサイズ734が設定できる。また、印刷方法735では、元々の描画データの下地として地紋を印刷する透かし印刷と、元々の描画データに地紋を上書きして印刷する重ね印刷とが選択できる。OKボタン740は、印刷拡張アプリ350の詳細印刷設定を完了し、簡易印刷設定ダイアログ700に戻る場合にクリックされる。なお、本実施形態では地紋の一例として文字列を例示しているがこれに限定されるものではない。例えば、機密文書であることを示すスタンプなどの描画オブジェクトを隠し情報として埋め込めるようにしてもよい。
図6の説明に戻り、S609において、印刷拡張アプリ350は、詳細印刷設定ダイアログ720を介したユーザ操作を受け付ける。S610において、印刷拡張アプリ350は、OKボタン740がクリックされたことを検知したか否かを判定する。S610において、OKボタン740がクリックされたことを検知した場合、処理をS611に進め、OKボタン740がクリックされたことを検知していない場合、更なる印刷設定の受け付けを待つ。
続けて、S611において、印刷拡張アプリ350は、詳細印刷設定ダイアログ720で設定された印刷設定をアプリ保存領域355に格納する。ここでは、対象プリンタに対応するデバイス機能テキストファイルに記載された特性パラメータ(例えば、地紋パラメータ)も印刷設定と同様に格納される。また、詳細印刷設定ダイアログ720で設定された印刷設定でPrintTicketを更新する。更新処理が完了すると、処理をS612に進める。
図7(c)はアプリ保存領域355に格納するデータ750の例である。印刷拡張アプリ350の詳細印刷設定ダイアログ720で設定された値がデータ項目751からデータ項目760に格納される。また、デバイス機能テキストファイルに記載された特性パラメータとして、地紋印刷機能に関するパラメータである、小ドットサイズ761、大ドットサイズ762が格納される。図7(c)では、対象プリンタが印刷装置102の場合を例示している。
図6の説明に戻り、S612において、OS210は印刷拡張アプリ350の詳細印刷設定ダイアログ720の表示を終了し、簡易印刷設定ダイアログ700にコントロールのフォーカスを戻す。
続けて、印刷拡張アプリが関連付けられていない場合の処理について説明する。S620において、OS210はOS標準の詳細印刷設定ダイアログを表示する。OS標準の詳細印刷設定ダイアログは、IPPで定義された設定項目のみが設定可能なダイアログである。このような印刷ダイアログからは、地紋印刷機能に関する設定を行うことができないものとする。S621において、OS210はOS共通の詳細印刷設定ダイアログにおけるユーザ操作を受け付ける。S622において、OS210はOS共通の詳細印刷設定ダイアログにおけるOKボタンがクリックされたことを検知したか否かを判定する。S622において、OKボタンがクリックされたことを検知した場合、処理をS623に進め、OKボタンがクリックされたことを検知していない場合、更なるおm幸設定操作の受け付けを待つ。
S623において、OS210はOS共通の詳細印刷設定ダイアログにおける印刷設定に基づきPrintTicketを更新する。S624において、OS210はOS共通の詳細印刷設定ダイアログの表示を終了し、簡易印刷設定ダイアログ700にコントロールのフォーカスを戻す。
S630において、OS210はキャンセルボタン711がクリックされたことを検知したか否かを判定する。S630において、キャンセルボタンがクリックされたことを検知した場合、印刷設定を中止し、一連の印刷処理を中止する。S630において、キャンセルボタンがクリックされたことを検知していない場合、処理をS640に進める。
S640において、OS210は印刷ボタン710がクリックされたことを検知したか否かを判定する。S640において、印刷ボタンをクリックされたことを検知した場合、処理をS641に進め、印刷ボタンをクリックされたことを検知していない場合、S603の処理に戻り更なる印刷設定の操作を受け付ける。
続けて、S641において、OS210は、簡易印刷設定ダイアログ700で設定された印刷設定でPrintTicketを更新する。
最後に、S650において、OS210は印刷処理開始イベントを発生させ、簡易印刷設定ダイアログ700の表示を終了する。印刷処理開始イベントの発生をトリガーとした印刷処理については、図9、図10のフローチャートで後述する。
続けて、S605の印刷拡張アプリ探索処理について図8のフローチャートを用いて説明する。
S801において、OS210は、レジストリ322を参照し、ユーザによって選択された対象プリンタのプリントキュー301に関連付けられた情報を取得する。
S802において、OS210は、対象プリンタに関連付けてプリント印刷拡張アプリ識別子が登録されているか否かを判定する。S802において、印刷拡張アプリ識別子が登録されている場合、処理をS803に進め、S802において、印刷拡張アプリ識別子が登録されていない場合、処理をS805に進める。
S803において、OS210は、コンピュータ101にインストールされている全てのタッチアプリ340に関して、その印刷拡張アプリ識別子に一致するものが存在するか確認する。S803において、印刷拡張アプリ識別子に一致するものがあれば、処理をS804に進め、印刷拡張アプリ識別子に一致するものがなければ、処理をS805に進める。
S804において、OS210はプリントキュー301に関連付いた印刷拡張アプリ350が存在すると判断し、印刷拡張アプリ探索処理の結果として真を返す。この探索結果には、印刷拡張アプリを起動するための識別子も含まれている。
一方、S805において、OS210はプリントキュー301に関連付いた印刷拡張アプリ350が存在しないと判断し、印刷拡張アプリ探索処理の結果として偽を返す。
なお、本実施形態では、拡張印刷アプリを起動するための識別子を検索結果に含める場合を例示したがこれに限定されるものではない。検索結果に拡張印刷アプリを起動するためのURIやファイルパスなどを含めてもよい。
<印刷指示後の印刷制御>
続けて、S650で発行された印刷処理開始イベントに基づく印刷処理について、図9及び図10のフローチャートを用いて説明する。図9のフローチャートは、S650の処理により、印刷処理開始イベントが発行されたことに従って実行されるフローチャートである。
S901において、OS210は、アプリケーションからXPS形式の印刷対象データとPrintTicketを受信し、スプーラ302に一時的に記憶する。
S902において、OS210は印刷拡張アプリ探索処理を行う。S902における印刷拡張アプリ探索処理は、S605における処理と同様であるため説明を省略する。
S903において、OS210はS902の印刷拡張アプリ探索処理の結果が真であるか否かを判定する。S903の結果、S902の印刷拡張アプリ探索処理の結果が真である場合、処理をS904に進め、真でない場合(偽である場合)は、処理をS910に進める。
S904において、OS210は印刷時起動アプリランチャ305を介して、印刷拡張アプリ350の印刷時起動バックグラウンドタスク部353を起動する。また、S902で受信したXPS形式の印刷対象データと、PrintTicketをバックグラウンドタスク部353へ受け渡す。
S905において、印刷時起動バックグラウンドタスク部353は、印刷設定として地紋印刷機能の設定がなされているか否かを判定する。印刷時起動バックグラウンドタスク部353は、印刷拡張アプリ350を介してアプリ保存領域355に格納されたデータを参照し、データ項目754に真値が格納されているか否かにより印刷設定として地紋印刷機能の設定がなされているかどうかを判定する。印刷設定として地紋印刷機能の設定がなされている場合は、処理をS906に進め、地紋印刷機能の設定がなされていない場合は、処理をS908に進める。
S906において、OS210は印刷拡張アプリ350を介してアプリ保存領域355に格納された対象プリンタの特性パラメータを取得する。ここでは、アプリ保存領域355に格納されたデータ項目755及びデータ項目758から地紋印刷に関するパラメータを取得するものとする。
続けて、S907において、印刷拡張アプリ350は、印刷対象データであるXPSを編集し地紋生成処理を行う。図10はS907の処理を説明するためのフローチャートである。
S1001において、印刷拡張アプリ350はデータ項目755からデータ項目758および大ドットサイズ762をもとに、隠れたパターンである潜像データを生成する。潜像データとは、データ項目755で指定された文字列や、データ項目757の傾きで、データ項目758のフォントで表現した領域内を、大ドットサイズ762のドットサイズでデータ項目756の色で点描した際に規定の濃度となるよう構成したデータである。なお、スタンプなどの描画オブジェクトを埋め込む場合、印刷拡張アプリ350は、予め登録されたスタンプなどを適宜回転して隠れたパターンである潜像データを生成するものとする。
続けて、S1002において、印刷拡張アプリ350はデータ項目755からデータ項目758および小ドットサイズ761をもとに、背景データを生成する。潜像領域外の領域について、小ドットサイズ761のドットサイズでデータ項目756の色で点描した際に規定の濃度となるよう構成したデータである。
印刷拡張アプリ350は、S1001で生成した潜像データとS1002で生成した背景データの所定面積当たりの濃度が同様となるよう制御する。これにより、人間の視覚特定上、大ドットで表現された文字列やスタンプの領域と、小ドットで表現された領域とが薄い一様の模様(均一な模様)として見えるような印刷物を出力できる。これらの印刷物をスキャンしたりコピーしたりすると、小ドットで表現された領域は、小ドットで描画した背景データはスキャナでは読み取られずに消えて、大ドットで描画した隠し文字列が残る。従って複写された原稿であることが一目でわかるようになる。
図10の説明に戻り、S1003において、印刷拡張アプリ350はデータ項目759の値が透かし印刷であるか重ね印刷であるかを判定する。S1003において、データ項目759の値が透かし印刷であった場合、処理をS1004に進め、S1003において、データ項目759の値が重ね印刷であった場合、処理をS1005に進める。
S1004において、S1001で生成した潜像データとS1002で生成した背景データを、元々の描画データよりも背面に出力されるよう、XPSを編集する。即ち元々の描画データの背面に潜像データと背景データからなる地紋データを合成する。
一方、S1005において、S1001で生成した潜像データとS1002で生成した背景データを、元々の描画データよりも前面に出力されるよう、XPSを編集する。即ち元々の描画データの前面に潜像データと背景データからなる地紋データを合成する。処理が完了すると、処理を図9のS908に進める。
続けて、S908において、印刷拡張アプリ350は、詳細印刷設定ダイアログ720で設定を行ったページ集約721のデータ項目751およびステープル722のデータ項目752に基づき、PrintTicketとXPSを編集する。S908の編集が完了すると、印刷拡張アプリ350は、OS210のスプーラ302に編集後のPrintTicketとXPSを書き戻し、アプリのプロセスを完了する。
S910において、OS210はフィルタパイプラインマネージャ303を介して、スプーラ302からPrintTicketとXPSファイルを取得する。
S911において、OS210は、フィルタパイプラインマネージャ303を介して、フィルタコンフィグ312の定義に基づき、使用するプリンタドライバ211に対応するフィルタ311を外部メモリ209から読み出し、RAM202にロードする。S912において、OS210はフィルタパイプラインマネージャ303を介して、XPSを展開したフィルタ311に入力し、フィルタ311によるPDL変換処理を実行する。なお、S912のPDL変換処理で用いられるフィルタ311は複数で構成されていてもよい。S913において、OS210はフィルタパイプラインマネージャ303を介して、S912のPDL変換処理の結果得られたPDLをスプーラ302に転送する。その後、OS210はスプーラ302を介して、ネットワークI/F213と協働して、PDLとPrintTicketを含むデータを印刷ジョブとして対象のプリンタ(例えば印刷装置102)へ送信する。
当該印刷ジョブを受信した印刷装置は、印刷ジョブに基づいてシートに印刷画像を印刷する。印刷ジョブに地紋データが含まれている場合、文字列やパターンなどの隠し情報が含まれた印刷物を出力することができる。このとき、潜像データと背景データは対象プリンタとして選択された印刷装置の特性パラメータに基づき、当該印刷装置の印字能力に合わせて生成されたものが付与される。従って、適切な地紋印刷を行えるようになる。
以上説明した一連の処理より、印刷装置毎の特性パラメータに基づいた地紋印刷機能を実現できるようになる。これにより共通のプリンタドライバ211を使用する場合であっても、出力先の印刷装置に応じて異なる地紋パラメータに従った地紋生成処理を実現することが可能となる。
<特性パラメータに関する変形例>
第1の実施形態では、特性パラメータの一例である地紋パラメータが、小ドットサイズ761、大ドットサイズ762の大小一通りのセットの場合を例示した。しかしながら、地紋パラメータは他の構成であってもよい。図11は、地紋パラメータの変形例を説明するための図である。図11(a)に示すように、デバイス機能テキストファイルに小ドットサイズ列1101、大ドットサイズ列1102の地紋パラメータを記載する構成であってもよい。小ドットサイズ列1101および大ドットサイズ列1102は、地紋の濃度をユーザ操作により変更可能な仕様を想定した場合のパラメータであり、5段階の濃度に対応したドットサイズの値を示すものである。
ユーザ操作によって濃度を調整できるように構成すると、以下のメリットがある。電子写真方式の印刷装置では、同じモデルの印刷装置であってもプリントエンジン毎の個体差や、経年使用による濃度変化が起こりうる。濃度変化が発生した場合、ユーザ操作で地紋の濃度を切り替えることでより好適な地紋印刷を行うことができるようになる。
図11(b)は地紋の濃度設定するための詳細印刷設定ダイアログ1110の一例である。詳細印刷設定ダイアログ1110の濃度設定1111の値に応じて、小ドットサイズ列1101および大ドットサイズ列1102のどの値を使用するかを切り替えることができる。また、本実施例ではS1001およびS1002における地紋生成処理における既定の濃度を固定の値としたが、装置毎の規定の濃度も印刷装置に依存する特性パラメータとしてデバイス機能テキストファイル513に記載するようにしてもよい。
更に、第1の実施形態及び上述の実施形態では、印刷拡張アプリ350に提供する特性パラメータの一例として地紋印刷機能のパラメータを例示し、印刷拡張アプリ350の独自の機能の一例として地紋印刷機能を例示したがこれに限定されるものではない。例えば、カラープロファイルや、ハーフトーン処理に用いるディザマトリクスに関する特性パラメータを印刷拡張アプリ350に提供するようにしてもよい。当該特性パラメータを受け取った印刷拡張アプリ350は、カラープロファイルに基づきカラーマッチングの機能を実現したり、印刷装置上でハーフトーン処理を行う場合における、線数などの設定を行えるようにすることができる。
<特性パラメータの提供方法に関する変形例>
上述の実施形態では、S410の処理により共通プリンタドライバ211が管理する、デバイス機能テキストファイルやスクリプトファイルを、拡張INF用パッケージに含まれる特性パラメータを含むファイルで上書き又は拡張した。また、当該上書き又は拡張したファイルに含まれる特性パラメータを、印刷拡張アプリ350による印刷設定時にアプリ保存領域355に保存することで、印刷拡張アプリ350がアクセスできる領域に特性パラメータを提供できるように構成した。しかしながら特性パラメータを提供するタイミングはこれに限定されるものではない。例えば、S410の拡張セットアップ処理において、OS210が対象プリンタに対応する印刷拡張アプリのアプリ保存領域355へ特性パラメータを格納するようにしてもよい。
<独自機能の提供タイミングに関する変形例>
また、上述の実施形態では、XPSの処理対象データをPDLに変換する前に、S902~S908に示したベンダの独自機能を実行する場合を例示したがこれに限定されるものではない。PDFやラスタなどのPDLへの変換処理であるS910~S912が行われた後に、ベンダの独自機能を提供するように制御することもできる。S910~S912の処理を先に実行し、その後にS902~S908に相当する処理を実行するようにすればよい。
<その他の実施形態>
本発明は、上述の各実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASICやFPGA)によっても実現可能である。
101 クライアントコンピュータ
201 CPU
211 共通プリンタドライバ
350 印刷拡張アプリ

Claims (23)

  1. ユーザによる設定に基づく第2の画像データを第1の画像データに付加する画像付加機能を有さないプリンタドライバであって、異なる複数のベンダの印刷装置で印刷可能な印刷データを生成する前記プリンタドライバと印刷装置の機種情報を対応付けて記憶する情報処理装置にインストールされるアプリケーションであって、前記アプリケーションは前記情報処理装置に、
    前記プリンタドライバと対応づけて記憶された前記機種情報に対応する前記印刷装置が印刷データの送信先として選択されている状態で、前記印刷装置が実行することができる前記画像付加機能である地紋印刷に関する能力情報である前記印刷装置の特性パラメータに基づき前記画像付加機能により付加される前記第2の画像データに関する設定を受け付ける設定画面を表示する表示制御工程と、
    前記第1の画像データを取得する取得工程と、
    前記設定画面を介して設定された前記第2の画像データに関する設定に基づき、取得した前記第1の画像データに前記第2の画像データを付加した印刷データを生成する生成工程と、
    前記生成工程において生成した前記印刷データを提供する提供工程と、
    を実行させることを特徴とするアプリケーション。
  2. 前記第2の画像データに関する設定は、前記第2の画像データとして付加される文字列の設定であることを特徴とする請求項1に記載のアプリケーション。
  3. 前記プリンタドライバは、複数の種類の印刷装置で印刷することができる印刷データを生成するプリンタドライバであることを特徴とする請求項1または2に記載のアプリケーション。
  4. 前記印刷データはXPSファイルであり、
    前記生成工程において、前記XPSファイルを編集することで前記第1の画像データに前記第2の画像データを付加した前記印刷データを生成することを特徴とする請求項1乃至3のいずれか一項に記載のアプリケーション。
  5. 前記アプリケーションは前記提供工程において、前記印刷データをOSに提供することで前記印刷データをPDLデータに変換させることを特徴とする請求項1乃至4のいずれか一項に記載のアプリケーション。
  6. 前記アプリケーションは、前記印刷装置の機種情報を用いて特定されるアプリケーションであることを特徴とする請求項1乃至5のいずれか一項に記載のアプリケーション。
  7. 前記プリンタドライバは、OSにプリインストールされるプリンタドライバであることを特徴とする請求項1乃至6のいずれか一項に記載のアプリケーション。
  8. 前記能力情報は、外部から取得された情報であることを特徴とする請求項1乃至7のいずれか一項に記載のアプリケーション。
  9. 複数のベンダの印刷装置で印刷することができる印刷データを生成する所定のプリンタドライバが有していない画像付加機能であって、ユーザによる設定に基づく第2の画像データを第1の画像データに付加する前記画像付加機能を有するアプリケーションがインストールされた情報処理装置であって、
    前記所定のプリンタドライバと印刷装置の機種情報を対応づけて記憶する記憶手段と、
    前記所定のプリンタドライバと対応づけて記憶された前記機種情報の前記印刷装置が印刷データの送信先として設定された状態で、前記印刷装置が実行することができる前記画像付加機能である地紋印刷に関する前記印刷装置の特性パラメータの情報に基づき前記アプリケーションに前記画像付加機能に関する設定を受け付ける設定画面を表示させる制御手段と、
    前記設定画面により受け付けた前記設定に基づき、前記第1の画像データに前記第2の画像データを付加した印刷データを生成する生成手段と、
    生成した前記印刷データを送信する送信手段と、
    を有することを特徴とする情報処理装置。
  10. 前記第2の画像データに関する設定は、前記第2の画像データとして付加される文字列の設定であることを特徴とする請求項9に記載の情報処理装置。
  11. 前記所定のプリンタドライバは、複数の種類の印刷装置で印刷することができる印刷データを生成するプリンタドライバであることを特徴とする請求項9または10に記載の情報処理装置。
  12. 前記印刷装置の機種情報を取得する第1の取得手段をさらに有し、
    前記アプリケーションは、前記第1の取得手段が取得した前記印刷装置の機種情報を用いて特定されるアプリケーションであることを特徴とする請求項9乃至11のいずれか一項に記載の情報処理装置。
  13. 前記印刷装置の機種情報を用いて特定されるアプリケーションを外部装置から取得する第2の取得手段をさらに有することを特徴とする請求項12に記載の情報処理装置。
  14. 前記印刷装置の機種情報は前記印刷装置のHWIDであることを特徴とする請求項9乃至13のいずれか一項に記載の情報処理装置。
  15. 前記所定のプリンタドライバは、OSにプリインストールされるプリンタドライバであることを特徴とする請求項9乃至14のいずれか一項に記載の情報処理装置。
  16. 複数のベンダの印刷装置で印刷することができる印刷データを生成可能な所定のプリンタドライバが有していない、ユーザによる設定に基づく第2の画像データを第1の画像データに付加する画像付加機能を有するアプリケーションがインストールされた情報処理装置の制御方法であって、
    前記所定のプリンタドライバと印刷装置を特定する情報を対応づけて記憶する記憶工程と、
    前記所定のプリンタドライバと対応づけて記憶された前記情報により特定される前記印刷装置が印刷データの送信先として設定された状態で、前記印刷装置が実行することができる前記画像付加機能である地紋印刷に関する前記印刷装置の特性パラメータの情報に基づき前記アプリケーションに前記画像付加機能に関する設定を受け付ける設定画面を表示させる制御工程と、
    前記設定画面により受け付けた前記設定に基づき、前記第1の画像データに前記第2の画像データを付加した印刷データを生成する生成工程と、
    生成した前記印刷データを送信する送信工程と、
    を有することを特徴とする情報処理装置の制御方法。
  17. 前記第2の画像データに関する設定は、前記第2の画像データとして付加される文字列の設定であることを特徴とする請求項16に記載の情報処理装置の制御方法。
  18. 前記所定のプリンタドライバは、複数の種類の印刷装置で印刷することができる印刷データを生成するプリンタドライバであることを特徴とする請求項16または17に記載の情報処理装置の制御方法。
  19. 前記印刷装置の機種情報を取得する第1の取得工程をさらに有し、
    前記アプリケーションは、前記第1の取得工程において取得した前記印刷装置の機種情報を用いて特定されるアプリケーションであることを特徴とする請求項16乃至18のいずれか一項に記載の情報処理装置の制御方法。
  20. 前記印刷装置の機種情報を用いて特定される前記アプリケーションを外部装置から取得する第2の取得工程と、を有することを特徴とする請求項19に記載の情報処理装置の制御方法。
  21. 前記印刷装置の種別を示す情報は前記印刷装置のHWIDであることを特徴とする請求項16乃至20のいずれか一項に記載の情報処理装置の制御方法。
  22. 前記所定のプリンタドライバは、所定のプロトコルで送信される所定のフォーマットの印刷データを生成することを特徴とする請求項16乃至21のいずれか一項に記載の情報処理装置の制御方法。
  23. 前記所定のプロトコルは、InternetPrinting Protocolであることを特徴とする請求項22に記載の情報処理装置の制御方法。
JP2018190015A 2018-10-05 2018-10-05 情報処理装置、制御方法及びプログラム Active JP7341647B2 (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
JP2018190015A JP7341647B2 (ja) 2018-10-05 2018-10-05 情報処理装置、制御方法及びプログラム
US16/591,078 US11068212B2 (en) 2018-10-05 2019-10-02 Information processing apparatus for acquiring an application, control method, and storage medium
US17/360,920 US11733936B2 (en) 2018-10-05 2021-06-28 Information processing apparatus, control method, and storage medium for setting a print setting value
JP2023081974A JP2023107788A (ja) 2018-10-05 2023-05-18 情報処理装置、制御方法及びプログラム
US18/358,765 US20230367522A1 (en) 2018-10-05 2023-07-25 Information processing apparatus, control method, and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018190015A JP7341647B2 (ja) 2018-10-05 2018-10-05 情報処理装置、制御方法及びプログラム

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2023081974A Division JP2023107788A (ja) 2018-10-05 2023-05-18 情報処理装置、制御方法及びプログラム

Publications (3)

Publication Number Publication Date
JP2020060849A JP2020060849A (ja) 2020-04-16
JP2020060849A5 JP2020060849A5 (ja) 2021-11-25
JP7341647B2 true JP7341647B2 (ja) 2023-09-11

Family

ID=70052029

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2018190015A Active JP7341647B2 (ja) 2018-10-05 2018-10-05 情報処理装置、制御方法及びプログラム
JP2023081974A Pending JP2023107788A (ja) 2018-10-05 2023-05-18 情報処理装置、制御方法及びプログラム

Family Applications After (1)

Application Number Title Priority Date Filing Date
JP2023081974A Pending JP2023107788A (ja) 2018-10-05 2023-05-18 情報処理装置、制御方法及びプログラム

Country Status (2)

Country Link
US (3) US11068212B2 (ja)
JP (2) JP7341647B2 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11435960B2 (en) * 2018-12-04 2022-09-06 Hewlett-Packard Development Company, L.P. Print device functionalities
US11919313B2 (en) 2018-12-04 2024-03-05 Hewlett-Packard Development Company, L.P. Print device functionalities
JP7151441B2 (ja) * 2018-12-07 2022-10-12 コニカミノルタ株式会社 画像読取装置
EP4328735A1 (en) * 2022-08-24 2024-02-28 Canon Kabushiki Kaisha Information processing apparatus, method for controlling information processing apparatus, and storage medium

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006048504A (ja) 2004-08-06 2006-02-16 Canon Inc 帳票作成装置、帳票作成方法、および記憶媒体
JP2007265213A (ja) 2006-03-29 2007-10-11 Kyocera Mita Corp 画像処理装置、プログラムおよびコンピュータ読取可能記録媒体
JP2012242895A (ja) 2011-05-16 2012-12-10 Canon Inc ドキュメント変換装置、情報処理方法及びプログラム
JP2013025729A (ja) 2011-07-26 2013-02-04 Ricoh Co Ltd 情報処理システム、情報処理装置、画像形成装置、及びプログラム
JP2013196554A (ja) 2012-03-22 2013-09-30 Ricoh Co Ltd プログラム、情報処理装置及び記録媒体
JP2018049579A (ja) 2016-09-15 2018-03-29 株式会社リコー 情報処理装置、情報処理方法、及びプログラム

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001328325A (ja) * 2000-03-03 2001-11-27 Brother Ind Ltd 画像形成制御装置、画像形成装置、画像形成装置の制御方法および記憶媒体
KR100530235B1 (ko) * 2003-12-15 2005-11-22 삼성전자주식회사 공용 드라이버 적용 장치 및 방법
JP2006092363A (ja) * 2004-09-24 2006-04-06 Canon Inc 印刷制御プログラム、印刷制御方法、および情報処理装置
KR100657325B1 (ko) * 2005-07-05 2006-12-14 삼성전자주식회사 복수의 화상형성장치 드라이버를 관리하는 서버의 가상드라이버 및 그 데이터 출력방법
US20090168091A1 (en) * 2007-12-31 2009-07-02 Bce Inc. Method and system for providing extended printer properties
JP5294892B2 (ja) * 2009-01-14 2013-09-18 キヤノン株式会社 画像形成装置、装置、制御方法、及びプログラム
US20100177347A1 (en) * 2009-01-15 2010-07-15 Kabushiki Kaisha Toshiba Image forming processing controller and method and computer-readable medium thereof
JP4820432B2 (ja) * 2009-04-24 2011-11-24 シャープ株式会社 プリンタドライバ、記録媒体、情報処理装置、印刷システム、及びプリンタドライバの設定方法
KR20110032869A (ko) * 2009-09-24 2011-03-30 삼성전자주식회사 인쇄 제어 장치 및 그 제어 방법
JP2011243067A (ja) * 2010-05-19 2011-12-01 Brother Ind Ltd 印刷制御装置,印刷制御システム,およびプリンタドライバ
JP5924892B2 (ja) * 2011-09-08 2016-05-25 キヤノン株式会社 情報処理装置、情報処理方法、及びプログラム
US9390460B2 (en) * 2011-11-04 2016-07-12 Document Security Systems, Inc. System and method for dynamic generation of embedded security features in a document
JP2015230710A (ja) * 2014-06-06 2015-12-21 キヤノン株式会社 情報処理装置及びプログラム、制御方法
US20170060507A1 (en) * 2015-08-26 2017-03-02 Xerox Corporation Service for creating a personalized universal print driver
JP6957906B2 (ja) * 2017-03-10 2021-11-02 ブラザー工業株式会社 制御装置
US10120626B1 (en) * 2017-12-14 2018-11-06 Kyocera Document Solutions Inc. Information processing apparatus, recording medium, and information processing method
JP7166785B2 (ja) * 2018-05-07 2022-11-08 キヤノン株式会社 印刷に関わる画面を表示するためのプログラム及びアプリケーション

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006048504A (ja) 2004-08-06 2006-02-16 Canon Inc 帳票作成装置、帳票作成方法、および記憶媒体
JP2007265213A (ja) 2006-03-29 2007-10-11 Kyocera Mita Corp 画像処理装置、プログラムおよびコンピュータ読取可能記録媒体
JP2012242895A (ja) 2011-05-16 2012-12-10 Canon Inc ドキュメント変換装置、情報処理方法及びプログラム
JP2013025729A (ja) 2011-07-26 2013-02-04 Ricoh Co Ltd 情報処理システム、情報処理装置、画像形成装置、及びプログラム
JP2013196554A (ja) 2012-03-22 2013-09-30 Ricoh Co Ltd プログラム、情報処理装置及び記録媒体
JP2018049579A (ja) 2016-09-15 2018-03-29 株式会社リコー 情報処理装置、情報処理方法、及びプログラム

Also Published As

Publication number Publication date
US20210326081A1 (en) 2021-10-21
US20200110559A1 (en) 2020-04-09
JP2020060849A (ja) 2020-04-16
US11068212B2 (en) 2021-07-20
JP2023107788A (ja) 2023-08-03
US20230367522A1 (en) 2023-11-16
US11733936B2 (en) 2023-08-22

Similar Documents

Publication Publication Date Title
JP7341647B2 (ja) 情報処理装置、制御方法及びプログラム
KR102549370B1 (ko) 정보 처리 장치, 제어 방법 및 프로그램
US8773694B2 (en) Managing a print job using print setting information
JP4969324B2 (ja) 情報処理装置、プログラム及びその記録媒体
JP7278772B2 (ja) 情報処理装置、制御方法及びアプリケーションプログラム
US9830544B2 (en) Image processing apparatus, control method, and storage medium for executing print processing using a password including selecting a personal identification code type that indicates a purpose for using the password
EP2388685B1 (en) Information processing apparatus and control method thereof, and storage medium
JP2020004158A (ja) 情報処理装置、情報処理装置の制御方法、及びプログラム
JP7433940B2 (ja) 情報処理装置、印刷装置および当該情報処理装置の制御方法、プログラム
JP2016177432A (ja) プログラム、情報処理装置、記憶媒体、画面作成方法
US11842100B2 (en) Server system, information processing apparatus communicating with server system, control method, and computer-readable storage medium
JP2024052771A (ja) 情報処理装置、制御方法およびプログラム
KR20210098343A (ko) 정보 처리 장치, 제어 방법 및 그 프로그램, 및 정보 처리 장치와 통신할 수 있는 서버 시스템
JP2012121167A (ja) 印刷装置、印刷方法、及びプログラム
JP2018097620A (ja) 画像形成システム、画像形成装置、画像処理装置、及びその制御方法、プログラム
JP2009163404A (ja) 印刷システム、印刷装置、印刷管理装置、印刷方法、プログラム、及び記録媒体
JP7410622B2 (ja) 情報処理装置、情報処理装置の制御方法ならびにプログラム、および当該情報処理装置と通信することのできるサーバシステム
JP2017013313A (ja) 画像形成装置、画像形成システム、その制御方法及びプログラム
JP6519942B2 (ja) 画像形成装置およびプログラム
JP7350525B2 (ja) 情報処理装置、情報処理装置の制御方法、及びプログラム
JP7362384B2 (ja) 情報処理装置、その制御方法、及びプログラム
JP7427459B2 (ja) サーバシステム、およびサーバシステムと通信する印刷装置
WO2024080029A1 (ja) 印刷装置及びその制御方法
JP2023153904A (ja) 情報処理装置
JP2022109051A (ja) サーバシステムおよびサーバシステムの制御方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20211001

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20211011

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20220810

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220823

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20221013

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20230221

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230518

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20230529

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230830

R151 Written notification of patent or utility model registration

Ref document number: 7341647

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151