以下、添付の図面を参照して本発明の好適な実施形態を説明する。図1に示す情報処理装置は、サーバ装置(以下サーバ)側及びクライアント端末装置(以下クライアント)側において、本発明の実施形態のアプリケーションを実行するコンピュータ装置である。基本的にサーバ及びクライアントの構成は図1の構成で代表される。
図1において、ディスプレイ101はアプリケーションプログラムによって処理中のデータの情報、各種メッセージメニューなどを表示する。ディスプレイ101は、CRT(Cathode Ray Tube)、LCD(Liquid Crystal Display)等から構成される。ビデオRAM(VRAM)ディスプレイコントローラとしてのDISPC102は、ディスプレイ101への画面表示制御を行う。キーボード103及びポインティングデバイス104は、文字などを入力したり、GUI(Graphical User Interface)におけるアイコンやボタンなどを指し示すためなどに用いられる。CPU105は、図1の情報処理装置全体の制御を司る。
ROM106(Read Only Memory)は、CPU105が実行するプログラムやパラメータ等を記憶している。RAM(Random Access Memory)107は、各種プログラムをCPU105が実行する時のワークエリア、エラー処理時の一時退避エリア等として用いられる。
ハードディスクドライブ(HDD)108、リムーバブルメディアドライブ(RMD)109は、外部記憶装置として機能する。リムーバブルメディアドライブ109は、着脱可能な記録媒体の読み書き又は読み出しを行う装置である。フレキシブルディスクドライブ、光ディスクドライブ、光磁気ディスクドライブ、メモリカードリーダはもとより、着脱式のHDDなどであってもよい。
なお、本実施形態において説明するサーバ及びクライアントの各種機能を実現するプログラムを始め、OS、Webブラウザ等のアプリケーションプログラム、データ、ライプラリなどは、その用途に応じて上記した記憶媒体の少なくとも1つに記憶されている。
拡張スロット110は、例えばPCI(Peripheral Component Interconnect)バス規格に準拠した拡張カード装着用スロットである。ここには、ビデオキャプチャボードや、サウンドボード、GPIBボードなど、様々な拡張ボードを装着することが可能である。
ネットワークインタフェース111は、情報処理装置をコンピュータネットワークに接続するためのインタフェースである。バス112は、アドレスバス、データバス及び制御バスからなり、上述した各ユニット間を接続する。また、ネットワークインタフェース111の他に、RS−232C、RS−422、USB(Universal Serial Bus)、IEEE1394等のシリアルインタフェースを有する。さらに、IEEE1284等のパラレルインタフェースをも有し、モデムやプリンタ等の外部機器との接続を可能にしている。
<システム概要>
図2は、本発明の実施形態に係る情報処理装置を適用した情報処理システムの全体図である。図2から理解されるように、印刷の工程は、本実施形態に係る情報処理装置を適用した情報処理システムの外側に存在していてもよい。また、本実施形態に係る情報処理装置で利用されるデータは印刷データに限るものではない。本実施形態に係る情報処理装置を適用した情報処理システムと同様の方法で図画などを作成した時も同様であるが、ただデータと書くのは曖昧である。従って、本明細書では、本実施形態に係る情報処理装置を適用した情報処理システムの目的を印刷とし、本実施形態に係る情報処理装置を適用した情報処理システムで作成されるデータを印刷データとする。ただし、これは本発明が印刷データの作成過程に限定されるものではなく、本発明の実施形態に係る情報処理装置を適用した情報処理システムの理解をしてもらうために、印刷データを、1例として説明に使用するものである。
まず図2を用いて情報システム全体の動作の流れについて説明する。図2の工程(1)に示すように、まず印刷データ作成者がクライアント側のパーソナルコンピュータ121(以下PC121とする)にインストールしたアプリケーションを使用して印刷データの作成を行う。次に、工程(2)に示すように、印刷データ作成者がPC121を使用して、印刷データを構成するオブジェクトの一つを選択し、再編集を許可する許可オブジェクトを設定する。許可する編集の種類が存在する場合は、再編集内容の種類についても選択する。再編集の許可の設定をしたいオブジェクトが他にもある場合、同様にそれらのオブジェクトについて許可オブジェクトとして設定する。
次に、工程(3)に示すように、印刷データ作成者がアプリケーションのアップロードボタンをクリックすると、再編集に関する情報とともに、編集後データである印刷データがサーバ122にアップロードされる。サーバ122は、工程(4)で示すように、アップロードされた印刷データをデータ保存装置124に保存する。データ保存装置124は、非常に大きな記憶容量を持つ記憶装置で、通常、サーバ122とは別体に構成される。
データ保存装置124への保存が終了したら、工程(5)で示すように、サーバ122からアプリケーションに対し、クライアント側で表示するURLをPC121に通知する。PC121に組み込まれたアプリケーションはWebブラウザを立ち上げ、通知されたURLを表示する。
次に工程(6)で示すように、印刷データ作成者は、Webブラウザに印刷データを閲覧し注文して欲しい許可注文者のメールアドレスを入力し、OKボタンをクリックする。以下では、実際に注文を行った者も含め許可注文者と呼ぶ。図2の工程(7)では、サーバ122は、印刷データ作成者の指定した許可注文者のメールアドレスに、アップロードされた印刷データの内容が確認できるWebページのURLを記述したメールを送付する。
メールを受けた許可注文者は、工程(8)に示すように、パーソナルコンピュータ123(以下PC123とする)を使用して、メールに書かれたURLをブラウザ上で入力し、印刷データの内容を確認する。そして、工程(9)で、印刷データ作成者が編集許可に設定した許可オブジェクトの編集を行う。編集においては、文字の場合は文字の指定、フォントの大きさやフォント名の変更の場合はメニューからの選択などを行い、画像の差し替えの場合は画像をアップロードし、トリミングを指定することになる。
許可注文者がPC123を使用してオブジェクトの編集操作を行いOKボタンをクリックする。そして、工程(10)に示すように、サーバ122は編集結果を反映した印刷データを作成すると、許可注文者のPC123のWebブラウザに冊数入力画面が表示される。
ここで、許可注文者が冊数を入力し、OKボタンをクリックすると、許可注文者の名前及び配送先入力画面が表示される。許可注文者が、PC123のWebブラウザに許可注文者氏名及び配送先情報を入力し、OKボタンをクリックすると、見積り画面が表示される。ここで、工程(11)に示すように、許可注文者がOKボタンをクリックすると、サーバ122は課金に必要な処理を行う。そして、工程(12)のように、オーダ番号や課金に関する情報を許可注文者に提示する。さらにサーバ122は、入金が確認又は代金引換など入金が確実な場合に、工程(13)で、印刷データを印刷装置125に廻す。次に図2の各工程の詳細について述べる。
<印刷データ作成者の操作及び対応する処理(1)>
図2の工程(1)における印刷データの作成は、Adobe Illustrator(登録商標)やQuark XPress(登録商標)等のように画像、線画、文字等のオブジェクトをGUIを使用して配置し、描画するものである。そして、この種のアプリケーションが有するインタフェースと同様なインタフェースをもつ。どのように画像の配置、線画の描画及び配置、文字の入力及び配置、フォントの指定などを行うかは、本発明において本質的なものではない。
図2の工程(2)で編集許可を設定するために各画像、線画、文字等のオブジェクトを選択できる必要はあるが、制約はこれだけであり、またこの制約はGUIによる配置・描画の前提をなすので、一般的なものである。なおこのアプリケーションはサーバ122へのアクセス権限をもつ人を対象に配布される。そして、配布された人が自分のパーソナルコンピュータにインストールし、インストールした人が印刷データ作成者となるが、これもアプリケーションについて何ら制約をもたらすものではない。
図2の工程(2)において、印刷データ作成者は特定のオブジェクトを選択する。そして、マウスのクリックによるメニュー表示(図3の(a))又はメニューバーからのメニュー表示(図3の(b))などによりメニューを表示する。
いま、図3の(a)又は(b)において「再編集...」(P301又はP311)を選択したとする。すると再編集可能な内容を選択するためのウィンドウが表示される。図4は、選択されたオブジェクトが文字の場合の一例のGUI(Graphic User Interface)画面であるGUI4である。ここでは、文字の内容の修正(P401)、フォントの種類の修正(P402)、フォントの大きさの修正(P403)のいずれかのチェックボックスにチェックをすることが可能である。すなわち、図4で編集個所が選択されることになる。チェック後、OKボタンP411をクリックすると、選択された編集個所、すなわちオブジェクトが再編集可能となり、再編集時に設定可能な内容が指定される。このようにして許可する再編集内容を設定する。キャンセルボタンP412がクリックされたときは、選択された許可オブジェクトに対する再編集の設定が変更されない。なお選択されたオブジェクトが既に再編集が可能となっており、再編集をできないように設定を変えたい時は、図3で、メニューP302及びP312を選択することにより変更することが可能である。
<データ構成例>
アプリケーションが作成する印刷データのフォーマットは画像、文字、線画等が表現可能なものであればどのようなフォーマットや言語でも差し支えない。本実施形態ではアプリケーションが作成する印刷データのフォーマットをPDF(Adobe Portable Document Format(登録商標))とする。PDFは画像、文字、線画等のいずれも表現可能な汎用性の高いフォーマットである。これを用いて説明することは本発明において必須用件ではなく、単に説明を行う上での便宜であるから、発明の制約を示すものではない。
例えば線画については、許可注文者による自由な再編集が必要ない場合やそもそも線画が必要ない場合もあるが、このような場合はPDFのような汎用フォーマットである必要はない。したがって、HTML(Hyper Text Markup Language)のようなマークアップ言語でも構わない。また他の汎用なフォーマットや言語、例えば、Adobe PostScript(登録商標)やScalable Vector GraphicsのようなPDL(Page Description Language)であっても差し支えない。さらにこれら使用の公開されているフォーマットや言語でなく独自のフォーマットや言語を使用しても構わない。
アプリケーションが印刷データを作成するとき、画像は図5の(a1)、文字は図5の(b1)、線画は図5の(c1)のように表現される。また、印刷データ作成者がこれら画像、文字、線画等に対し再編集可能を設定した時は、それぞれの辞書に/Editableキーを追加することにより再編集可能である旨を示す。
図5の(a2)、図5の(b2)及び図5の(c2)は、図5の(a1)、図5の(b1)及び図5の(c1)に対し再編集可能を設定した場合である。図5の(a2)、図5の/Editableキーに対応する値としては辞書が指定される。その辞書は/Typeキー、/Iconキー、及びそれぞれに対応する値が含まれている。/Typeに対応する値は、許可された編集の種類を意味し、複数の種類の指定が可能なように配列として表される。そして画像の場合は/Typeが1の時の画像の差し替えを、/Typeが2の時の画像位置の変更を、/Typeが3の時の画像倍率の変更を意味する。文字の場合は/Typeが1の時の文字の指定を、/Typeが2の時のフォントの大きさの変更を、/Typeが3の時フォントの変更を意味する。線画の場合は/Typeが1の時の位置の修正を、それぞれ許可注文者に許可する設定をすることを意味する。
つまり図5の(a2)の場合は、画像の差し替え、画像位置の変更、画像倍率の変更、図5の(b2)の場合は、文字の指定、フォントの大きさの変更、フォントの変更、図5の(c2)の場合は線画の位置の修正を許可している。なおサーバ122における再編集(図2の工程(9))で可能な編集方法が他にある場合や上記より少ない場合は、/Typeに設定可能な値を多くしたり少なくしたりできることは当然である。なお、図5の(a1)及び図5の(a2)は、外部で定義したイメージXObjectを使用しているので、念のために図5の(a3)として挙げたがこれは通常の場合と何ら変わらない。また/Iconキーに対応する値は、後述する図10の、P1030のアイコンを表示するための場所を示し、default user space unitsにおける座標を示したものである。
<印刷データ作成者の操作及び対応する処理(2)>
印刷データの作成と再編集の設定を終えた印刷データ作成者は、印刷データの確認を行った後、印刷データのサーバ122へのアップロードを行う(図2の工程(3))。図6にアプリケーションにおける確認画面の一例のGUI6を示す。印刷データ作成者はPC121で印刷データの確認を行う。そして問題がないと判断したら、アップロードボタンP612のクリック又はインターネットメニューP603からのアップロードメニューの選択を行う。するとアプリケーションは印刷データのサーバ122へのアップロードを行う。
そしてサーバ122は、印刷データのデータ保存装置124への保存を行う(図2の工程(4))。サーバ122を利用するには会員登録が必要な場合は、事前の会員登録と、アップロード時の会員認証が必要となるが、本実施形態において必須のものではないので説明を省略する。
サーバ122は、印刷データのデータ保存装置124への保存に成功すると許可注文者の指定に使用するWebページであるGUI画面のURLをPC121のアプリケーションに対して通知する(図2の工程(5))。アプリケーションはデフォルトのWebブラウザを立ち上げ、通知されたURLを表示する(図2の工程(6)、図7)。図7のGUI画面GUI7を使用して、印刷データ作成者は、再編集を許可する許可注文者のメールアドレスをテキストフィールドP702に入力し、OKボタンP703をクリックする。アップロードされた印刷データの内容を確認したい場合は、リンクP704をクリックすることで、印刷データを確認するための画面のGUI8遷移する(図8)。GUI8画面では印刷データをJPEGなどに変換して表示する(P801)ことによって、印刷データの内容の確認を行うことができる。またGUI8にはGUI7への遷移を行うリンクP802が設けられているので、印刷データの内容を確認の上、許可注文者のメールアドレスを設定することが可能となる。
また印刷データ作成者も、ボタンP803をクリックすることにより許可注文者として編集を行うことができるし、ボタンP804をクリックすることにより許可注文者として注文することができる。これらの場合の処理は、印刷データ作成者からの通知を受けた許可注文者に対する処理と比べ、編集や注文の作業が終わった後やキャンセルボタンがクリックされた時などに遷移する画面が、図9に示すGUI9ではなくGUI8である点で異なる。しかし、他は何ら変わらないので、まとめて後述する。
図7において、OKボタンP703をクリックしたことによって、サーバ122に対しリクエストが発生する。リクエストを受けたサーバ122は、印刷データ作成者が入力したメールアドレス宛に対し、許可注文者が印刷データの内容を確認するためのWebページであるGUI9のURLを送信する(図2の工程(7))。
<許可注文者の操作及び対応する処理(1)>
許可注文者はこのURLをWebブラウザで表示することによって、印刷データの内容を確認するためのWebページであるGUI9を閲覧することができる(図2の工程(8)、図9)。GUI9は、許可注文者がサーバ122のこのURLにリクエストを発するごとに発行されるセッションIDで特徴付けられる動的なページであり、このセッションIDは、以後の画面遷移においても保持される。
許可注文者がメールで通知されたURLをWebブラウザ上で表示しようとした際に、サーバ122は、印刷データからJPEGを生成、又は印刷データのアップロード時に作成したJPEGデータをプレビュー用画像として表示する(P901)。そしてJPEG画像を作成するに先立ち、ページ内のオブジェクトが再編集の操作が可能に設定されているかを上記の/Editableキーを探すことによって判断する。このように、再編集の操作が可能か否かを識別可能に表示するものである。
そして、存在する場合は、P901に表示されるJPEGデータと共に、Webブラウザ画面のGUI10(又はGUI11乃至GUI16のいずれか)において使用される編集可能な許可オブジェクトを示すためのアイコンを含むJPEGデータを作成する。そしてWebページであるGUI9上にリンクP902を表示する。
この時編集可能な許可オブジェクトを示すためのアイコンは、PDF中に/Iconキーで指定された位置に作成される。印刷データが複数ページにわたる場合には、リンクP910又はリンクP911をクリックすることにより現在表示している以外のページを表示することができる。なお表示されているページが、一番最初のページの時は、リンクP910が、一番最後のページの時はリンクP911が表示されない。
印刷データ作成者が許可注文者に編集を許可した部分があるときは、リンクP902をクリックする。それにより、編集用画面である図10のGUI10(又は図11のGUI11、図12のGUI12、図13のGUI13、図14のGUI14、図15のGUI15、図16のGUI16のいずれか)が表示される。そして、編集を許可した部分についての編集が可能となる(図2の工程(9))。許可注文者はこれをみて編集が可能であることを認識する。
P1030(又はP1130、P1230、P1330、P1330’、P1430、P1530、P1630、P1631)はプレビュー画像において編集可能なオブジェクトを示すための印となるアイコンである。これらは、編集可能なオブジェクトを見出しやすくするために印付加機能により、編集の対象となるオブジェクトの近傍に付加されるものである。P1030が示すオブジェクトの差し替えをP1020、P1021、P1022において指定可能である。
印刷データ作成者が画像の差し替えの編集操作を可能に指定していた場合、ボタンP1021をクリックすると、ファイルの選択を行うためのダイアログが表示され、許可注文者が差し替える画像を指定する。そしてダイアログのOKボタンをクリックする。すると、許可注文者が指定した画像ファイルのパスがテキストフィールドP1020に表示される。許可注文者がボタンP1022をクリックすると、許可注文者が指定した画像ファイルがサーバ122にアップロードされ、アップロードされた画像に差し替えたWebページであるGUI10を表示する。なお、ブラウザによって挙動が変わるので図10には描かれていないが、許可注文者が指定した画像ファイルのプレビューを出しても構わない。
印刷データ作成者が画像の移動を可能に指定していた場合はWebページであるGUI11が表示される(図11)。図11において、画像を左に移動させたいときはP1120を、右に移動させたいときはP1123、上に移動させたいときはP1121、下に移動させたいときはP1122をそれぞれクリックする。
すると、サーバ122に対するにリクエストが発生し、画像をサーバ122で既定の幅だけ指定方向に移動させた画像に差し替えたWebページであるGUI11を表示する。編集結果を無効にしたい場合、ボタンS1124をクリックすると、印刷データ作成者が作成した状態をプレビューするWebページであるGUI11が表示される。なお、上記ではP1120乃至P1123をクリックした時に移動する幅をサーバ122の既定の値としたが、移動する幅を指定するテキストフィールドを別に設けても構わない。
印刷データ作成者が画像の拡大や縮小を可能に指定していた場合は、WebページであるGUI12が表示される(図12)。図12において、許可注文者がテキストフィールドP1220に拡大又は縮小に用いる比率を入力し、ボタンP1221をクリックする。すると、サーバ122に対するリクエストが発生し、画像を指定比率だけ拡大縮小した画像に差し替えたGUI12を表示する。
さらに、印刷データ作成者が文字の差し替えを可能に指定していた場合は、WebページであるGUI13が表示される(図13)。図13において、許可注文者がテキストフィールドP1320に差し替えに使用する文字列を入力し、ボタンP1321をクリックする。すると、サーバ122に対するリクエストが発生し、図14に示す、文字を許可注文者が指定した文字列に差し替えたWebページであるGUI13’を表示する。文字列が長すぎるので領域に収まらない時は、例えば、図14のP1340で示すようなエラーの表示をする。
印刷データ作成者がフォントの指定及びフォントサイズの指定を可能に指定していた場合は、WebページであるGUI15が表示される(図15)。図15において、許可注文者がリストボックスP1520からフォント名を選択し、テキストフィールドP1521にフォントサイズを入力し、ボタンP1522をクリックする。すると、サーバ122に対するリクエストが発生し、許可注文者が指定したフォント及びフォントサイズに変更したGUI15を表示する。なお印刷データ作成者が指定を可能に設定したものが、フォントの指定又はフォントサイズの指定のいずれかの場合は、対応するリストボックスP1520又はテキストフィールドP1521のいずれかのみが表示される。
印刷データ作成者が線画の位置の指定を可能に指定していた場合はWebページであるGUI16が表示される(図16)。図16において、線画を左に移動させたいときはP1620を、右に移動させたいときはP1623、上に移動させたいときは1621、下に移動させたいときはP1622をそれぞれクリックする。すると、サーバ122に対するリクエストが発生し、線画をサーバ既定の幅だけ指定方向に移動させた画像に差し替えたGUI16を表示する。編集結果を無効にしたい場合はボタンS1624をクリックすると、印刷データ作成者が作成した状態をプレビューするGUI16が表示される。なお、P1620乃至P1623をクリックした時に移動する幅をサーバ122の既定の値としたが、移動する幅を指定するテキストフィールドを別に設けても構わない。
なお上記では一つのページで編集されるオブジェクトも許可された編集の方法も一つの場合を仮定した。しかし、上記で説明したPDFのように複数のオブジェクトに関し複数の編集の方法が許可されている場合は、図17に示すWebページであるGUI17のように組み合わせることによって編集が可能となる。
図17に示すように、複数のオブジェクトに関する複数の編集内容を一度に編集するだけでなく、図18に示すWebページのGUI17’のように、単一のオブジェクトに関する複数の編集内容を一度に編集することも可能である。また、図19に示すWebページのGUI17”のように、単一のオブジェクトの単一の編集内容について編集することも可能である。
図18の、単一のオブジェクトに関する複数の編集内容を一度に編集する場合で、他のオブジェクトについても編集が許されている場合は、以下のようになる。この場合、前のページへの遷移を行うリンクP1710’及び次のページへの遷移を行うリンクP1711’が必要になる。さらに、前のオブジェクトの編集を行うWebページに遷移するリンクP1712’及び次のオブジェクトの編集を行うWebページに遷移するリンクP1713’も必要となる。
また、図19の単一のオブジェクトの単一の編集内容について編集する場合で、他のオブジェクトへの編集や同一オブジェクトに対する別の編集内容が許されている場合を考える。この場合は、前のページへの遷移を行うリンクP1710”及び次のページへの遷移を行うリンクP1711”が必要となる。さらに、前の編集内容の編集を行うWebページに遷移するリンクP1712”及び次の編集内容の編集を行うWebページに遷移するリンクP1713”も必要となる。
<許可注文者の操作及び対応する処理(2)>
一つのページに含まれる編集可能なオブジェクトが多数の場合、図17のように複数のオブジェクトに関する複数の編集内容を一度に編集するようWebページを構成すると、Webページが長くなってしまいプレビューを見ながらの作業が困難になる。このような時は、図18のように単一のオブジェクトに関する複数の編集内容を一度に編集したり、図19のように単一のオブジェクトの単一の編集内容について編集する方が望ましい。
一方、一つのページに含まれる編集可能なオブジェクトが少数の場合は、図17のように複数のオブジェクトに関する複数の編集内容を一度に編集する方が一度で作業が済み効率的であるといえる。そこで編集内容の多さに応じて、一度に編集できる内容を変更することが考えられる。
例えば、図17の丸付き数字1で表示される画像(P1731)については画像の差し替え、画像の拡大、縮小、画像の移動等が可能である。また、丸付き数字2で表示される文字列(P1730)については文字の差し替え、フォントの指定が可能である時、そのすべてを一画面で編集可能とするとWebページが長くなってしまいプレビューを見ながらの作業が困難になる。
このような場合に、編集に用いる領域を一定以下に抑えプレビューを見ながら作業ができるようにしたものが図20に示すWebページであるGUI20である。前のページ、次のページについての編集を行う画面への遷移を行うリンクP2010、P2011以外に、前の編集内容、次の編集内容についての編集を行う画面への遷移を行うリンクP2012、P2013がある。その他、図17には存在したフォントの指定を行うリストボックスP1727とテキストフィールドP1728が表示されず、一度に編集可能な編集内容が抑制されている。なおリンクP2012やP2013が、P2010やP2111と同一の画面への遷移を意味する時は、表示する必要がない。
以下では、一度に編集可能な編集内容を変更する方法について図21及び図22に示すフローチャートを使用して説明する。
図21及び図22は、WebページのGUI20を作成するときの処理のフローチャートについて説明しており、図21は各ページがはじめて表示される時の初期化の処理を、図22は初期化が行われた後にGUI20を作成するための処理を示す。
まず図9(又は図8)の編集用画面へのリンクP902(又はP803)をクリックした時、又は図20のP2010又はP2011をクリックした場合を説明する。すなわち、ある特定のページについての編集用画面であるWebページであるGUI20が初めて表示される時の処理のフローチャートについて説明する。この場合、初期化が必要となるので、図21のフローチャートで説明される処理に引き続き、図22で説明されるフローチャートの処理が行われる。
処理の開始後、まずステップS2101において、各編集内容、例えば「画像の差し替え」や「文字の差し替え」など、に対応する編集部分、例えば図20のP2023乃至P2026の長さを取得する。これらの長さは編集箇所に依存して変化するものではないので、サーバ122の設定ファイルなどに設定されており、これから取得するものである。同様に、ステップS2102では、設定ファイルなどから、編集に用いる領域の長さの最大値を取得し、「maxLen」に代入する。この値はP2023乃至P2026のように編集に用いる領域として使用可能な最大の大きさを示し、この値を適切に設定することによりプレビューを見ながらの編集作業が可能となる。
これらのステップS2101及びS2102で取得される値はページごとに取得する必要のない値であるから、アプリケーションの起動時やセッションの開始時などに取得し、それを使用しても良い。
次にステップS2103に進み、そのページ内にある編集可能に設定されているオブジェクトの一覧を取得し「objArray」に代入し、「objArray」に含まれるオブジェクトの数を「maxObjNum」に代入する。編集可能に設定されているオブジェクトとは、図20の場合の、丸付き数字1で表示される画像(P2031)及び丸付き数字2で表示される文字列(P2030)である。このページにおいて編集可能であるオブジェクトがこの二つに限られるのであれば、「objArray」にはこのオブジェクトについての情報を意味するIDやインスタンスなどを格納し、「maxObjNum」には2が代入される。
次に、ステップS2104では、計算を始めるオブジェクトの順番を示す「oriObjNum」を1に初期化し、ステップS2105で、計算を始める編集内容の順番を示す「oriEdNum」を1に初期化して終了する。
次に、図22の処理が開始され、先ず、ステップS2204乃至S2206において、それぞれ、「len=0」、「objNum=oriObjNum」、「edNum=oriEdNum」のように初期化する。次にステップS2207に進み、「objArray」の「objNum」番目のオブジェクトについての情報を意味するIDやインスタンスなど「obj」に代入する。また、ステップS2208では、「obj」において編集可能となっている編集内容の一覧を取得し「edArray」に代入し、「edArray」に含まれる編集内容の数を「maxEdNum」に代入する。
なおこの時、「edArray」に格納する順番が一意に決まるように、編集内容の表示順を設定ファイルなどで別に決めておき、「edArray」に格納する際にその順で格納する必要がある。例えば、画像の差し替え、画像の拡大縮小、画像の移動、文字の差し替え、フォントの指定、フォントサイズの順で表示することとし、その順番で「edArray」に格納する。
次にステップS2209で、「edArray」の「edNum」番目の編集内容を取得し、この編集内容に対応する表示領域の長さを取得する。そしてこの長さを「len」に加える。そして、ステップS2210の判断で、「len」が「maxLen」より大きい時は、GUI20において編集可能な範囲が確定する。
つまり、ステップS2221で、「edNum」が1の時は、ステップS2222に進む。そして、「objArray」の「oriObjNum」番目のオブジェクトの「oriEdNum」番目の編集内容から「objNum−1」番目のオブジェクトの最後の編集内容までを編集可能なようにWebページであるGUI20を作成する。一方、「edNum」が1でない時は、ステップS2223に進む。そして、「objArray」の「oriObjNum」番目のオブジェクトの「oriEdNum」番目の編集内容から「objNum」番目のオブジェクトの「edNum−1」番目の編集内容までを編集可能なようにGUI20を作成する)。
なお、ステップS2216において、「objNum」が「oriObjNum」と等しく、また「edNum」が「oriEdNum」と等しい時は、1つ目で「len」が「maxLen」より大きくなったことを意味する。したがって、ステップS2222及びS2223の処理に先立ち、以下の処理が実行される。すなわち、ステップS2217で、「edNum」が「maxEdNum」より小さい時は、ステップS2220で「edNum」をインクリメントする。また、「edNum」が「maxEdNum」より大きい又は等しい時は、ステップS2218で「objNum」をインクリメントし、さらにステップS2219で「edNum」に1を代入する。
また、「oriObjNum」が1でかつ「oriEdNum」が1の時は、P1912は表示されない。同様に「objNum」が「maxObjNum+1」以上の時は、P1913が表示されない。
さらに、同一ページ中で編集可能となったオブジェクトの「objArray」における順番によってプレビューの丸付き数字として表示する番号を決める。つまり「oriObjNum」番目のオブジェクトには1が付番され、以下それに続く。そしてこの番号をプレビュー中のPDF中で/Iconで示された座標にあたる場所に合成する。またそれに対応してP2023乃至P2026など編集に用いる領域においても丸付き数字を表示する。
一方、ステップS2210で、「len」が「maxLen」以下の時で、また、ステップS2211で、「edNum」が「maxEdNum」より小さい時は、ステップS2212に進む。そして、「edNum」をインクリメントし、再度S2209及びS2210のステップが行われる。
しかし、「len」が「maxLen」以下の時で、かつ、「edNum」が「maxEdNum」以上の時は、ステップS2213に進み、「objNum」をインクリメントし、さらにステップS2214に進んで、「edNum」に1を代入する。
そしてその結果をステップS2215で判断し、「objNum」が「maxObjNum」以下の時は、再度S2207乃至S2210のステップが行われる。しかし、「objNum」が「maxObjNum」より大きい時は、すべてのオブジェクトのすべての編集内容を調べたことになる。したがって、ステップS2216に進み、「edNum」が1かどうかに応じ、ステップS2222又はS2223において適切なWebページであるGUI20が作成される。
なお、各ページの「objArray」、「maxObjNum」については、セッション情報としてページ番号と関連付けられて保持され、同一セッション内では共有化されているものとする。
図20に示すGUI20の、次の編集内容を示すリンクP2013をクリックした時、編集用画面GUI20が再度表示される。この時は、引数などを通して「edNum」、「objNum」が通知される。そして次のページにおいて、この値をそれぞれ「oriObjNum」、「oriEdNum」として使用する。その後の処理については、図22のフローチャートを使用して説明したのと同様である。一方、前の編集内容を示すリンクP1912をクリックした場合の処理は、図22における処理とは異なるものの、「objArray」を後の順番から先の順番へと検索していけばよい。この処理の基本的な考え方は上記で説明したものと何ら変わりはないので省略する。
<許可注文者の操作及び対応する処理(3)>
なお再編集可能なオブジェクトを示すアイコンP1730(又はP1130、P1230、P1330、P1430、P1530、P1730、P1731)があるためプレビューとしては不完全なものになり得ると考えた。したがって、以上においては確認画面と編集用画面を別にした。しかしながら、確認画面の機能を編集用画面で果たしても良い。その場合、再編集可能なオブジェクトがない場合は、リンクP902のないWebページのGUI9が表示される。また、再編集可能なオブジェクトがある場合を考える。この場合は、リンクP1003(又はP1103乃至P1703)の代わりに注文画面へのリンク(P903)をもつGUI10(又はGUI11乃至GUI13、GUI15乃至GUI17)が表示されることになる。
許可注文者は再編集が終了するとリンクP1003(又はP1103、P1203、P1303、P1503、P1603、P1703)をクリックする。するとサーバ122は編集結果を反映した印刷データを作成し、セッションIDと関連付けられた印刷データとして、印刷データ作成者が作成した印刷データとは別に保存する。そしてこの印刷データの該当ページをレンダリングすることによりJPEGを作成し、GUI9を表示することによって許可注文者は内容の確認を行うことができる。
許可注文者はリンクP910、P911を使用すると、その場でJPEGデータを作成するか、事前に作成しておいたJPEGデータをプレビュー用画像として使用してGUI9が表示されるので、内容の確認を行うことができる。
なお本実施形態では、セッションIDと関連付けられた印刷データとして、印刷データ作成者が作成した印刷データとは別に保存している。これは許可注文者が複数存在する時に、個々の許可注文者が印刷データ作成者の作成した印刷データをもとに編集し別の印刷データを作成することを可能ならしめるためである。したがって、セッションIDと関連付けて保存するとセッションが存続する間しか印刷データも参照されないので、セッションが存続しなくなった後は、データの削除を行う必要がある。
またセッションIDのように短い期間しか存続しないIDではなく、長期存続し再利用されないIDを発行し、Cookie情報として個々の許可注文者のPC123に保存することも可能である。そして、IDを明示的に個々の許可注文者に提示し、そのIDと編集後の印刷データを関連付けることによって、編集後の印刷データによる再注文を可能にしたり、再度の編集を可能にすることもできる。さらに許可注文者に通知されるURLをメールアドレスに応じて変え(それに加えて別メールでパスワードも送付し)ることもありうる。そして、許可注文者が印刷データの内容を確認する前にメールアドレス(と別便で送付したパスワード)の入力を求めることで、認証を行い、登録されているメールアドレスに応じて編集結果である印刷データを保存するといったことも可能である。このような方法をとることによって、認証を行ったものだけに編集を許し、許可注文者ごとに編集結果である印刷データを保存し、再注文や再度の編集を可能にすることもできる。
なお本実施形態においては、許可注文者が再編集を行う場合について詳細の説明を行ったが、許可注文者の再編集は必須のものではない。許可注文者が印刷データ作成者が作成した印刷データが適切だと考えるなら、GUI9が最初に表示された際に、リンクP903をクリックして注文を行うことも可能である。
許可注文者がプレビューを確認の上で注文を行うためにリンクP903をクリックすると、サーバ122はGUI23を表示する(図23、図2の工程(11))。許可注文者は、注文数量をテキストフィールドP2301に入力し、ボタンP2310をクリックすると、GUI24が表示される(図24、図2の工程(11))。許可注文者は、テキストフィールドP2401とP2402それぞれに許可注文者の住所と氏名を、また、テキストフィールドP2403とP2404それぞれに配送先の住所と氏名を入力し、ボタンP2410をクリックする。すると、サーバ122はGUI25を表示する(図25、図2の工程(11))。
許可注文者はP2501に書かれた注文内訳を確認しボタンP2510をクリックすると、サーバ122はWebページであるGUI26を表示する(図26、図2の工程(12))。P2601には問い合わせなどに使用する注文番号が書かれているので、許可注文者はこれを控えることで、注文は完了する。
再度注文を行う場合は、リンクP2602をクリックし、GUI9に遷移してから行う。なおGUI23乃至GUI25において、キャンセルボタンP2311、P2411、P2511をクリックした場合は、GUI9に遷移する。
本実施形態では代金引換での料金支払を仮定しているのでGUI26において課金に関する説明を要しない。しかしながら、GUI26において入金すべき銀行口座番号について記述し、そこに入金するよう指示する文言を付加しても良い。またGUI25とGUI26の間で、クレジットカード番号を入力する画面を用意するなど、他の決済方法を使用しても良いが、決済方法は本実施形態での説明において本質的でないので省略する。
サーバ122は、入金が確認又は代金引換など入金が確実な場合、印刷データを印刷工程にまわす(図2の工程(13))。この時点で入金の確認がされていない場合は、決済が完了したタイミングに(決済システムからの通知や運用ツールなどによる明示的な指示をきっかけにして)印刷データを印刷工程にまわす。印刷工程において印刷されたものは郵送手段によって、許可注文者がGUI24のP2403及びP2404で指定した配送先に送付される。
以上説明した、本発明の実施形態に係る情報処理装置の再編集の動作について、さらに図27及び28のフローチャートを使用して詳細に説明する。図27のステップS2701において、印刷データ作成者はPC121を使用して、編集データを作成する。さらに第三者へ再編集を許可する許可オブジェクト及び再編集内容を指定する。さらに必要の応じて編集データに改竄防止データを埋め込むことも可能である。そしてステップS2702で、サーバ122にアップロードする。
サーバ122は、ステップS2703においてアップロードされたデータの認証を行い、確認できたならば、アップロードされたデータをデータ保存装置124に保存する。そして、ステップS2704で、許可注文者(再編集を許可する)の指定をPC121に要求する。
PC121では、ステップS2705で許可注文者を指定し、ステップS2706でサーバ122にアップロードする。それを受けて、サーバ122は、認証の確認後、許可注文者に関する情報データをデータ保存装置124に保存する。
次に、図28に移り、サーバ122は、ステップS2801で指定された許可注文者にメールを発行する。メールを受けた許可注文者は、ステップS2802で編集データを選択し、ステップS2803で、サーバ122に対して自分のPC123を使用して編集データのダウンロードを要求する。
これを受けてサーバ122はステップS2804において、まず認証動作を行った後に、データ保存装置124から該当するデータを読出し、ステップS2805でPC123にダウンロードする。
許可注文者は、ステップS2806で、ダウンロードされたデータに従って、編集データの再編集を必要に応じて行う。そして、ステップS2807で、サーバ122にアップロードする。
サーバ122は、認証後、送られてきた再編集データをデータ保存装置124に保存したのち、ステップS2809で不当な編集、即ち改竄がなされたかを検査する。これは、先にステップS2701で、編集データ作成者が指定して許可した範囲を越えた再編集がなされたか否かを検査する。不当な編集、即ち改竄がなされたならば、ステップS2810のように、許可注文者のPC123に処理の停止を通知して処理を終了する。
しかし、不当な編集、即ち改竄がなければ、ステップS2811で、許可注文者に注文内容を要求する。許可注文者は、ステップS2812で、PC123を使用して注文内容を記入し、ステップS2813で、サーバ122にアップロードする。
それを受けたサーバ122は、ステップS2814で、認証後に再編集データを注文内容に応じて印刷処理する。そして、課金処理も行うことになる。この印刷処理は、このシステム外の印刷所等に依頼することもあり得る。かくして、再編集データに基ずく印刷物がPC123を所有する許可注文者のもとへ郵送されて処理は終了する。
上記した、本発明の実施形態に係る情報処理装置によれば、データ作成者が提供したサーバ上におけるオブジェクトの編集を、許可注文者が簡単に編集することが可能となる。
<他の実施形態>
尚、前述した実施形態の機能を実現するソフトウェアのプログラムを、記録媒体から直接、或いは有線/無線通信を用いて当該プログラムを実行可能なコンピュータを有するシステム又は装置に供給する場合もありうる。そして、そのシステム或いは装置のコンピュータが該供給されたプログラムを実行することによって同等の機能が達成される場合も本発明に含む。
従って、本発明の機能処理をコンピュータで実現するために、該コンピュータに供給、インストールされるプログラムコード自体も本発明を実現するものである。つまり、本発明の機能処理を実現するためのコンピュータプログラム自体も本発明に含まれる。その場合、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、OSに供給するスクリプトデータ等、プログラムの形態を問わない。
プログラムを供給するための記録媒体としては、例えば、フレキシブルディスク、ハードディスク、磁気テープ等の磁気記録媒体がある。さらに、MO、CD−ROM、CD−R、CD−RW、DVD−ROM、DVD−R、DVD−RW等の光/光磁気記憶媒体、不揮発性の半導体メモリなども使用可能である。
有線/無線通信を用いたプログラムの供給方法としては、コンピュータネットワーク上のサーバに、クライアントコンピュータ上で本発明を形成するコンピュータプログラムとなりうるデータファイルを記憶する。これは、本発明を形成するコンピュータプログラムそのもの、もしくは圧縮されたファイル等であってもよい。
そして接続のあったクライアントコンピュータにプログラムデータファイルをダウンロードする方法などが挙げられる。この場合、プログラムデータファイルを複数のセグメントファイルに分割し、セグメントファイルを異なるサーバに配置することも可能である。つまり、本発明の機能処理をコンピュータで実現するためのプログラムデータファイルを複数のユーザに対してダウンロードさせるサーバ装置も本発明に含む。
また、本発明のプログラムを暗号化してCD−ROM等の記憶媒体に格納してユーザに配布し、所定の条件を満たしたユーザに対して暗号化を解く鍵情報を、例えばインターネットを介してホームページからダウンロードさせる。このように供給し、その鍵情報を使用することにより暗号化されたプログラムを実行してコンピュータにインストールさせて実現することも可能である。
また、コンピュータが、読み出したプログラムを実行することによって、前述した実施形態の機能が実現される。さらには、そのプログラムの指示に基づき、コンピュータ上で稼動しているOSなどが、実際の処理の一部又は全部を行ない、その処理によっても前述した実施形態の機能が実現され得る。
さらに、記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込む。その後、そのプログラムの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPUなどが実際の処理の一部又は全部を行ない、その処理によっても前述した実施形態の機能が実現され得る。