(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-08-02
(45)【発行日】2024-08-13
(54)【発明の名称】画像形成装置、画像形成装置の制御方法ならびにプログラム
(51)【国際特許分類】
G06F 3/12 20060101AFI20240805BHJP
B41J 29/38 20060101ALI20240805BHJP
B41J 29/42 20060101ALI20240805BHJP
B41J 29/46 20060101ALI20240805BHJP
H04N 1/00 20060101ALI20240805BHJP
【FI】
G06F3/12 353
B41J29/38 205
B41J29/42 F
B41J29/38 204
B41J29/46 Z
H04N1/00 350
H04N1/00 567C
G06F3/12 305
G06F3/12 360
G06F3/12 335
G06F3/12 365
G06F3/12 330
(21)【出願番号】P 2020126643
(22)【出願日】2020-07-27
【審査請求日】2023-07-20
(73)【特許権者】
【識別番号】000001007
【氏名又は名称】キヤノン株式会社
(74)【代理人】
【識別番号】100126240
【氏名又は名称】阿部 琢磨
(74)【代理人】
【識別番号】100223941
【氏名又は名称】高橋 佳子
(74)【代理人】
【識別番号】100159695
【氏名又は名称】中辻 七朗
(74)【代理人】
【識別番号】100172476
【氏名又は名称】冨田 一史
(74)【代理人】
【識別番号】100126974
【氏名又は名称】大朋 靖尚
(72)【発明者】
【氏名】宮田 孝明
【審査官】佐賀野 秀一
(56)【参考文献】
【文献】特開平11-353147(JP,A)
【文献】特開平06-268785(JP,A)
【文献】特開2002-132624(JP,A)
【文献】特開2016-117286(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 3/09- 3/12
B41J 29/00- 29/70
H04N 1/00
(57)【特許請求の範囲】
【請求項1】
操作手段と、
印刷される画像データが記憶されたアドレスを登録する登録手段と、
前記登録されたアドレスに基づいて前記画像データを受信する受信手段と、
前記受信手段によって受信した画像データに基づいて印刷処理を実行するよう制御する制御手段と、
前記受信手段によって受信した画像データに基づく印刷が前記操作手段によって受け付けた指示に基づいて実行されるときに印刷される第1の部数を設定する第1の設定手段と、
ユーザによって指定された印刷開始時刻を設定する第2の設定手段と、
前記受信手段によって受信した画像データに基づく印刷が前記第2の設定手段によって設定された前記印刷開始時刻に基づいて実行されるときに印刷される第2の部数を設定する第3の設定手段とを有し、
前記第2の設定手段は曜日ごとに異なる印刷開始時刻を設定可能であり、前記第3の設定手段は曜日ごとに異なる部数を設定可能であることを特徴とする画像形成装置。
【請求項2】
前記指示に基づき、前記第1の設定手段で設定された前記第1の部数の前記受信手段によって受信された画像データに基づく印刷を実行し、前記第2の設定手段によって設定された前記印刷開始時刻に基づいて、前記第3の設定手段で設定された前記第2の部数の前記受信手段によって受信された画像データに基づく印刷を実行する印刷手段をさらに有することを特徴とする請求項1に記載の画像形成装置。
【請求項3】
前記第3の設定手段により設定された部数に基づき求まる用紙の枚数の合計であって、前記画像データに基づく印刷に用いられる用紙の枚数の合計が閾値を超えたか否かを判定する判定手段と、
前記判定手段による判定の結果に基づいて、
メッセージを表示する表示手段をさらに有することを特徴とする請求項1または2に記載の画像形成装置。
【請求項4】
前記メッセージは、用紙切れの可能性があることをユーザに通知するメッセージであることを特徴とする請求項3に記載の画像形成装置。
【請求項5】
前記第3の設定手段による前記第2の部数の設定がなされていない場合に、前記第2の設定手段によって設定された印刷開始時刻に基づく印刷を、前記第1の設定手段により設定された前記第1の部数で行うことを特徴とする請求項1乃至4のいずれか一項に記載の画像形成装置。
【請求項6】
前記アドレスは、ファイルのパスまたはファイルのUniform Resource Locator(URL)であることを特徴とする請求項1乃至5のいずれか一項に記載の画像形成装置。
【請求項7】
操作手段と、
印刷される画像データが記憶されたアドレスを登録する登録手段と、
前記登録されたアドレスに基づいて前記画像データを受信する受信手段と、
前記受信手段によって受信した画像データに基づいて印刷処理を実行するよう制御する制御手段と、
ユーザによって指定された印刷開始時刻を設定する第1の設定手段と、
前記受信手段によって受信した画像データに基づく印刷が前記第1の設定手段によって設定された前記印刷開始時刻に基づいて実行されるときに印刷される部数を設定する第2の設定手段と、を有し、
前記第1の設定手段は曜日ごとに異なる印刷開始時刻を設定可能であり、前記第2の設定手段は曜日ごとに異なる部数を設定可能であることを特徴とする画像形成装置。
【請求項8】
操作手段を有する画像形成装置の制御方法であって、
印刷される画像データが記憶されたアドレスを登録する登録工程と、
前記登録されたアドレスに基づいて前記画像データを受信する受信工程と、
前記受信工程で受信した画像データに基づいて印刷処理を実行するよう制御する制御工程と、
前記受信工程で受信した前記画像データに基づく印刷が前記操作手段によって受け付けた指示に基づいて実行されるときに印刷される部数を設定する第1の設定工程と、
ユーザによって指定された
印刷開始時刻を設定する第2の設定工程と、
前記受信工程で受信した画像データに基づく印刷が前記第2の設定工程で設定された前記印刷開始時刻に基づいて実行されるときに印刷される第2の部数を設定する第3の設定工程とを有し、
前記第2の設定
工程では曜日ごとに異なる印刷開始時刻を設定可能であり、前記第3の設定
工程では曜日ごとに異なる部数を設定可能であることを特徴とする画像形成装置の制御方法。
【請求項9】
請求項8に記載の画像形成装置の制御方法をコンピュータに実行させるためのコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、画像形成装置、画像形成装置の制御方法ならびにプログラムに関する。
【背景技術】
【0002】
近年、画像形成装置においてはファームウェア上で任意のアプリケーションを動作可能なものが増えてきている。これらはアプリケーションを実行する為の実行環境を持ち、この環境においてアプリケーションを実行することで実現されている。
【0003】
また、このようなアプリケーションにおいて、操作画面に表示されるボタンに対して、データの取得を可能にするアクセス情報と印刷設定を関連付けておくものが知られている。上記のアプリケーションでは、操作画面に表示されるボタンが押下された際に、ボタンに関連付けられたアクセス情報を用いてデータを取得し、設定されている印刷設定に従って印刷を行う。さらに、指定した曜日/時間に印刷を実行する為のスケジュール設定も可能で、このような設定を実行した場合は、指定した曜日/時間が到来した際に、前記ボタンを押下したのと同様の効果が得られるようになる(特許文献1)。
【先行技術文献】
【特許文献】
【0004】
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかしながら、特許文献にあるようなスケジュール設定の場合、指定した曜日/時間が到来した際にボタン押下の場合と同様の印刷設定が適用されてしまう。すなわち、ボタン押下の場合の印刷と、指定した曜日/時間が到来した際の印刷のそれぞれで、異なる部数の印刷を行うためには、それぞれを別々のボタンとして登録することが必要である。
【0006】
本明細書に記載の画像形成装置は、受信した画像データに基づいて印刷される印刷開始時刻と部数を、ユーザが曜日ごとに変えて設定しておくことができるようにすることを目的とする。
【課題を解決するための手段】
【0007】
本明細書に記載の画像形成装置は、操作手段と、印刷される画像データが記憶されたアドレスを登録する登録手段と、前記登録されたアドレスに基づいて前記画像データを受信する受信手段と、前記受信手段によって受信した画像データに基づいて印刷処理を実行するよう制御する制御手段と、前記受信手段によって受信した画像データに基づく印刷が前記操作手段によって受け付けた指示に基づいて実行されるときに印刷される第1の部数を設定する第1の設定手段と、ユーザによって指定された印刷開始時刻を設定する第2の設定手段と、前記受信手段によって受信した画像データに基づく印刷が前記第2の設定手段によって設定された前記印刷開始時刻に基づいて実行されるときに印刷される第2の部数を設定する第3の設定手段とを有し、前記第2の設定手段は曜日ごとに異なる印刷開始時刻を設定可能であり、前記第3の設定手段は曜日ごとに異なる部数を設定可能であることを特徴とする。
【発明の効果】
【0008】
本明細書に記載の画像形成装置は、受信した画像データに基づいて印刷される印刷開始時刻と部数を、ユーザが曜日ごとに変えて設定しておくことが可能である。
【図面の簡単な説明】
【0009】
【
図1】本発明における画像形成装置の主要部の構成の例を示すブロック図である。
【
図2】本発明における画像形成装置の拡張アプリケーションの実行環境の例を示すブロック図である。
【
図3】本発明における画像形成装置のCPU上で動作するソフトウェアモジュールの構成図である。
【
図4】本発明における画像形成装置を含む印刷システムの拡張アプリケーションインストール時の機器構成の例を示す図である。
【
図5】本発明におけるホストPCが有する拡張アプリケーションのインストールデータを、画像形成装置にインストールする際のフローを示す図である。
【
図6A】本発明における拡張アプリケーションの設定画面の例を示す図である。
【
図6B】本発明における拡張アプリケーションの設定画面の他の例を示す図である。
【
図7】本発明におけるアプリケーションの設定フローを示した図である。
【
図8A】本発明における拡張アプリケーションの設定データの例を示す図である。
【
図8B】本発明における拡張アプリケーションの設定データの更なる例を示す図である。
【
図9】本発明におけるアプリケーションのアイコンが押下された際のアプリケーションの実行フローを示す。
【
図10】本発明における拡張アプリケーションのインストールデータの構成を示す図である。
【
図11】本発明おける複数ページドキュメントを印刷する際、各ページがどのように処理されるかを示す図である。
【
図12】本発明におけるコンテンツ印刷アプリケーションの実行中画面のサンプルを示す図である。
【
図13】本発明におけるPauseボタンを押下した後の一時停止処理中画面のサンプルを示す。
【
図14】本発明におけるフォルダ内の2つのファイルを印刷している時に、各ページがどのように処理されるかを示す図である。
【
図15】本発明におけるアプリケーションの設定フローにて、設定情報の登録処理の詳細を示すフローである。
【
図16】本発明における設定画面にて、警告表示をポップアップするサンプルを示す図である。
【発明を実施するための形態】
【0010】
以下、本願発明を実施するための最良の形態について図面を用いて説明する。
【0011】
図1は、画像形成装置の主要部の構成の例を示すブロック図である。画像形成装置はコントローラユニット100を含み、コントローラユニット100には、画像入力デバイスであるスキャナ170や画像出力デバイスであるプリンタ195が接続されるとともに、操作部112が接続される。コントローラユニット100は、スキャナ170で読み取られた画像データをプリンタ195により印刷出力するコピー機能を実現するための制御を行う。
【0012】
コントローラユニット100は、CPU101を有し、CPU101は、ROM103に格納されているブートプログラムによりオペレーションシステム(OS)を立ち上げる。CPU101は、このOS上で、ストレージ104に格納されているプログラムを実行し、これによって各種処理を実行する。このCPU101の作業領域としてはRAM102が用いられる。RAM102は、作業領域を提供するとともに、画像データを一時記憶するための画像メモリ領域を提供する。ストレージ104は、プログラムや画像データ、更には画像形成装置の最大給紙枚数を含む給紙容量についての情報を格納する。
【0013】
CPU101は、システムバス107を介して、他のモジュールと接続される。操作部I/F106は、タッチパネルを有する操作部112とのインターフェースであり、操作部112に表示すべき画像データを操作部112に対して出力する。また、操作部I/F106は、操作部112においてユーザにより入力された情報をCPU101に送出する。ネットワークI/F110は、画像形成装置をLANに接続するためのインターフェースである。
【0014】
USBホストI/F113は、USBストレージ114と通信するインターフェース部である。USBホストI/F113は、ストレージ104に格納されているデータをUSBストレージ114に記憶させるための出力部である。また、USBホストI/F113は、USBストレージ114に格納されているデータを入力し、CPU101にそれを伝える。USBストレージ114は、データを格納する外部記憶装置であり、USBホストI/F113に対して着脱可能である。USBホストI/F113には、USBストレージ114を含む複数のUSBデバイスが接続可能である。
【0015】
RTC115は、現在時刻を制御する。このRTC115で制御する時刻情報はジョブ投入時間の記録などに利用する。
【0016】
画像バスI/F105は、システムバス107と、画像データを高速で転送する画像バス108とを接続し、データ形式を変換するためのバスブリッジである。画像バス108は、PCIバスまたはIEEE1394等によって構成される。画像バス108上には、デバイスI/F120、スキャナ画像処理部180、プリンタ画像処理部190が設けられる。デバイスI/F120には、スキャナ170およびプリンタ195が接続され、デバイスI/F120は、画像データの同期系/非同期系の変換を行う。スキャナ画像処理部180は、入力画像データに対し補正、加工、編集を行う。プリンタ画像処理部190は、プリント出力画像データに対してプリンタ195に応じた補正、解像度変換などを行う。
【0017】
図2は、画像形成装置の拡張アプリケーション240の実行環境の例を示すブロック図である。ストレージ104に記憶されているプログラムを、CPU101がRAM102にロードし、プログラムを実行することで
図2の各モジュールは実現される。オペレーティングシステムであるOS201上で、プリンタやFAX、スキャナと言った画像処理ユニットを制御するためのネイティブプログラム210が動作する。また、拡張アプリケーション240の実行環境である仮想マシン(Virtual Machine:VM)230もOS201上で動作する。VM230は、拡張アプリケーション240を制御するプログラムを理解し実行するモジュールである。拡張アプリケーション240は、必ずVM230上で動作する。VM230で動作するプログラムは、CPU101で動作する命令とは異なり、VM230専用の命令で動作する。この命令をバイトコードと呼ぶ。一方でCPU専用命令をネイティブコードと呼ぶ。VMがこのバイトコードを逐次解釈し処理することで、CPU101上ではネイティブコードと、VMのバイトコードが動作する。VMには、バイトコードをそのまま逐次解釈処理するタイプと、バイトコードをネイティブコードに変換して実行するタイプがある。この実施例のVM230は前者のタイプであるが、後者のタイプであってもよい。一般的にCPUの種別が異なると、CPUで動作する命令に互換性が無い様に、VMが異なるとVMで動作する命令も互換性が無い。またこの実施例のVM230は、CPU101上で動作するソフトウェアモジュールであるが、ハードウェアモジュールであってもよい。
【0018】
ネイティブプログラム210内には、プリンタやFAX、スキャナと言った画像処理ユニットを制御するためのネイティブスレッド214と、仮想マシン230を動かすためのVMスレッド215がある。VMスレッドはVM230の数に対応する数存在する。ここでは、211、212,213の3つのスレッドが生成されている。
【0019】
VMシステムサービス220は、拡張アプリケーション240から共通利用されるユーティリティライブラリである。拡張アプリケーション240からVMシステムサービス220の機能を呼び出すことにより、拡張アプリケーション240を開発する手間を省く、または画像形成装置の各モジュールへアクセスすることができる。VMシステムサービス220には、VMとして最低限動作させる標準VMシステムサービス221と、画像形成装置の各モジュールにアクセスや、OSの機能を提供する拡張VMシステムサービス222がある。標準VMシステムサービス221は、拡張アプリケーション240をロードする機能も含む。VMシステムサービス220は、VM230が拡張アプリケーション240内のバイトコードで指示されているAPIを実行することで、APIに関連づけられているVMシステムサービス220が呼び出される。
【0020】
VM230は、拡張アプリケーション240を実行する。VM230は、拡張アプリケーション240のスレッド毎に生成される。この図では拡張アプリケーションA241で2つのスレッドを動かすためのVM A-1 231と、VM A-2 232、拡張アプリケーションB242で1つのスレッドを動かすためのVM B-1を生成している。
【0021】
また、画像形成装置の操作部112に表示されるメインメニュー画面には、拡張アプリケーション240ごとのアイコンが表示される。このアイコンをユーザが選択したことを、操作部112を通じて操作部I/F106が検知すると、操作部I/F106はその旨をCPU101に送信する。その旨を受け取ったCPU101はユーザによって選択された拡張アプリケーション240を起動する。
【0022】
図3は、本実施例の画像形成装置のCPU101上で動作するソフトウェアモジュールの構成図である。サーブレットサービス304は、ネットワークI/F110を通してHTTPアクセスされた際に、そのリクエストを受け付けアクセスされたURLによってモジュールに処理を振り分けるモジュールである。UI制御部303は、操作部112に画面を表示し、ユーザからの操作を受け付けて、その操作情報を適切なモジュール(アプリケーション管理部302か標準機能制御部301)に通知を行うモジュールである。アプリケーション管理部302は、インストールされている拡張アプリケーション240のインストールやの起動等の管理を行うモジュールである。アプリケーション実行制御部305は、アプリケーション管理部302で起動されたアプリケーションの実行制御を行うモジュールである。具体的には、VMスレッド215、VMシステムサービス220、VM230、拡張アプリケーション240を制御する。ストレージ制御部306は拡張アプリケーション240のプログラムや、設定情報を記録管理するモジュールである。アプリケーション実行制御部305は、ストレージ制御部306にアクセスしてアプリケーションのプログラムを読み出す。また、各モジュールは、ストレージ制御部306にアクセスし、設定値の参照、設定を行う。標準機能制御部301は、画像形成装置の標準機能であるコピーやFAXの制御や、その他の画像成形装置に必要な制御(例えばUSBホストパスI/F113の制御)を行うモジュールである。タイマー管理部307は、RTC115から現在時刻情報を取得し、規定の時刻が経過したことを検知し、アプリケーション管理部302に通知する。アプリケーション管理部302は、タイマー管理部307から通知を受け、アプリケーションのタイマー処理の実行をアプリケーション実行制御部305に依頼する。
【0023】
図4は、本実施例の画像形成装置を含む印刷システムの拡張アプリケーション240インストール時の機器構成の例を示す図である。この印刷システムは画像形成装置401、ホストPC402、サーバ403、イーサネット404によって構成される。
【0024】
画像形成装置401は、イーサネット404経由で、拡張アプリケーション240のインストール手段をホストPC402に提供する。ホストPC402は、拡張アプリケーション240のインストールデータを有しており、画像形成装置401が提供する拡張アプリケーション240のインストール手段を用いて画像形成装置401に拡張アプリケーション240をインストールする。サーバ403は、印刷する画像データを有しており、画像形成装置401からの画像データ取得要求を受けて、画像データを画像形成装置401に送信する。
【0025】
図5は、ホストPC402が有する拡張アプリケーション240のインストールデータを、画像形成装置401にインストールする際のフローを示す図である。下記フローはCPU101が実行する。まずS501で、ホストPC402は、画像形成装置401にインストールを行うため、認証要求を行う。この時、認証に必要な情報(ユーザID,パスワード)を画像形成装置401に通知する。S502で認証要求を受けたサーブレットサービス304は、認証情報を確認し問題なければ認証許可を返す。この時、認証許可を示す文字列(Token)を一緒に返す。認証許可を受けたホストPCはS503で、インストール開始要求を画像形成装置401に通知する。この時、ホストPC402が有する拡張アプリケーション240のデータとS502で取得したTokenを通知する。S504で、インストール開始要求を受けたサーブレットサービス304は、Tokenが正しいことを確認し、問題なければS504でアプリケーション管理部302に拡張アプリケーション240のインストール要求をする。インストール要求を受けたアプリケーション管理部302は、S505でストレージ制御部306にアプリケーションデータ書き込み要求をする。ストレージ制御部306は、アプリケーションデータ書き込み要求を受け、ストレージ104にアプリケーションデータを書き込む。書き込み完了後にS506でアプリケーション管理部302に完了通知する。S507でアプリケーション管理部は、インストールデータに含まれるタイマー情報をタイマー管理部307に登録する。タイマー制御部は、S508でタイマー完了をアプリケーション管理部302に通知する。タイマー情報については後述する。S509でホストPC402は、インストール状況取得要求を画像形成装置401に通知する。この時、S502で取得したTokenを通知する。S506で、インストール状況取得要求を受けたサーブレットサービス304は、Tokenが正しいことを確認し、問題なければS510でアプリケーション管理部302にインストール状況を問い合わせる。インストール状況の問い合わせを受けたアプリケーション管理部302は、現在のインストール状況を返す。ここではインストール中のためS511はインストール中状態を返す。サーブレットサービス304は、アプリケーション管理部302から取得した状態をホストPC402に通知する。S513からS516で再度、ホストPC402からインストール状況の確認を行う。ここでは、インストールが完了しているため、インストール完了が通知される。
【0026】
以上の処理により、ホストPC402が有する拡張アプリケーション240のデータを、画像形成装置401にインストールする。
【0027】
図6Aは、拡張アプリケーション240の設定画面601の例を示す図である。この設定画面は画像形成装置401とイーサネット404で接続されたホストPC402上で動作するWebブラウザに表示される。
【0028】
設定画面601には、基本設定としてボタン名604、ファイルのパス情報605、実行前確認画面表示606が含まれる。ボタン名604には画像形成装置401の操作部112のメインメニュー画面に表示されるアイコンの名称が設定され、ファイルのパス情報605には、印刷対象のファイルの取得元となるアドレスが設定される。ここで、ファイルのアドレスとしては、ファイルを特定するURL情報を指定しても良いし、ファイルが格納されているフォルダのパス情報を指定しても良い。また実行前確認画面表示606では、画像形成装置401の操作部112のメインメニュー画面に表示されるアイコンを押下した際に、実行確認画面を表示するか否かが設定される。
【0029】
設定画面601には、指定した曜日/時間に印刷を実行する為のスケジュール設定も含まれる。スケジュール設定ではスケジュール設定を有効にするか否かの設定608と、各曜日における印刷実行時間の設定609が行われる。
【0030】
さらに、設定画面601には、用紙サイズ、両面、カラーモード、部数、給紙部といったプリント設定607の項目も含まれる。部数については、ボタン押下時の部数610と、スケジュール設定時の部数611を独立して設定することが可能である。メインメニュー画面に表示されたアイコンが選択されたことに基づき印刷が実行される場合と、
図6Aに示す画面において設定された時刻を迎えたことに基づき印刷が実行される場合のそれぞれで印刷部数を設定することができる。
【0031】
設定画面601でOKボタン602が押下されると、設定画面601の設定と紐付いたアイコンが画像形成装置401の操作部112のメインメニュー画面に表示される。設定画面601でキャンセルボタン603が押下されると設定画面601の設定を破棄し、設定画面601が閉じられる。さらに、設定画面601による異なる設定を複数行うことにより、それぞれの設定と紐づいた複数のアイコンが画像形成装置401の操作部112のメインメニュー画面に表示される。
【0032】
図6Bは、拡張アプリケーション240の設定画面601の更なる例を示す図である。
図6Aでは、部数について、ボタン押下時の部数(610)と、スケジュール設定時の部数611を独立して設定することが可能である。
図6Bでは、スケジュール設定時について、曜日と時間の異なる組み合わせ毎に部数612を設定することが可能となる。なお、ボタン押下時の部数については、プリント設定607の項目に含まれる。
【0033】
図6Bにおける、拡張アプリケーション240の設定画面601の他の設定については、
図6Aの説明に同じである。
図6Bのようにすることで、スケジュール印刷を用いる場合に、
図6Aの場合よりもより細かく印刷部数の設定を行うことができる。
【0034】
図7は、アプリケーションの設定フローを示した図である。ここではアプリケーションの例として、ユーザが登録したフォーム画像データを印刷するフォーム印刷アプリケーションのアイコン情報生成処理を説明する。アプリケーションによって細かい処理内容は異なるが、基本的な処理はここで示すステップと同じ処理になる。下記フローはストレージ104に格納されたプログラムに従って、CPU101が実行する。
【0035】
アプリケーションの設定は、ホストPC402上で動作するWebブラウザから画像形成装置401に接続し、Webブラウザを介して設定を行う。まず、Webブラウザからサーブレットサービス304に対してアプリケーションを設定するための設定用URLに対し情報を通知し、処理をリクエストする(S701)。サーブレットサービス304は、アプリケーション管理部302に処理を依頼する(S702)。アプリケーション管理部302は、リクエストされているURLから該当アプリケーションを特定し、該当アプリケーションのVM起動処理S703を行う。次にアプリケーションサーブレットを実行する。この時、Webブラウザから通知されたURLと情報をアプリケーションに通知する(S704)。アプリケーションは、要求されたURLのリクエストに対するレスポンス処理を行う(S705)。ここでは、設定用URLに対するHTMLリソースを返す準備を行う。このHTMLリソースには、フォーム印刷処理に必要な
図8に示す情報を参照・設定するためのHTML FORMが記述されている。次にアプリケーションは準備したHTMLリソースをレスポンスし、アプリケーションを終了する(S706)。アプリケーション管理部302は、受けたレスポンスをそのままサーブレットサービス304にレスポンスする(S707)。続いてアプリケーションの終了を受け、VM終了処理を行う(S708)。サーブレットサービス304は、受けたレスポンスをそのままレスポンスする(S709)。ユーザはWebブラウザに表示された画面を編集し、アプリケーションの設定を変更する(S710)。ここでは、新しく印刷フォームを登録したとする。Webブラウザはユーザの操作によって設定情報登録リクエストをサーブレットサービス304に要求する(S711)。サーブレットサービス304は、アプリケーション管理部302に処理依頼する(S712)。アプリケーション管理部302は、S703~S708と同様に、要求されたURLから該当アプリケーションを特定し、該当アプリケーションのアプリケーションサーブレットを実行する。そして、アプリケーション管理部302は、Webブラウザからの要求を処理し、設定情報を登録する(S713、S714、S715、S716)。アプリケーション管理部302は、受けたレスポンスをそのままサーブレットサービス304にレスポンスする(S717)。サーブレットサービス304は、受けたレスポンスをそのままレスポンスする(S718)。アプリケーションは登録したフォームのアイコンを登録するために、アプリケーション管理部302にアイコン情報更新通知を送り、アプリケーションを終了する(S719)。アプリケーション管理部302は、アプリケーション終了を受け、VM終了処理を実行する(S720)。次に、アイコン更新処理を行う(S721)。
【0036】
図8Aは、拡張アプリケーション240の設定データ801の例を示す図である。
図8A、
図8Bは設定データの一例であり、これに限定するものではない。
【0037】
設定データ801は、拡張アプリケーション240の設定画面601でOKボタン602が押下された際にストレージ104に書き込まれる。
【0038】
802はボタン名、803は設定を有効にするか否か(画像形成装置401の操作部112にアイコンを表示するか否か)の設定が示されている。さらに、804は実行前確認画面を表示するか否かの設定値、805は印刷対象のファイルのパス情報を示している。設定データは、拡張アプリケーション240の設定画面601中の604、605、606で設定された値が反映される。
【0039】
また、806はそれぞれ用紙サイズ、両面、カラーモード、ボタン押下時の部数、スケジュール設定時の部数、給紙部の設定を示し、拡張アプリケーション240の設定画面601中の607、610、611で設定された値が反映される。
【0040】
さらに、807はスケジュールの設定を行うか否かの設定値及び、各曜日におけるスケジュールの設定値を示す。ここでは、拡張アプリケーション240の設定画面601の609のように、日曜日のAM1:30、月曜日のPM5:45にスケジュールを設定した際の設定データの例を示す。
【0041】
図8Bは、拡張アプリケーション240の設定データ801の更なる例を示す図である。
図8Aでは、部数について、ボタン押下時の部数とスケジュール設定時の部数とが、それぞれ806に反映された。
図8Bでは、ボタン押下時の部数が808に反映され、スケジュール設定時におけるそれぞれの曜日の部数が、809の各曜日におけるスケジュールの設定値に反映される。ここでは、日曜日のAM1:30に3部の印刷、月曜日のPM5:45に6部の印刷として、スケジュールを設定した際の設定データの例を示す。
【0042】
図8Bにおける、拡張アプリケーション240の設定データ801の他の設定については、
図8Aの説明に同じである。
【0043】
図9は、アプリケーションのアイコンが押下された際に、アプリケーションのアイコンに紐付いたパス情報をもとにファイルの印刷を行うアプリケーションの実行フローを示す。このアプリケーションをコンテンツ印刷アプリケーションと呼称する。下記フローはストレージ104に格納されたプログラムに従って、CPU101が実行する。
【0044】
操作部112上の拡張アプリケーション240のアイコンが押下されると(S901)、操作部112は拡張アプリケーション240に対しアプリケーション実行指示を行う(S902)。アプリケーション実行指示を受けた拡張アプリケーション240は、アイコンに紐付いたパス情報をもとにサーバ403に対し、ファイル情報取得要求を行う(S903)。サーバ403は、拡張アプリケーション240からファイル情報取得要求を受けると、サーバ403内のファイルから対象のファイルの特定を行う(S904)。ここで、対象ファイルの特定とは、パス情報でファイルが指定されていた場合はそのファイル、パス情報でフォルダが指定されていた場合はそのフォルダに含まれる複数のファイルを示す。次にサーバ403はS904で特定した対象ファイルの情報を拡張アプリケーション240に送信する(S905)。拡張アプリケーション240はサーバ403から対象ファイル情報を受信すると、操作部112に対し確認画面と対象ファイルの表示指示を行う(S906)。操作部112は拡張アプリケーション240から確認画面と対象ファイルの表示指示を受けると、設定画面601で設定したプリント設定と対象ファイルの情報を含む確認画面の表示を行う(S907)。S907において、拡張アプリケーション240は、今回の印刷がアイコン選択によるものか、スケジュール設定された時刻を迎えたことに基づくのもあるかを判定する。ここで、拡張アプリケーション240は、今回の印刷がアイコン選択によるものであると判定する。拡張アプリケーション240は、選択されたアイコンに紐づく印刷設定であって、
図8A、
図8Bに示す設定データに記載の”copies_button”の値を印刷部数として表示する。S907で表示した確認画面でOKボタンが押下されると(S908)、操作部112は拡張アプリケーション240に対し印刷要求を行う(S909)。拡張アプリケーション240は操作部112から印刷要求を受けると、操作部112に対し印刷中画面の表示指示を行った後(S910)、サーバ403に対しファイル取得要求を行う(S912)。サーバ403は拡張アプリケーション240からファイルファイル取得要求を受けると、サーバ403は拡張アプリケーション240に対し、S904で特定したファイルのデータ送信を行う(S913)。拡張アプリケーション240はサーバ403からファイルデータを受信した後(S914)、受信したファイルデータの印刷を実行する(S915)。S915において、拡張アプリケーションは、選択されたアイコンに紐づく印刷設定であって、
図8A、
図8Bに示す設定データに記載の”copies_button”の値を印刷部数として表示する。対象のファイルが複数存在する場合は、S914、S915の処理が複数繰り返される。また、S915で印刷実行が終了すると、拡張アプリケーション240は操作部112に対し終了通知を行う(S916)。操作部112はS916で終了通知を受信するまで印刷中画面を表示する(S911)。
【0045】
次に、
図9を用いてスケジュール印刷が実行される場合の処理を実行する。ここでは、ユーザがメニュー画面に表示されるアイコンを選択した場合の処理と異なる部分のみを説明する。
図6Aまたは
図6Bで設定された時刻を迎えたことに基づき、S902以降の処理を実行する。S906に相当する処理では、拡張アプリケーション240が、今回の印刷がアイコンの選択によるものであるか、スケジュール設定された時刻を迎えたことに基づくものであるかを判定する。ここでは、拡張アプリケーションはスケジュール設定された時刻を迎えたことに基づく印刷であると判定する。拡張アプリケーションが
図8A、
図8Bに示す“copies_sheduled”で示される印刷部数を表示する。また、S915でも、拡張アプリケーションが
図8A、
図8Bに示す“copies_sheduled”で示される印刷部数に基づき印刷を実行する。
【0046】
図10は、拡張アプリケーション240のインストールデータの構成を示す。
【0047】
1001はアーカイブである。このアーカイブは、拡張アプリケーション240を構成するすべてのデータを1つに纏めたデータである。拡張アプリケーション240を構成するファイルは、大きく3つに分けることができる。1つは拡張アプリケーション240の動作をプログラム言語で記述したスクリプト(1002~1005)。2つ目は、アプリケーションで利用する画像データや表示メッセージなどを格納するリソースファイル(1006~1007)。3つ目は、アプリケーション名などを宣言するmetaファイル1008である。なお、上述のスクリプトは、メインスクリプト1002と、サーブレットスクリプト1003、ハンドラースクリプト1004、上記スクリプトが共通で利用する共通スクリプト1005で構成される。メインスクリプト1002は、操作部112に表示されるアイコンが押下された時の動作を記載するスクリプトである。サーブレットスクリプト1003は、サーブレットサービス304の処理を行うスクリプトである。ハンドラースクリプト1004は、タイマー処理を行うスクリプトである。拡張アプリケーション240を実行する際、必要なスクリプトだけがメモリにロードするため、無駄なメモリ消費を抑えることができる。
【0048】
図11は、複数ページドキュメントを印刷する際、各ページがどのように処理されるかを示す図である。アプリケーションは登録されているサーバ403から、複数ページで構成されるドキュメントをダウンロードする(1101)。ダウンロード中のデータを逐次プリント機能に投入する(1102)。投入されたデータはスプールされる(1103)。スプールされたデータからレンダリングされる(1104)。レンダリングされたデータをプリントする(1105)。プリントされたデータが出力される(1106)。アプリケーションは、ダウンロードした全データの投入が終わった時点で終了する。アプリケーション終了後も、スプールされているデータの印刷は継続される。
【0049】
図12は、コンテンツ印刷アプリケーションの実行中画面のサンプルを示す。ここで1201は、現在投入しているドキュメントの投入進捗状態を示す。1202は、印刷するファイル数と現在投入中のファイル番号を示す。この例では全部で5ファイルを印刷し、現在2番目のファイルを投入中であることを示す。1203は、ジョブの投入を一時的に停止してアプリケーションの終了を行うボタンである。コンテンツ印刷アプリケーション実行中に、ユーザがスキャンしたいというような場合にこのボタンを押下することで、ジョブを停止してアプリケーションを終了し、ユーザはスキャンなど画像形成装置401を利用できる。
【0050】
図13は、
図16のPauseボタン1203を押下した後の一時停止処理中画面のサンプルを示す。複数ページドキュメントのデータ投入中(
図11の1102)にアプリケーションを停止すると、ドキュメントの途中までが印刷された状態で停止して、不完全な印刷結果になってしまう。そこでPauseボタン1203が押下された時は、アプリケーションを即時停止するのではなく、ダウンロードしたファイルの全データの投入が終わるのを待ってから終了する。この画面の1301は、現在投入しているドキュメントの投入進捗状態を示す。この投入が終わった時点で、アプリケーションは終了する。1302は、不完全な印刷結果になってしまっても構わない場合の即時停止を実行するボタンである。このボタンが押下された場合は、データ投入中であっても、アプリケーションを即時停止する。
【0051】
図14は、フォルダ内の2つのファイルを印刷している時に、各ページがどのように処理されるかを示す図である。最初にファイル1が投入され、ファイル1の投入が終わった時点でファイル2が投入される。この時、ファイル1はまだ印刷中で、ファイル2はスプールされているだけで、印刷を待つ状態になる。
【0052】
図15は、
図7のアプリケーションの設定フローにて、設定情報の登録処理S715の詳細を示すフローである。ここでは、アプリケーションにて、設定画面601による異なる設定を複数行い、かつその一つ乃至複数の設定においてスケジュール設定を有効にした場合、設定内容に応じて登録処理結果レスポンスS716に警告内容を含める例を示す。
【0053】
具体的には、アプリケーションはS715の登録処理の際に、設定情報内にスケジュール設定の部数変更が含まれるかをS1501で確認する。スケジュール設定の部数変更が含まれる場合は、アプリケーションはS1502で画像形成装置401の最大給紙枚数をストレージ104より取得する。さらに、アプリケーションは、部数変更が行われた曜日について、アプリケーションによる全ての設定における当該曜日の部数の合計が、画像形成装置401の閾値を超過するかをS1503で判定する。S1503で用いられる閾値は、画像形成装置の最大給紙枚数である。最大給紙枚数は画像形成装置のカセット1段分に相当する値にであっても、画像形成装置の備える全カセットの和であってもよい。
【0054】
ここで、S1503で部数の合計が閾値を超えるという判定結果に基づき、S1504でWebブラウザに通知する登録処理結果レスポンスS716に、当該曜日の印刷部数が画像形成装置401の最大給紙枚数を超過する警告内容を含める。S1503において部数の合計が閾値を超えないとの判定結果に基づき、
図15に記載の処理を終了する。
【0055】
S1503では、スケジュール設定において設定されている印刷部数と閾値を比較するとした。これは、1部の印刷につき印刷で少なくとも1枚の用紙が用いられるためである。
図6Bに示す画面で設定された印刷設定に基づく、実際にスケジュール印刷を実行したときに用いられる用紙の枚数を求め、閾値と比較するとしてもよい。
【0056】
図16は、設定画面601にて、警告表示をポップアップするサンプルを示す。ここでは、1601により、設定画面601にて、当該曜日の印刷部数が画像形成装置401の最大給紙枚数を超過する旨の警告表示を、ポップアップする例を示す。1601の文言では、当該曜日の部数を減らすか、当該曜日の用紙切れに注意すべき旨を警告している。もちろん、出力する文言は一例であり、用紙の補給が必要となる可能性があることに基づくメッセージであれば、上記に限定されるものではない。上記メッセージ表示を行うことで、スケジュール設定された印刷の実行で、用紙切れの可能性があることをユーザに伝えることができる。
【0057】
<その他の実施形態>
本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(プログラム)をネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム又は装置のコンピュータ(又はCPUやMPU等)がプログラムコードを読み出して実行する処理である。この場合、そのコンピュータプログラム、及び該コンピュータプログラムを記憶した記憶媒体は本発明を構成することになる。