JP6537390B2 - 画像形成装置、制御方法、およびプログラム - Google Patents

画像形成装置、制御方法、およびプログラム Download PDF

Info

Publication number
JP6537390B2
JP6537390B2 JP2015150506A JP2015150506A JP6537390B2 JP 6537390 B2 JP6537390 B2 JP 6537390B2 JP 2015150506 A JP2015150506 A JP 2015150506A JP 2015150506 A JP2015150506 A JP 2015150506A JP 6537390 B2 JP6537390 B2 JP 6537390B2
Authority
JP
Japan
Prior art keywords
print
print data
receiving
data
server
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
JP2015150506A
Other languages
English (en)
Other versions
JP2017033143A (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 JP2015150506A priority Critical patent/JP6537390B2/ja
Priority to US15/217,829 priority patent/US9798504B2/en
Publication of JP2017033143A publication Critical patent/JP2017033143A/ja
Application granted granted Critical
Publication of JP6537390B2 publication Critical patent/JP6537390B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1236Connection management
    • 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/1206Improving or facilitating administration, e.g. print management resulting in increased flexibility in input data format or job format or job type
    • 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/1211Improving printing performance
    • G06F3/1212Improving printing performance achieving reduced delay between job submission and print start
    • 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/1211Improving printing performance
    • G06F3/1217Improving printing performance achieving reduced idle time at the output device or increased asset utilization
    • 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/1265Printing by reference, e.g. retrieving document/image data for a job from a source mentioned in the job
    • 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/1267Job repository, e.g. non-scheduled jobs, delay printing
    • 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/1287Remote printer device, e.g. being remote from client or server via internet
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/00127Connection or combination of a still picture apparatus with another apparatus, e.g. for storage, processing or transmission of still picture signals or of information associated with a still picture
    • H04N1/00204Connection or combination of a still picture apparatus with another apparatus, e.g. for storage, processing or transmission of still picture signals or of information associated with a still picture with a digital computer or a digital computer system, e.g. an internet server
    • H04N1/00209Transmitting or receiving image data, e.g. facsimile data, via a computer, e.g. using e-mail, a computer network, the internet, I-fax
    • H04N1/00214Transmitting or receiving image data, e.g. facsimile data, via a computer, e.g. using e-mail, a computer network, the internet, I-fax details of transmission
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/00127Connection or combination of a still picture apparatus with another apparatus, e.g. for storage, processing or transmission of still picture signals or of information associated with a still picture
    • H04N1/00204Connection or combination of a still picture apparatus with another apparatus, e.g. for storage, processing or transmission of still picture signals or of information associated with a still picture with a digital computer or a digital computer system, e.g. an internet server
    • H04N1/00209Transmitting or receiving image data, e.g. facsimile data, via a computer, e.g. using e-mail, a computer network, the internet, I-fax
    • H04N1/00222Transmitting or receiving image data, e.g. facsimile data, via a computer, e.g. using e-mail, a computer network, the internet, I-fax details of image data generation or reproduction, e.g. scan-to-email or network printing
    • H04N1/0023Image pull arrangements, e.g. to a multifunctional peripheral from a networked computer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/00127Connection or combination of a still picture apparatus with another apparatus, e.g. for storage, processing or transmission of still picture signals or of information associated with a still picture
    • H04N1/00204Connection or combination of a still picture apparatus with another apparatus, e.g. for storage, processing or transmission of still picture signals or of information associated with a still picture with a digital computer or a digital computer system, e.g. an internet server
    • H04N1/00244Connection or combination of a still picture apparatus with another apparatus, e.g. for storage, processing or transmission of still picture signals or of information associated with a still picture with a digital computer or a digital computer system, e.g. an internet server with a server, e.g. an internet server
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/32Circuits or arrangements for control or supervision between transmitter and receiver or between image input and image output device, e.g. between a still-image camera and its memory or between a still-image camera and a printer device
    • H04N1/32502Circuits or arrangements for control or supervision between transmitter and receiver or between image input and image output device, e.g. between a still-image camera and its memory or between a still-image camera and a printer device in systems having a plurality of input or output devices
    • H04N1/32523Circuits or arrangements for control or supervision between transmitter and receiver or between image input and image output device, e.g. between a still-image camera and its memory or between a still-image camera and a printer device in systems having a plurality of input or output devices a plurality of output devices
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N2201/00Indexing scheme relating to scanning, transmission or reproduction of documents or the like, and to details thereof
    • H04N2201/32Circuits or arrangements for control or supervision between transmitter and receiver or between image input and image output device, e.g. between a still-image camera and its memory or between a still-image camera and a printer device
    • H04N2201/3201Display, printing, storage or transmission of additional information, e.g. ID code, date and time or title
    • H04N2201/3212Display, printing, storage or transmission of additional information, e.g. ID code, date and time or title of data relating to a job, e.g. communication, capture or filing of an image
    • H04N2201/3219Display, printing, storage or transmission of additional information, e.g. ID code, date and time or title of data relating to a job, e.g. communication, capture or filing of an image of a job status, e.g. successful execution

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computing Systems (AREA)
  • Accessory Devices And Overall Control Thereof (AREA)

Description

本発明は、印刷サービスから印刷データを受信し印刷を行う画像形成装置、制御方法、およびプログラムに関する。
近年、インターネット上にサーバーを配置し、サーバーがクラウドサービスを提供するビジネスが展開されてきている。例えば、データをファイル形式に保存するストレージサービスや、データベース機能を提供するデータベースサービスなどである。また、印刷システムにおいても、プリントサーバーをインターネット上のプリントサービスやデータ変換サービスとして提供する形態が求められてきている。
クラウドサービスとしてのサービス提供では大規模なデータセンター上にサーバーを配置できるため、顧客ごとのハードウェアの管理が不要となるメリットがある。また、サーバーの負荷に応じてコンピューティング・リソースを追加することが容易に行えるメリットがある。このクラウドサービスの普及に伴い、クラウドサービスにより提供されるプリントサーバーからインターネット越しに印刷データを送信しプリンターにて印刷を行うプルプリント環境が求められてきている。そして、このようなクラウドサービスは、多くのコンピューティング・リソースを用いて文書データのデータ処理をクラウド側で分散実行し、多くのクライアントからの要求を同時に処理することが主な特徴である。このためプリントサーバーでは、多種多様のプリンターが解釈可能なデータフォーマットに変換する機能が重要である。これは、従来クライアント端末におけるデータ変換ドライバーでのデータ変換をクラウド上のプリントサーバーで実現することで、クライアント端末が不要なクラウドプリンティングが実現可能とするためである。本技術の一つに、1つの印刷データを文書の種類ごとに異なる複数のサーバーで変換処理するために分割された印刷データをプリンターで統合し、印刷を行う技術として特許文献1がある。
特許第4509965号
入稿された文書データの印刷ページ数や部数が多い場合印刷データのサイズが大きくなり、印刷サーバーである特許文献1の画像処理サーバーにおいてデータ変換処理に時間がかかる場合がる。この場合、印刷ジョブに含まれる全ての印刷データの変換が終了するまでプリンターは印刷を開始することができないため、ファーストプリントが遅くなりユーザーを待たせてしまうという課題がある。
そこで、ファーストプリントを早くするためプリントサーバーは全ての印刷データの完成を待たずに、完成したページの印刷データからプリンターへ順次送信し印刷させる形態が考えられるがこの形態にも課題がある。プリントサーバーから印刷データを取得するためにプリンター内に配備されるプルプリントアプリケーションは、プリントエンジンを制御するコントローラに対し通信ポートを介してプリントサーバーから受信した印刷データを送信することが想定される。この場合、プリンターは1つの通信セッションで送られてきた印刷データを1ジョブとして印刷を行うので、プルプリントアプリケーションとコントローラとの通信が一度切断されると同じ印刷ジョブ内の印刷データであっても別の印刷ジョブとして処理されてしまう。画像処理サーバーの変換が遅れているため、プルプリントアプリケーションとコントローラとの通信が切断される可能性があるため、この課題は発生し得る。
本発明の目的は、ファーストプリントを早くするため完成したページの印刷データを受信し印刷を開始するとともに、プルプリントアプリケーションがコントローラとの通信セッションを切断することなく印刷データを送信する仕組みを提供することにある。
本発明の一実施形に係る画像形成装置は、印刷データを提供する印刷サービスを備えたプリントサーバーシステムと接続可能であり、印刷手段を備えた画像形成装置であって、クライアント端末からの印刷指示を受信したことに応じて前記印刷データをストレージサービスに保存した前記印刷サービスから前記印刷データが保存された場所を示すURLを受信し、受信した前記URLを基に前記印刷データを受信する受信手段と、前記受信手段により受信された印刷データを前記画像形成装置に備えられた印刷手段へ送信する送信手段と、を有し、前記送信手段は、前記印刷データの内の一部の印刷データが前記受信手段により受信されたことに応じて前記印刷手段との通信を開始し、前記受信手段が残りの印刷データを受信し終えるまでの間は前記印刷手段との通信を切断せず、前記受信手段が残りの印刷データを受信し終えたことで前記印刷データの送信を完了したことに応じて前記印刷手段との通信を切断するし、前記受信手段は、前記印刷データの内の一部の印刷データが保存された場所を示すURLを受信し、受信した前記URLを基に前記印刷データの内の一部の印刷データを受信した後、残りの全てもしくは一部の印刷データが保存された場所を示すURLを受信する処理を行うことを特徴とする。
ファーストプリントを早くするため完成したページの印刷データを受信し印刷を開始するとともに、プルプリントアプリケーションがコントローラとの通信セッションを切断することなく印刷データを送信する仕組みを提供することが可能になる。
ネットワーク構成を示すブロック図 プリントサーバー、プリンターのハードウェア構成図 印刷システムのモジュール構成図 (a)プリントサーバーのソフトウェア構成図、(b)プリンターのソフトウェア構成図 Webブラウザの画面の例 プリントサーバー、プルプリントアプリケーションで管理するデータ インディックスファイルの例 プルプリントアプリケーションの通信方式の概念図 (a)Webブラウザ、プリントサーバー、プルプリントアプリケーションの印刷開始シーケンス、(b)Webブラウザ、プリントサーバー、プルプリントアプリケーションの印刷処理シーケンス プリントサーバーのデータ変換フロー 実施例2におけるプリントサーバーのデータ変換フロー
以下、本発明を実施するための形態について図面を用いて説明する。
<ネットワーク構成>
図1は、本発明の実施形態に係る印刷システムのネットワーク構成を示す図である。図1において、プリンター104、105、クライアント端末109、110はローカルネットワーク107を介して複数台接続されていることを想定している。プリンター104、105、クライアント端末109、110は、ローカルネットワーク107を介してインターネットワーク108にアクセスし、プリントサーバー101、ストレージサーバー102、認証サーバー103にアクセスすることができる。プリンター104、105、クライアント端末109、110は有線または無線LANを介してネットワークに接続する。本実施例では、プリンター104、クライアント端末109は、無線LANターミナル106を介してネットワークに接続することを想定している。無線LANターミナル106は、一般的なネットワーク・ルーター機能を有した無線LANの親機であり、家庭内や事務所などの中で無線LANを提供している。ネットワーク107〜108は、例えば、インターネット等のLAN、WAN、電話回線、専用デジタル回線、ATMやフレームリレー回線、ケーブルテレビ回線、データ放送用無線回線等のいずれである。またこれらの組み合わせにより実現される、いわゆる通信ネットワークである。ネットワーク107〜108は、データの送受信が可能であればよい。そして、クライアント端末109〜110からプリントサーバー101、プリンター104〜105への通信手段、プリンター104〜105からプリントサーバー101、ストレージサーバー102、認証サーバー103への通信手段は異なっていてもよい。
クライアント端末109〜110は、例えば、デスクトップパソコン、ノートパソコン、モバイルパソコン、PDA(パーソナルデータアシスタント)等から成るが、プログラムの実行環境が内蔵された携帯電話であってもよい。クライアント端末109〜110では、Webブラウザ(インターネットブラウザ、WWWブラウザ、World Wide Webの利用に供するブラウザ)等のプログラムを実行する環境が内蔵されている。プリントサーバー101は、印刷する文書を識別する情報と、出力先プリンター104〜105を識別する情報を印刷リクエストと共にクライアント端末109〜110のWebブラウザから受ける。そして、印刷指示を行うコマンドを含めたレスポンスをクライアント端末109〜110のWebブラウザに返す。クライアント端末109〜110のWebブラウザは、指定のプリンター104〜105に対し受け取った印刷コマンドを発行する。プリンター104〜105は、クライアント端末109〜110のWebブラウザから印刷コマンドを受けると、ストレージサーバー102のURLから成る印刷データの保存場所を記載した後述のインディクスファイル701、702を取得する。プリンター104〜105は、インディクスファイル701、702にURLにアクセスし、ストレージサーバー102から印刷データを取得し、印刷を行う。
<プリントサーバーのハードウェア構成>
図2(a)は、プリントサーバー101のハードウェア構成の一例を示す図である。特に断らない限り、本発明の機能が実行可能であるならば、単体の機器であっても、複数の機器からなるシステムであっても、本発明が適用できることは言うまでもない。また、特に断らない限り、本発明の機能が実行可能であるならば、LAN、WAN等のネットワークを介して接続が為され、処理が行われるシステムであっても本発明を適用できることは言うまでもない。本実施例ではシステムバス219により各構成要素が接続されているものとして説明する。
220は情報処理装置の制御装置であるCPUであり、記憶装置224に格納されているプリントサーバーのアプリケーションプログラム、オペレーティングシステム等を実行する。また、CPU220はRAM222にプログラム実行に必要な情報、ファイル等を一時的に格納する制御を行う。また、CPU220はプリントサーバープログラムにおける印刷データへの変換処理等を実行する。221は記憶手段であるROMであり、内部には基本I/Oプログラム等のプログラム、印刷データへのデータ変換の際に使用するフォントデータ、印刷処理、データ変換処理に必要な各種データを記憶する。222は一時記憶手段であるRAMであり、CPU220の主メモリやワークエリア等として機能する。224は外部記憶手段の一つで、大容量メモリとして機能する記憶装置であり、アプリケーションプログラム、OS等を格納している。
<プリンターのハードウェア構成>
図2(b)は、画像形成装置であるプリンター104、105のハードウェア構成図である。ハードウェアの各構成要素は、システムバス230に接続されている。231は装置全体の制御を行うCPUであり、システムバス230に接続される各種デバイスとのアクセスを統括的に制御する。この制御は、ROM232に記憶された制御プログラム等あるいはディスクコントローラ(DKC235)を介して接続された外部メモリ236に記憶された制御プログラムやリソースデータ(資源情報)等に基づく。233はCPU231の主メモリ、ワークエリア等として機能するRAMで、図示しない増設ポートに接続されるオプションRAMによりメモリ容量を拡張することができるように構成されている。240は大容量メモリとして機能する外部記憶手段である。239は操作パネル(操作部)であり、画面を表示、または、画面を介したユーザーの操作指示を受け付ける。また、プリンター104、105の動作モード等の設定やプリンター104、105の動作状況の表示、印刷するコンテンツデータを指定する等の操作を行うためのボタンおよび液晶パネル等の表示部も配置される。234は、ネットワークインターフェースカード(NIC)であり、該インターフェース234を介して外部装置とのデータのやり取りを行う。なお、本図で示したプリントエンジン238は既知の印刷技術を利用するものであり、好適な実施系として例えば電子写真方式(レーザービーム方式)やインクジェット方式、昇華方(熱転写)方式等が挙げられる。237のラスタコントローラは、PDL言語である印刷データを画像データに変換するコントローラである。241の機器I/Fは、USB等で接続可能な外部機器との接続I/Fである。
<システム構成>
図3は、本発明の実施形態に係る印刷システムの構成図である。ここでは、印刷システムの構成図を用いて、各サーバー、プリンター、クライアント端末の動作について説明する。これらの動作は、各装置のメモリに保存されたプログラムをCPUが実行することにより実現される。
プリントサーバー101は、他サービス、または他プログラムから投入される文書データの投入先を示すURLを作成し、他サービス、または他プログラムに返す。このURLはストレージサービスを有するストレージサーバー102への文書データのアップロード先を示すURLである。なお、プリントサーバー101内に設けたストレージサービスであっても良いが、本実施例では別のサーバーにストレージサービスが含まれる場合を想定している。他サービス、または他プログラムはそのURLに対し、ユーザーから印刷指示を受けたことに伴い特定された印刷対象の文書データをアップロードする。プリントサーバー101は、その旨を他サービス、または他プログラムから受け取ると入稿された文書データの文書情報620をデータベース301に保存する。また、プリントサーバー101は、Webブラウザ302からの印刷リクエストを受けると、印刷リクエストとともに受け取る文書ID621に紐づく文書データをストレージサーバー102から取得し、取得した文書データを基に印刷データへの変換を行う。プリントサーバー101は、印刷データを作成し、ストレージサーバー102上のダウンロードURLを作成する。プリントサーバー101は、インディックスファイル701、702にダウンロードURLを記載し、印刷データをダウンロードURLにアップロードするとともにインディックスファイル701、702をストレージサーバー102にアップロードする。プリントサーバー101は、これらの機能を組み合わせることで印刷サービスを実現している。
認証サーバー103は、プリントサーバー101にアクセスするためのユーザー名、パスワード、認証トークン、認可トークンなどの認証情報を保持している。プリントサーバー101は、クライアント端末109、110内のWebブラウザ302からのリクエストに含まれる認証トークンを認証サーバー103に送り、トークンの正当性を検証する。このとき、Webブラウザ302からのリクエストに認証トークンが存在しない場合は、プリントサーバー101は、リクエストを認証サーバー103にリダイレクトさせる。そして認証サーバー103は、Webブラウザ302にログイン画面500を返す。認証サーバー103は、Webブラウザ302に表示されたログイン画面500からのログインリクエストに含まれるユーザー名、パスワードと認証サーバー103で保持するユーザー名、パスワードとの照合により正当性の検証を行う。検証が成功すると、認証サーバー103は、ユーザーに紐づく認証トークンを発行し、このトークンとともにWebブラウザ302に対し、プリントサーバー101へのリダイレクトを行うレスポンスを送る。
Webブラウザ302は、認証トークンを含めたリクエストをプリントサーバー101に送り、プリントサーバー101からのレスポンスによりWeb画面510、520、530を受信し表示を行う。
認証サーバー103は、プリンター104、105に配備されるプルプリントアプリケーション303がプリントサーバー101にアクセスするために必要な認可トークンを発行する。また、認証サーバー103は、プルプリントアプリケーション303からプリントサーバー101にアクセスする場合にリクエストに含まれる認可トークンの正当性検証を行う。
プルプリントアプリケーション303は、認可トークンを含めたリクエストをプリントサーバー101に送り、印刷データを示したURLを記載したインディックスファイル701、702を取得する。プルプリントアプリケーション303は、印刷データを示したURLに従い、ストレージサーバー102から印刷データを取得し、印刷装置制御部304に印刷データを送り、印刷を行う。印刷装置制御部304は印刷データを基に記録媒体への印刷を行う機能を有する。
<プリントサーバーのソフトウェア構成>
図4は、本発明の実施形態に係るプリントサーバー101のソフトウェア構成図である。なおプリントサーバー101の各ソフトウェアモジュールは図2(a)で示した記憶装置224に記憶されており、前述したようにCPU220によってRAM222にロードされ実行される。ここでは、プリントサーバー101が、外部リクエストを受信した際のプリントサーバー101の各ソフトウェアモジュールの動作について説明する。
プリントサーバー101は、外部リクエストを受け付けるWebサーバー401と、文書、印刷ジョブ、プリンター情報を管理し、印刷処理の制御を行う制御サーバー402、文書データを印刷データに変換する変換サーバー403から構成される。それぞれ独立したプログラムであり、それぞれ別々の情報処理装置に配置することも可能である。これらのプログラムはそれぞれネットワークに繋がった情報処理装置に配置し、それぞれのプログラム間で通信を行う。またこれらのプログラムを同じ情報処理装置に配置することも可能であり、本発明ではそのように扱う。また、それぞれのサーバーは単体構成または、冗長構成をとるように配備されるので、1つのサーバーに対し複数の情報処理装置で構成されることもある。プリントサーバーシステムと称した場合は、1つまたは複数の情報処理装置から構成されたプリントサービスを備えるシステムを指す。
Webサーバー401は、他サービス、または他プログラム、またはプリンター104、105または、Webブラウザ302から文書データの入稿、または、印刷リクエスト、印刷データ取得リクエストを受ける。各クライアントからリクエスト受付部404がリクエスト受けると、認証サーバー問い合わせ部405が認証サーバー102に対しトークンの正当性検証リクエストを送る。トークンの正当性が確認されると、リクエスト受付部404は、制御サーバー402にクライアントからのリクエストを送る。
制御サーバー402は、文書データの入稿リクエストを受けるとデータ管理部406で図6に示す文書情報602を作成し、データベース301に保存する。文書情報602は、文書データを識別する文書ID621、文書名622、認証トークンに紐づくユーザー名623とストレージサーバー102に文書をアップロードするための文書URL624、ステータス625から構成される。文書URL624には、文書ID621が含まれる。また、ステータス625は「受信中」「待機中」「印刷待ち」「印刷中」「正常終了」「エラー終了」「不明終了」の各ステータスがある。制御サーバー402は、文書情報602のステータス625を「受信中」に変え、文書URL624をWebサーバー401に返す。そしてWebサーバー401がリクエスト元の他サービス、または他プログラムに対し文書URL624を返す。他サービス、または他プログラムはストレージサーバー102に文書データをアップロード完了すると、プリントサービス101にアップロード完了通知を送る。プリントサービス101はこの通知をWebサーバー401で受けると制御サーバー402は、文書情報602のステータス625を「待機中」に変える。
制御サーバー402が印刷リクエストを受け取ると、データ管理部406は印刷リクエストに対するジョブ情報600を作成し、データベース301に保存する。印刷リクエストには、印刷を行う文書ID621と、プリンターID612が含まれる。この文書ID621は、Webブラウザ302で表示される文書一覧画面510の文書名512に対応した文書情報620の文書名622に紐づく文書ID621である。また、プリンターID612は、Webブラウザ302で表示される印刷設定画面520のプリンター名524に対応したプリンター情報610のプリンター名611に紐づくプリンターID612である。データ管理部406が作成するジョブ情報600は、印刷ジョブを識別するジョブID601と、文書情報620の文書ID621に対応した文書ID602と、認証トークンに紐づくユーザー名603と、印刷の受付日時604とプリンター情報610のプリンターID612に対応したプリンターID605と、インディックスファイルURL606から成る。
データ管理部406は、プリンター管理部407からプリンターID612に対応したプリンター情報610を取得し、構成情報614、圧縮方式615と文書URL624と、ジョブID601を変換サーバー403に渡して、印刷データへの変換を指示する。また、プリンター管理部407が管理するプリンター情報610は、プリンター名611とプリンターを識別するプリンターID612とWebブラウザ302がプリンター104、105に印刷リクエストを送るためのプリンターURL613と構成情報614と印刷データの扱える圧縮方式を示す圧縮方法615から成る。また、構成情報614は印刷設定画面520の印刷設定521の項目が機能するかどうかが判断可能な、プリンター104、105の機能を示すものである。たとえば、両面機能、カラー機能等がある。制御サーバー402は、Webサーバー401を介して、Webブラウザ302にプリンターURL613、ジョブID601、プリンターID605を印刷リクエストコマンドとしてスクリプトに含めた画面540を返す。Webブラウザ302では、画面540のスクリプトに従い、プリンター104、105のプルプリントアプリケーション303に対し、印刷リクエストを送る。Webブラウザ302は、プルプリントアプリケーション303に印刷リクエストが成功するとプリントサーバー101にその旨通知する。Webサーバー401を介してデータ管理部406が通知を受けとると、文書情報620のステータス625を「印刷待ち」に変える。
制御サーバー402から印刷データ変換指示を受けると変換サーバー403のデータ管理部410は、ストレージサーバー102の文書URL624から文書データをダウンロードする。そして、データ変換部409は、構成情報614を加味しながら、文書データを印刷データに変換する。データ変換部409は、変換データサイズに応じて複数の印刷データをファイル形式で作成する。なお、ファイル形式の印刷データを印刷データファイルと称するが、印刷データと称した場合ファイル形式を含む全ての形式の印刷データを指すものとする。データ管理部410は、ある程度の数の印刷データファイルがデータ変換部409にて作成されると、生成完了した印刷データファイル数分のストレージサーバー102上の印刷データファイルURLを作成する。そして、そのURLを記載したインディックスファイル701、702を作成する。このように、印刷指示に応じて生成される印刷データの内の一部の印刷データを先にプリンターへ送る仕組みにすることでファーストプリントが早くなるわけである。
そして、データ管理部410は、ストレージサーバー102上のインディックスファイルURL606を作成し、インディックスファイル701、702と複数の印刷データファイルをそれぞれのURLにアップロードする。そのとき、データ管理部410は、圧縮方式615に従ったデータフォーマットに変換し、印刷データファイルをストレージサーバー102にアップロードする。データ管理部410は、インディックスファイルURL606を制御サーバー402に送る。制御サーバー402はデータベース301のジョブ情報600にインディックスファイルURL606を登録する。データ変換部409は印刷ジョブに含まれる残りの印刷データファイルの作成が完了次第、随時印刷データファイルURLを生成し、生成されたURLを記載したインディックスファイル701、702を作成する。印刷データファイルは随時生成されるURLにアップロードされ、一方でインディックスファイル701、702はすでに作成済みのインデックスURL606にアップロードされる。
<Web画面>
図5は、本発明の実施形態に係るプリントサーバー101のWebサーバー401が作成し、クライアント端末109〜110のWebブラウザ302で表示するWeb画面である。
Webブラウザ302からプリントサーバー101に文書一覧リクエストを送ると、プリントサーバー101は、文書一覧画面510を作成し、Webブラウザ302に送信する。文書一覧画面510は文書選択チェックボックス511、文書名512、ステータス513、印刷ボタン514からなる。ステータス513は文書情報620のステータス625であり、プリントサーバー101は、文書一覧リクエストを受け取ったときのステータス625を文書一覧画面のステータス513として画面を作成する。文書選択チェックボックス511は、印刷する文書を選択するチェックボックスであり、チェックは1つでも複数であっても良い。Webブラウザ302が印刷ボタン514の押下を検知すると文書選択チェックボックス511が選択されている文書一覧をプリントサーバー101へ送信する。文書一覧を受け付けたプリントサーバー101は印刷設定画面520を作成し、Webブラウザ302に送信する。印刷設定画面520は印刷属性521の設定画面である。プリンター名524は、印刷を行うプリンターである。Webブラウザ302は、変更ボタン522の押下を検知するとプリントサーバー101へリクエストを行う。
リクエストを受け付けたプリントサーバー101は、プリンター情報610からプリンター一覧画面530を作成し、Webブラウザ302に送信する。プリンター一覧画面530はプリンター選択ラジオボタン531、プリンター名532、変更ボタン533からなる。Webブラウザ302が変更ボタン533の押下を検知するとラジオボタン531が選択されているプリンター情報をプリントサーバー101へ送信する。プリントサーバー101は、印刷設定画面520のプリンター名524をラジオボタン531が選択されていたプリンター名に更新し、Webブラウザ302に印刷設定画面520を送信する。印刷設定画面520においてWebブラウザ302が印刷ボタン523の押下を検知すると印刷属性521とプリンター名524と、文書一覧画面510で文書選択チェックボックス511が選択されていた文書一覧をプリントサーバー101へ送信する。これによりWebブラウザ302からプリントサーバー101への印刷リクエストが行われる。ここで、印刷設定画面520では、文書一覧画面510で文書選択チェックボックス511が選択されていた文書一覧隠しパラメータとして画面に保持する。
<プリンターのソフトウェア構成>
図4(b)は、本発明の実施形態に係るプリンター104、105のソフトウェア構成図である。尚プリンター104、105の各ソフトウェアモジュールは図2(b)の記憶装置240に記憶されており、前述したようにCPU231によってRAM233にロードされ実行される。ここでは、プリンター104、105が、外部リクエストを受信した際のプリンター104、105の各ソフトウェアモジュールの動作について説明する。
プルプリントアプリケーション303は、仮想マシン(Virtual Machine)410上で動作するアプリケーションソフトであり、後からインストールされることを想定している。プルプリントアプリケーション303をインストールしたプリンター104、105は、印刷サービスを備えたプリントサーバーと連携を行うことが可能になる。
プルプリントアプリケーション303のプルプリントコントローラ414は、プルプリントアプリケーション303全体の動作管理を行うものであり、各部への動作指示等は、このプルプリントコントローラ経由で行う。
プルプリントアプリケーション303のリクエスト受信部411は、Webブラウザ302から印刷リクエストを受けると印刷データ取得部412に印刷リクエスト情報を通知する。印刷リクエスト情報にはジョブID601、プリンターID605が含まれる。印刷ジョブ取得部412は印刷データの取得を印刷キュー情報630で管理する。印刷キュー情報630はジョブID631、インディックスファイルURL632、認可トークン633、プリンターID634などの印刷ジョブ情報のキュー情報である。Webブラウザ302から送られてきたジョブID601、プリンターID605は、この印刷キュー情報630のジョブID631、プリンターID634に保持する。そして、印刷データ取得部412は、認証サーバー問い合わせ部103に認可トークンの発行依頼を出す。認証サーバー問い合わせ部103は、認証サーバー103に対し認可トークンの発行依頼を出す。このとき、認証サーバー問い合わせ部413はあらかじめ登録されている認証サーバー103が認める証明書を認証サーバー103に送る。認証サーバー103では、証明書の検証を行い正当性が確認できた場合に認可トークンを発行し、認証サーバー問い合わせ部413に認可トークンを送る。認証サーバー問い合わせ部103は、認可トークンを印刷ジョブ取得部412に送り、印刷ジョブ取得部412はこの認可トークンをこの印刷キュー情報630の認可トークン633に保持する。
プルプリントアプリケーション303の印刷ジョブ取得部412は、プリントサーバー101に印刷キュー情報630の先頭のジョブID631に対するインディックスファイルURL取得リクエストを送る。このとき、印刷ジョブ取得部412は、ジョブID631、プリンターID634、認可トークン633を含めてインディックスファイルURL取得リクエストを送る。プリントサーバー101では、ジョブ情報600からジョブID601、プリンターID605で印刷ジョブのインディックスファイルURL606を特定し、プルプリントアプリケーション303に返す。印刷ジョブ取得部412は、インディックスファイルURL606を、印刷キュー情報630のインディックスファイルURL632に保持する。そして、印刷ジョブ取得部412は、ストレージサーバー102に対しインディックスファイルURL632でアクセスし、インディックスファイル701を取得する。印刷ジョブ取得部412は、インディックスファイル701記載のストレージサーバー102上の印刷データファイルURLから記載されているURL分の印刷データファイルを取得する。このとき図7のインディックスファイル701、702のendフラグ703がfalseの場合は、プリントサーバー101での変換処理が途中であり、更に印刷データファイルURLが追加されることを示す。この場合、印刷ジョブ取得部412は、印刷データファイルが記載されているURL分の印刷データファイルの取得処理が終わり次第、再度インディックスファイルURL632をストレージサーバー102から取得する。endフラグ703がtrueの場合は、印刷データをすべて取得したことになり、後述する印刷ジョブ送信部416は、後述するプリンター通信ストリーム802をクローズする。
印刷ジョブ送信部416は、印刷ジョブ取得部412より送られる印刷データを受け付け、送信バッファストリームに保持する。そして印刷ジョブ送信部416は、送信バッファストリームに保存された印刷データを印刷装置制御部304に対しネットワークインタフェース部417を介して送信する。印刷ジョブ送信部416は、送信バッファストリームに印刷データの保存を行うが、ストレージサーバー102から印刷データを受信しながら印刷装置制御部304に送信を行うためバッファストリームに保存されるのは印刷データの一部である。これは、印刷装置制御部304が1つの印刷ジョブの単位をネットワークインタフェース部417に対する1つの通信接続で管理されているためである。つまり、印刷ジョブ送信部416は、ファーストプリントを早くするためにストレージサーバー103に複数に分割されて置かれている印刷データファイルを受信しながら、印刷装置制御部304に1つの通信接続で印刷ジョブを送信する必要がある。ここで、この仕組みの説明について図8を用いて行う。図8は、印刷ジョブ取得部412がストレージサーバー102から複数の印刷データファイルを取得しながら、印刷ジョブ送信部416がする印刷データファイル取得通信ストリーム801の印刷装置制御部304に1つの通信接続で印刷データを送る概念図である。
まず、プリントサーバー101はプリンター104、105の印刷処理開始を早くするために印刷データ変換が出来次第、変換が終わったデータを1つの印刷データファイルにしてストレージサーバー102にアップロードする。印刷装置制御部304に印刷データを早く送ることで、時間のかかるプリントエンジン238の事前処理を早く開始することが可能となり、全体としてプリンター104、105のファーストプリントが早くなる。しかし、前述のとおり印刷ジョブ送信部416は印刷装置制御部304に1つの通信接続で印刷ジョブを送信する必要がある。そこで、印刷ジョブ取得部412が、ストレージサーバー102への印刷データファイル取得通信ストリーム801と、印刷ジョブ送信部416が印刷装置制御部304のネットワークインタフェース部417と通信するプリンター通信ストリーム802をプルプリントコントローラ414が、1つの通信ストリームとして維持する。そして、印刷ジョブ取得部412が2つ目以降の印刷データファイルを取得するときに、プルプリントコントローラ414は、印刷ジョブ取得部412が新たに作成した印刷データファイル取得通信ストリーム801を既存のプリンター通信ストリーム802につなぎ変えて1つの通信ストリームとして維持する。これにより、ファーストプリントを早くしながら、複数に分割された印刷データファイルを1つの印刷ジョブとして印刷することを実現する。ここで、印刷データファイル取得通信ストリーム801は、インターネットを介した通信であり、通信プロトコルとしては、HTTPS(Hyper Test Transfer Protocol Secure)を使用している。一方、プリンター通信ストリーム802は、プリンター104、105からプリンター104、105への異なるポートへのローカルネットワーク内通信であり、通信プロトコルとしては、RAWプロトコルを使用している。
以上が、プリンター104、105が、外部リクエストを受信した際のプリンター104、105の各ソフトウェアモジュールの動作についての説明となる。
<印刷開始フロー>
図9(a)は、本発明の実施形態に係るクライアント端末109、110、プリントサーバー101、プルプリントアプリケーション303の印刷開始処理フローである。S901でクライアント端末109、110に配備されているWebブラウザ302は、印刷リクエストをプリントサーバー101に送る。プリントサーバー101は、前述のジョブ情報600を作成し、データベース301に保存し、変換サーバー403で印刷データへの変換処理を開始し、S901で、540の印刷スクリプト画面をWebブラウザ302に送る。Webブラウザ302は、印刷スクリプトを実行し、S903でプルプリントアプリケーション303に印刷リクエストを送る。
S904で、プルプリントアプリケーション303は、印刷キュー情報630に印刷キューを追加する。S905で、プルプリントアプリケーション303は、Webブラウザ302は印刷リクエストを受け付けた旨をレスポンスする。次にS906で、Webブラウザ302はプリントサーバー101に印刷リクエスト完了を通知する。S907で、プリントサーバー101は、文書情報620のステータス625を「印刷待ち」に変更する。次にS908で、Webブラウザ302が、プリントサーバー101に文書一覧リクエストを行う。そして、S909で、プリントサーバー101は、文書情報620をもとに文書一覧画面510を作成し、Webブラウザ302返す。このとき、文書一覧画面510のステータス513は「印刷待ち」になる。
<印刷処理フロー>
図9(b)は、本発明の実施形態に係るプリントサーバー101、プルプリントアプリケーション303、印刷装置制御部304の印刷処理フローである。S911で、Webブラウザ302から印刷リクエストを受けたプルプリントアプリケーション303は、プリントサーバー101にインディックスファイルURL取得要求を出す。S912で、プリントサーバー101は、文書情報620のステータス625を「印刷中」に変更する。そして、S913で、プリントサーバー101は、インディックスファイルURL606をプルプリントアプリケーション303に返す。このとき、まだ変換サーバーで指定の文書データの変換処理が始まっていない場合、つまり、インディックスファイルURL606が存在しない場合はビジーレスポンスを返す。その場合、プルプリントアプリケーション303はある程度のインターバル後、再度S911のインディックスファイルURL取得要求を出す。プルプリントアプリケーション303はインディックスファイルURL606を取得するまで定期的に問い合わせを行う。ここで、プリントサーバー101のS914からの印刷データ変換処理と、S917のプルプリントアプリケーション303のストレージサーバー102へのデータ取得処理は非同期で行われる。つまり、処理開始タイミングは、本実施例では、S914の処理を先に開始しているが、プリントサーバー101にリクエストされる他のプリンター104、105向けの印刷リクエストが多くある場合は、S917の処理が先に開始されることはある。
S914で、プリントサーバー101は文書データを印刷データに変換する処理を開始する。S915で、プリントサーバー101は、作成した印刷データファイルをストレージサーバー102にアップロードする。続いて、S916で、プリントサーバー101は、作成したインディックスファイル701、702をストレージサーバー102にアップロードする。更にプリントサーバー101は、データ変換処理が進むと、S921、S927で作成した印刷データファイルをストレージサーバー102にアップロードする。そして、S928で、プリントサーバー101は、更新したインディックスファイル701、702をストレージサーバー102にアップロードする。
続いて、S916で、プリントサーバー101は、新たに作成した印刷データファイルのURLを追記したインディックスファイル701、702をストレージサーバー102に更新アップロードする。S917で、プルプリントアプリケーション303はストレージサーバー102に対してインディックスファイル701、702を取得するための通信接続を確立する。S918で、プルプリントアプリケーション303はストレージサーバー102からインディックスファイル701、702をダウンロードして、S919で、ストレージサーバー102への通信接続をクローズする。次にS920で、プルプリントアプリケーション303はストレージサーバー102に対して印刷データを取得するための通信接続を確立し、印刷データファイル取得通信ストリーム801を作成する。S921で、プルプリントアプリケーション303はストレージサーバー102に対して印刷データをダウンロード開始する。S923で、プルプリントアプリケーション303は印刷装置制御部304への通信接続を確立し、プリンター通信ストリーム802を作成する。
S924で、プルプリントアプリケーション303は、印刷データファイル取得通信ストリーム801とプリンター通信ストリーム802をつなげて1つの通信ストリームとし、取得した印刷データファイルの印刷装置制御部304への送信を開始する。印刷装置制御部304への送信とは、プリンター通信ストリーム802に印刷データをWriteすることで実現する。S925で、プルプリントアプリケーション303はストレージサーバー102から1つの印刷データファイルの取得が完了するとストレージサーバー102への通信をクローズし、印刷データファイル取得通信ストリーム801をクローズする。ただし、プリンター通信ストリーム802は切断することなく確立したままにしておき、次の印刷データファイルのダウンロードで印刷データファイル取得通信ストリーム801を作成した際に、プリンター通信ストリーム802と繋いで1つの通信ストリームとして、対印刷装置制御部304の通信接続を維持する。これは、印刷ジョブに含まれる全ての印刷データをコントローラに送信するまで維持され、更新されるインディックスファイルに印刷ジョブの変換終了を示す値が含まれるまで維持される。
S926で、印刷装置制御部304は印刷処理を実行し印刷を行う。S929で、印刷データファイルが全て作成し、そのデータを印刷装置制御部304にすべて送るまでこの処理を続ける。すべてのデータを送り終わるとプルプリントアプリケーション303は、プリンター通信ストリーム802をクローズする。S930で、印刷装置制御部304は印刷完了通知をプルプリントアプリケーション303に送る。S931で、プルプリントアプリケーション303は、プリントサーバー101に印刷完了通知を送る。S932で、プリントサーバー101は、文書情報620のステータス625を「正常終了」に変える。もしくは、S930で、完了ステータスがエラーの場合は、「エラー終了」に変える。これによりWebブラウザ510で文書一覧リクエストを送ると、ステータス513は「正常終了」に変わる。S933で、プリントサーバー101はストレージサーバー102にアップロードしたインディックスファイル701、702と1つまたは複数の印刷データファイルを削除する。ここまでが、プリントサーバー101、プルプリントアプリケーション303、印刷装置制御部304の印刷処理フローである。
<プリントサーバー印刷データ変換フロー>
図10は、本発明の実施形態に係るプリントサーバー101の変換サーバー403の印刷データ変換フローである。S1001で、変換サーバー403は、ストレージサーバー102から文書データを取得する。S1002で、変換サーバー403は、文書データを印刷データに変換する処理を開始する。S1003で、変換データサイズが256KB超えたか、または、変換するデータがもうないかを判断し、超えた場合は、S1004で、印刷データファイルのURLを作成し、インディックスファイル701、702にそのURLを記載しファイルを作成する。そしてそれらのファイルをストレージサーバー102にアップロードする。なお、S1003の判断はこの条件に限られない。変換データサイズを更に増やしても減らしても良いし、変換データサイズが1ページに達したか否かであっても良い。
S1005で、変換するデータがまだあると判断した場合は、S1006で、データ変換を継続する。そして、S1007で、変換データサイズが1MB超えたか、または、変換するデータがもうないかを判断し、超えた場合は、S1008で、印刷データファイルのURLを作成し、インディックスファイル701、702にそのURLを追記しファイルを作成する。そしてそれらのファイルをストレージサーバー102にアップロードする。S1009で、変換データがもうない場合は、変換処理を完了する。S1007もS1003と同様に、S1007の判断はこの条件に限られない。但し、S1007はファーストプリントされた後であるため、S1003の判断の条件と比較しデータサイズが大きい、または変換ページ数が多い方が好ましい。以上が、変換サーバー403の印刷データ変換フローである。これによりプリントサーバー101は、変換出来たデータからプリンター104、105に送ることが可能となり、全体としてファーストプリントを早くすることが可能となる。
以上、本発明により次の様な効果を得られる。ファーストプリントを早くするため完成したページの印刷データを受信し印刷を開始するとともに、プルプリントアプリケーションがプリンター内のコントローラに対し通信セッションを切断することなく印刷ジョブに含まれる印刷データを送信することが可能になる。
図11は、本発明の実施形態に係るプリントサーバー101の変換サーバー403の印刷データ変換フローである。実施例1で説明した通り、ファーストプリントを早くするためには、少しでも印刷データが変換できたら、それをファイルにしてストレージサーバーにアップする方がよい。しかし、小さいサイズのファイルを多量にアップすると、プルプリントアプリケーション303から印刷データファイルを取得する通信接続回数が増え、通信接続確立処理が増える。SSL(Secure Sockets Layer)の接続確立には証明書処理等のコストがかかる。
そこで、ファーストプリントを早くするために、初めは小さなサイズの印刷データファイルをストレージサーバー102にアップロードしていく。だが、その後は徐々にアップロードするファイルサイズを大きくしていきプルプリントアプリケーション303のトータル通信回数を減らす。
S1101からS1106までは、実施例1に示したS1001からS1006までの処理と同様のため説明は省略する。図10でのS1007では、1MB固定数値分変換データができた場合に変換データをストレージサーバー102にアップロードしていた。しかし、S1107では、変換サイズを変動値として、全体の変換値よりも50%または100%増しのデータサイズを変換サイズする。この50%または100%はシステムに設定可能な値で変えることも可能である。また、決められた変動サイズ値の変換データができない場合でも、変換データがもうない場合、または、変換処理にある一定時間処理を要している場合は、そこで、変換データをストレージサーバー102に送る。これは、条件として変換処理に時間がかかる場合には、プリンター104、105での処理が空いてしまうと全体として処理効率が悪くなってしまうためである。次にS1108からS1109までは、実施例1に示したS1108からS1109までの処理と同様のため説明は省略する。以上により、プルプリントアプリケーション303の無駄な通信確立処理をなるべく減らすことが可能となり、効率の良いデータダウンロード処理の実現が可能となる。
〔その他の実施例〕
本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施例の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(またはCPUやMPU等)がプログラムを読み出して実行する処理である。
101 プリントサーバー
102 ストレージサーバー
103 認証サーバー
104 プリンター
109 クライアント端末

Claims (7)

  1. 印刷データを提供する印刷サービスを備えたプリントサーバーシステムと接続可能であり、印刷手段を備えた画像形成装置であって、
    クライアント端末からの印刷指示を受信したことに応じて前記印刷データをストレージサービスに保存した前記印刷サービスから前記印刷データが保存された場所を示すURLを受信し、受信した前記URLを基に前記印刷データを受信する受信手段と、
    前記受信手段により受信された印刷データを前記画像形成装置に備えられた印刷手段へ送信する送信手段と、を有し、
    前記送信手段は、前記印刷データの内の一部の印刷データが前記受信手段により受信されたことに応じて前記印刷手段との通信を開始し、前記受信手段が残りの印刷データを受信し終えるまでの間は前記印刷手段との通信を切断せず、前記受信手段が残りの印刷データを受信し終えたことで前記印刷データの送信を完了したことに応じて前記印刷手段との通信を切断し、
    前記受信手段は、前記印刷データの内の一部の印刷データが保存された場所を示すURLを受信し、受信した前記URLを基に前記印刷データの内の一部の印刷データを受信した後、残りの全てもしくは一部の印刷データが保存された場所を示すURLを受信する処理を行うことを特徴とする画像形成装置。
  2. 前記受信手段は、インターネットを介して接続された情報処理装置と通信を行う際に利用する第1の通信プロトコルを用いて前記印刷データの受信を行い、
    前記送信手段は、前記画像形成装置に備えられた印刷手段と通信を行う際に利用する第2の通信プロトコルとを用いて前記印刷データの送信を行うことを特徴とする請求項1に記載の画像形成装置。
  3. 前記受信手段は、前記残りの一部の印刷データが保存された場所を示すURLを受信した場合は、再び、残りの全てもしくは一部の印刷データが保存された場所を示すURLを受信する処理を行い、前記印刷指示を受信したことに応じて前記印刷サービスが提供する全ての印刷データを受信するまで当該処理を繰り返すことを特徴とする請求項1または2に記載の画像形成装置。
  4. 前記受信手段は、前記URLとともに前記印刷サービスから前記印刷指示に関する全ての印刷データが提供されたことを示す情報を受信し、
    前記受信手段が前記情報を受信したことに応じて、前記送信手段は前記印刷手段との通信を切断することを特徴とする請求項1乃至3の何れか1項に記載の画像形成装置。
  5. 前記受信手段と前記送信手段とを有するアプリケーションをインストールすることで、前記印刷サービスとの連携を行うことを特徴とする請求項1乃至4の何れか1項に記載の画像形成装置。
  6. 印刷データを提供する印刷サービスを備えたプリントサーバーシステムと接続可能でありかつ印刷手段を備えた画像形成装置を制御する制御方法であって、
    クライアント端末からの印刷指示を受信したことに応じて前記印刷データをストレージサービスに保存した前記印刷サービスから前記印刷データが保存された場所を示すURLを受信し、受信した前記URLを基に前記印刷データを受信する受信ステップと、
    前記受信ステップにおいて受信された印刷データを前記画像形成装置に備えられた印刷手段へ送信する送信ステップと、を含み、
    前記送信ステップにおいては、前記印刷データの内の一部の印刷データが前記受信ステップにおいて受信されたことに応じて前記印刷手段との通信を開始し、前記受信ステップにおいて残りの印刷データを受信し終えるまでの間は前記印刷手段との通信を切断せず、前記受信ステップにおいて残りの印刷データを受信し終えたことで前記印刷データの送信を完了したことに応じて前記印刷手段との通信を切断し、
    前記受信ステップにおいては、前記印刷データの内の一部の印刷データが保存された場所を示すURLを受信し、受信した前記URLを基に前記印刷データの内の一部の印刷データを受信した後、残りの全てもしくは一部の印刷データが保存された場所を示すURLを受信する処理を行うことを特徴とする制御方法。
  7. 印刷データを提供する印刷サービスを備えたプリントサーバーシステムと接続可能でありかつ印刷手段を備えた画像形成装置を制御する制御方法を実行するためのプログラムであって、
    クライアント端末からの印刷指示を受信したことに応じて前記印刷データをストレージサービスに保存した前記印刷サービスから前記印刷データが保存された場所を示すURLを受信し、受信した前記URLを基に前記印刷データを受信する受信ステップと、
    前記受信ステップにおいて受信された印刷データを前記画像形成装置に備えられた印刷手段へ送信する送信ステップと、を含み、
    前記送信ステップにおいては、前記印刷データの内の一部の印刷データが前記受信ステップにおいて受信されたことに応じて前記印刷手段との通信を開始し、前記受信ステップにおいて残りの印刷データを受信し終えるまでの間は前記印刷手段との通信を切断せず、前記受信ステップにおいて残りの印刷データを受信し終えたことで前記印刷データの送信を完了したことに応じて前記印刷手段との通信を切断し、
    前記受信ステップにおいては、前記印刷データの内の一部の印刷データが保存された場所を示すURLを受信し、受信した前記URLを基に前記印刷データの内の一部の印刷データを受信した後、残りの全てもしくは一部の印刷データが保存された場所を示すURLを受信する処理を行うことを特徴とするプログラム。
JP2015150506A 2015-07-30 2015-07-30 画像形成装置、制御方法、およびプログラム Active JP6537390B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2015150506A JP6537390B2 (ja) 2015-07-30 2015-07-30 画像形成装置、制御方法、およびプログラム
US15/217,829 US9798504B2 (en) 2015-07-30 2016-07-22 Image forming apparatus, control method, and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2015150506A JP6537390B2 (ja) 2015-07-30 2015-07-30 画像形成装置、制御方法、およびプログラム

Publications (2)

Publication Number Publication Date
JP2017033143A JP2017033143A (ja) 2017-02-09
JP6537390B2 true JP6537390B2 (ja) 2019-07-03

Family

ID=57882554

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015150506A Active JP6537390B2 (ja) 2015-07-30 2015-07-30 画像形成装置、制御方法、およびプログラム

Country Status (2)

Country Link
US (1) US9798504B2 (ja)
JP (1) JP6537390B2 (ja)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10541987B2 (en) 2016-02-26 2020-01-21 Tandem Diabetes Care, Inc. Web browser-based device communication workflow
JP6966849B2 (ja) * 2017-03-02 2021-11-17 キヤノン株式会社 画像形成装置、方法、プログラム、並びにシステム
JP2019091379A (ja) * 2017-11-17 2019-06-13 キヤノン株式会社 情報処理システム、制御方法、およびプログラム
JP7046648B2 (ja) * 2018-02-27 2022-04-04 キヤノン株式会社 印刷処理システム、方法、およびプログラム
JP2019160057A (ja) 2018-03-15 2019-09-19 キヤノン株式会社 プリントサーバーと、その制御方法とプログラム
JP7086767B2 (ja) * 2018-07-13 2022-06-20 キヤノン株式会社 プリントサーバー、制御方法、およびそのプログラム
JP7435170B2 (ja) * 2020-03-31 2024-02-21 ブラザー工業株式会社 画像処理装置及び画像処理システム
JP2022032450A (ja) * 2020-08-12 2022-02-25 富士フイルムビジネスイノベーション株式会社 情報処理装置、情報端末、情報処理システム
JP2022161442A (ja) * 2021-04-09 2022-10-21 株式会社リコー 情報処理システム、データ管理装置、データ管理方法及びプログラム
JP2023073009A (ja) * 2021-11-15 2023-05-25 キヤノン株式会社 印刷制御装置、印刷装置、印刷制御装置の制御方法、印刷装置の制御方法、及びプログラム

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002073462A (ja) * 2000-08-31 2002-03-12 Ricoh Co Ltd 情報入出力システムおよびそれに用いる端末
JP2004032539A (ja) * 2002-06-27 2004-01-29 Canon Inc 画像処理装置の制御方法、プログラム及び記憶媒体、及び画像処理装置
JP2008040991A (ja) * 2006-08-09 2008-02-21 Nec Corp 印刷システム,印刷方法並びに印刷用プログラム
US8995002B2 (en) * 2009-03-19 2015-03-31 Ricoh Co., Ltd. System and method for printing independent of location and using a universal print module
JP5522095B2 (ja) * 2011-03-11 2014-06-18 ブラザー工業株式会社 プリンタ
JP5791390B2 (ja) * 2011-06-28 2015-10-07 キヤノン株式会社 印刷システム、プリントサーバ、印刷管理方法、およびプログラム
US20130169993A1 (en) * 2012-01-03 2013-07-04 PigSpigot Automated Production of Printed Products From Online Content
JP6015438B2 (ja) * 2012-12-28 2016-10-26 ブラザー工業株式会社 印刷装置
JP2014149666A (ja) * 2013-01-31 2014-08-21 Brother Ind Ltd 携帯端末、画像記録装置、これらを含む画像記録システム、及び、プログラム。
JP5907094B2 (ja) * 2013-02-28 2016-04-20 ブラザー工業株式会社 端末装置及び機能実行装置

Also Published As

Publication number Publication date
JP2017033143A (ja) 2017-02-09
US9798504B2 (en) 2017-10-24
US20170031638A1 (en) 2017-02-02

Similar Documents

Publication Publication Date Title
JP6537390B2 (ja) 画像形成装置、制御方法、およびプログラム
EP3531268B1 (en) Print processing system and method
JP5683205B2 (ja) 情報処理装置、情報処理装置を制御する制御方法、およびそのプログラム
US8570574B2 (en) Processing system, control method, and storage medium therefor
JP6364738B2 (ja) 情報処理システム、情報処理装置、プログラム及び処理実行方法
JP5639441B2 (ja) 情報処理装置、印刷装置、印刷データ処理方法およびプログラム
JP5791390B2 (ja) 印刷システム、プリントサーバ、印刷管理方法、およびプログラム
JP2012133489A (ja) 印刷システム、プリントサービス装置、サービス提供装置、制御方法、及びプログラム
JP2012053630A (ja) ネットワークプリントシステム、クライアント端末、制御サーバ、印刷方法、およびプログラム
JP6736306B2 (ja) 印刷システム、画像形成装置、印刷システムの制御方法、画像形成装置の制御方法、及びプログラム
JP2019181866A (ja) 印刷制御装置、制御方法及びプログラム
JP7086767B2 (ja) プリントサーバー、制御方法、およびそのプログラム
JP7321827B2 (ja) 情報処理装置の制御方法、印刷設定アプリケーション、ならびに情報処理装置
JP6149709B2 (ja) 情報処理プログラムおよび情報処理装置
US20180067701A1 (en) Information processing apparatus, control method therefor, and storage medium
JP2014120051A (ja) 情報処理装置、プログラム及び制御方法
JP2008182699A (ja) ドキュメント処理システムおよび方法
JP6935666B2 (ja) 印刷システム
JP2019091379A (ja) 情報処理システム、制御方法、およびプログラム
JP2014142735A (ja) 印刷システム、方法、及びプログラム
JP2013037547A (ja) プリントサーバーおよび印刷データ提供方法および印刷システム
JP6878657B2 (ja) 印刷システム、画像形成装置、印刷システムの制御方法、画像形成装置の制御方法、及びプログラム
EP3070923B1 (en) Printing system capable of printing in any one of plural image forming apparatuses over network, image forming apparatus, and printing method
JP7443054B2 (ja) 印刷システム、印刷装置、制御方法、およびプログラム
JP2017027273A (ja) 情報処理装置、情報処理方法、及びプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180727

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20181212

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20190122

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190213

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190604

R151 Written notification of patent or utility model registration

Ref document number: 6537390

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151