JP5080325B2 - Information processing apparatus, information processing method, information processing program, and recording medium - Google Patents

Information processing apparatus, information processing method, information processing program, and recording medium Download PDF

Info

Publication number
JP5080325B2
JP5080325B2 JP2008069152A JP2008069152A JP5080325B2 JP 5080325 B2 JP5080325 B2 JP 5080325B2 JP 2008069152 A JP2008069152 A JP 2008069152A JP 2008069152 A JP2008069152 A JP 2008069152A JP 5080325 B2 JP5080325 B2 JP 5080325B2
Authority
JP
Japan
Prior art keywords
code stream
storage
unit
file
information processing
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.)
Expired - Fee Related
Application number
JP2008069152A
Other languages
Japanese (ja)
Other versions
JP2009223747A (en
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.)
Ricoh Co Ltd
Original Assignee
Ricoh Co Ltd
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 Ricoh Co Ltd filed Critical Ricoh Co Ltd
Priority to JP2008069152A priority Critical patent/JP5080325B2/en
Publication of JP2009223747A publication Critical patent/JP2009223747A/en
Application granted granted Critical
Publication of JP5080325B2 publication Critical patent/JP5080325B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Document Processing Apparatus (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Facsimiles In General (AREA)
  • Storing Facsimile Image Data (AREA)

Description

本発明は、ネットワーク上に共有された文書にアクセスを行う情報処理装置、情報処理方法、情報処理プログラム及び記録媒体に関する。   The present invention relates to an information processing apparatus, an information processing method, an information processing program, and a recording medium that access a document shared on a network.

多くの文書は一般に複数の頁を有している。これら文書を利用するユーザは、全頁を一度に全て読むわけではなく、各々が関心のある特定の箇所だけを読むのが一般的である。このような背景において、標準書やマニュアル、教材等の複数頁から構成される文書の電子化に対応するため、Adobe社のPDF(Portable Document Format)等のマルチページをサポート可能な構造化文書が開発されている(例えば、非特許文献1参照)。   Many documents generally have multiple pages. Users who use these documents generally do not read all the pages at once, but typically only read the specific parts of interest. Against this background, there are structured documents that can support multi-pages such as Adobe's PDF (Portable Document Format) in order to support the digitization of documents consisting of multiple pages such as standard books, manuals, and teaching materials. It has been developed (for example, see Non-Patent Document 1).

このような構造化文書の構造は、一般にいくつかのレイアウトオブジェクトを持ち、そのレイアウトオブジェクトは高々1つのマスクを持ち、このマスクの値によって前景または背景を選択的にレンダリングする形になっている。これにより構造化文書においては非構造化文書よりも高画質で高圧縮率が実現される。同様な技術として、マスクに2値画像の符号化方式を適用し、前景と背景とに非特許文献2に示す符号化方式による符号化を施して構造化文書を構成するようにした符号化方式が開発されている(非特許文献3〜8)。   The structure of such a structured document generally has several layout objects, and the layout object has at most one mask, and the foreground or background is selectively rendered according to the value of this mask. As a result, the structured document achieves higher image quality and higher compression rate than the unstructured document. As a similar technique, a coding method of a binary image is applied to a mask, and a structured document is formed by coding the foreground and background according to the coding method shown in Non-Patent Document 2. Have been developed (Non-Patent Documents 3 to 8).

ところで、電子文書をネットワーク環境で共有することで、当該電子文書に含まれる情報を複数のユーザに均質に提供することが行われている。このような環境では、各ユーザは共有された一の電子文書を共有して読み出すことが可能となっている。共有された電子文書を閲覧するような場合、FTP(File Transfer Protocol)を用いてローカルPC(Personal Computer)にダウンロードした後に展開されることが行われている。   By the way, by sharing an electronic document in a network environment, information included in the electronic document is uniformly provided to a plurality of users. In such an environment, each user can share and read one shared electronic document. When browsing a shared electronic document, it is developed after being downloaded to a local PC (Personal Computer) using FTP (File Transfer Protocol).

しかし、PDF等の構造化文書では、ユーザが必要とする文書が1ページであったとしても、電子文書全体をダウンロードする必要があるため、ダウンロードに要する時間やネットワークへの負荷が問題となる。また、電子文書の閲覧が行われるクライアントでの利用可能なメモリ量が電子文書全体のデータ量より少ない場合には、当該電子文書を展開することができないため、ユーザが必要とするページを閲覧することができないという問題がある。   However, in a structured document such as PDF, even if the document required by the user is one page, it is necessary to download the entire electronic document, so the time required for downloading and the load on the network become problems. In addition, when the amount of memory available on the client where the electronic document is browsed is smaller than the data amount of the entire electronic document, the electronic document cannot be expanded, and thus a page required by the user is browsed. There is a problem that can not be.

上記の問題については、従来、複数のファイルにより構成される複合ファイルにおいて、ユーザから指定されたページのファイルを結合することで新たな複合ファイルを生成し、ユーザに送信する技術が提案されている(例えば、特許文献1参照)。また、複合ファイルの生成に関しては、個別に記憶したファイル群から特定のキーワードに関連するファイルを検索し、該当したファイル群を1のファイルに結合する技術が提案されている(例えば、特許文献2参照)。   Regarding the above problem, conventionally, a technique has been proposed in which a composite file composed of a plurality of files is combined with a file of a page specified by the user to generate a new composite file and send it to the user. (For example, refer to Patent Document 1). As for the generation of a composite file, a technique has been proposed in which files related to a specific keyword are searched from individually stored file groups and the corresponding file groups are combined into one file (for example, Patent Document 2). reference).

PDF Reference fifth edition Adobe Portable Document Format Version 1.6 Adobe System IncorporatedPDF Reference fifty edition Adobe Portable Document Format Version 1.6 Adobe System Incorporated WGIN2750「Information Technology−JPEG2000 Image Coding System−Part1 FDIS, 18 AUGUST 2000WGIN 2750 "Information Technology-JPEG2000 Image Coding System-Part1 FDIS, 18 AUGUST 2000 WG1N2813「Information Technology−JPEG2000 Image Coding System−Part6:CompoundImage File Format」JPEG2000 Part6 FDIS,9 DECEMBER2002WG1N2813 "Information Technology-JPEG2000 Image Coding System-Part6: CompoundImage File Format" JPEG2000 Part6 FDIS, 9 DECEMBER2002 「Information Technology−JPEG2000 Image Coding System−Part9:Interactivity Tools,APIs and protocols 2004−03−30“Information Technology-JPEG2000 Image Coding System-Part 9: Interactivity Tools, APIs and protocols 2004-03-30 ITU−T Recommendation T.4,Standardization of Group 3 facsimile terminals for document transmissionITU-T Recommendation T. 4, Standardization of Group 3 facsimile terminals for document transmission ITU−T Recommendation T.6,Facsimile coding schemes and coding control functions for group 4 facsimile apparatusITU-T Recommendation T. 6, Facsimile coding schemes and coding control functions for group 4 facsimile appratus ISO/IEC JTC1/SC29 N4974 Final Text Of ISO/IEC 15444−2:2002:Information Technology − JPEG 2000 image codingsystem:Extensions [SC29/WG1 N2679] 05 AUGUST 2002ISO / IEC JTC1 / SC29 N4974 Final Text Of ISO / IEC 15444-2: 2002: Information Technology-JPEG 2000 image coding system: Extensions [SC29 / WG1 N2679 UST ISO/IEC JTC1/SC29 N2250 MotionJPEG2000 Final Draft International Standard、 17 September 2001ISO / IEC JTC1 / SC29 N2250 Motion JPEG2000 Final Draft International Standard, 17 September 2001 特開2005−223391号公報JP 2005-223391 A 特開2003−114814号公報JP 2003-114814 A

ところで、従来の構造化文書では、1又は複数のコードストリームが一つのファイルを構成する要素として保持されているため、複数のページから特定のページの特定の解像度や一部の領域を抜粋する際には、コードストリーム単位で分割する必要がある。しかしながら、特許文献1、2に記載の技術にはその方法については何等記載されておらず適用することはできない。特に、特許文献2に記載された各ファイルを個別に記憶する構成としたとしても、各文書は章又は節単位で分割されたファイルとして記憶することになるため、各ファイルはマルチページとなり、1ページ単位での分割をすることはできない。また、ページ単位で個別に記憶した場合には、ページ数分のファイルを作成する必要がある。例えば、1000ページの文書であれば、1000個のファイルを予め作成する必要があるため、ファイルの管理にかかる負担が大きく現実的ではない。   By the way, in the conventional structured document, one or a plurality of code streams are held as elements constituting one file, and therefore when extracting a specific resolution or a partial area of a specific page from a plurality of pages. Needs to be divided in units of code streams. However, the techniques described in Patent Documents 1 and 2 do not describe anything about the method and cannot be applied. In particular, even if each file described in Patent Document 2 is configured to be stored individually, each document is stored as a file divided into chapters or sections. You cannot divide by page. Further, when the data is stored individually in units of pages, it is necessary to create files for the number of pages. For example, in the case of a document of 1000 pages, it is necessary to create 1000 files in advance, so the burden on file management is large and not realistic.

本発明は、上記に鑑みてなされたものであって、ネットワーク上に共有された構造化文書が有するコードストリームのうち、特定のコードストリームにのみ効率的にアクセスすることが可能な情報処理装置、情報処理方法、情報処理プログラム及び記録媒体を提供することを目的とする。   The present invention has been made in view of the above, and an information processing apparatus capable of efficiently accessing only a specific code stream among code streams of structured documents shared on a network, An object is to provide an information processing method, an information processing program, and a recording medium.

上述した課題を解決し、目的を達成するために、請求項1にかかる発明は、コードストリームと、当該各コードストリームの格納位置を示した管理情報とを少なくとも含み、これらコードストリームと管理情報とが所定の構造で格納された構造化文書を記憶する外部記憶装置にネットワークを介してアクセスを行う情報処理装置において、前記構造化文書から前記管理情報を取得する第1取得手段と、前記第1取得手段により取得された管理情報が示す格納位置のうち、取得を行うコードストリームの格納位置の指定を受け付ける受付手段と、前記指定されたコードストリームの格納位置から前記コードストリームを取得する第2取得手段と、前記第1取得手段により取得された管理情報と、前記第2取得手段により取得されたコードストリームとを前記構造化文書に応じた構造で記憶手段に格納する記憶制御手段と、前記記憶手段に格納された各コードストリームに対応する前記記憶手段内の管理情報に、当該各コードストリームの格納位置を上書きする格納位置更新手段と、を備えたことを特徴とする。   In order to solve the above-described problems and achieve the object, the invention according to claim 1 includes at least a code stream and management information indicating a storage position of each code stream. In an information processing apparatus that accesses an external storage device that stores a structured document stored in a predetermined structure via a network, a first acquisition unit that acquires the management information from the structured document; Out of the storage positions indicated by the management information acquired by the acquisition means, receiving means for receiving designation of the storage position of the code stream to be acquired, and second acquisition for acquiring the code stream from the storage position of the specified code stream Means, management information acquired by the first acquisition means, and code stream acquired by the second acquisition means Storage control means for storing the data in the storage means in a structure corresponding to the structured document, and storage of each code stream in the management information in the storage means corresponding to each code stream stored in the storage means Storage position updating means for overwriting the position.

また、請求項2にかかる発明は、請求項1にかかる発明において、前記記憶制御手段は、前記第2取得手段により取得されたコードストリームを、前記構造化文書に格納されたコードストリームの格納順序に応じた順序で前記記憶手段に格納することを特徴とする。   According to a second aspect of the present invention, in the first aspect of the invention, the storage control means stores the code stream acquired by the second acquisition means in the order in which the code streams stored in the structured document are stored. Are stored in the storage means in the order according to the above.

また、請求項3にかかる発明は、請求項1にかかる発明において、前記記憶制御手段は、前記第2取得手段により取得されたコードストリームを、当該コードストリームが取得された順序で前記記憶手段に格納することを特徴とする。   According to a third aspect of the present invention, in the first aspect of the invention, the storage control unit stores the code stream acquired by the second acquisition unit in the storage unit in the order in which the code stream is acquired. It is characterized by storing.

また、請求項4にかかる発明は、請求項1にかかる発明において、前記管理情報は、前記構造化文書における一意の位置を起点とし、この起点から前記各コードストリームが格納された位置までのオフセットと長さを、前記格納位置として保持することを特徴とする。   The invention according to claim 4 is the invention according to claim 1, wherein the management information starts from a unique position in the structured document, and an offset from the start point to a position where each code stream is stored. And the length are held as the storage position.

また、請求項5にかかる発明は、請求項4にかかる発明において、前記第2取得手段は、前記構造化文書の起点から、前記コードストリームの格納位置に応じたオフセットと長さ分、離れた位置に格納された前記コードストリームを取得することを特徴とする。   The invention according to claim 5 is the invention according to claim 4, wherein the second acquisition unit is separated from the starting point of the structured document by an offset and a length corresponding to a storage position of the code stream. The code stream stored at a position is acquired.

また、請求項6にかかる発明は、請求項1又は2にかかる発明において、前記記憶手段に記憶されたコードストリーム間の間隙を削除する削除手段を更に備え、前記格納位置更新手段は、前記削除手段により間隙が削除された後の各コードストリームの格納位置を、前記記憶手段に格納された当該各コードストリームに対応する管理情報に上書きすることを特徴とする。
The invention according to claim 6 is the invention according to claim 1 or 2 , further comprising a deletion unit that deletes a gap between code streams stored in the storage unit, wherein the storage location update unit is the deletion unit. The storage position of each code stream after the gap is deleted by the means is overwritten on the management information corresponding to each code stream stored in the storage means.

また、請求項7にかかる発明は、請求項1にかかる発明において、前記記憶手段に格納された各コードストリームを伸長する伸長手段を更に備えたことを特徴とする。   The invention according to claim 7 is the invention according to claim 1, further comprising decompression means for decompressing each code stream stored in the storage means.

また、請求項8にかかる発明は、請求項1にかかる発明において、前記受付手段は、前記構造化文書のページ単位で前記コードストリームの格納位置の指定を受け付けることを特徴とする。   The invention according to claim 8 is the invention according to claim 1, wherein the accepting unit accepts designation of a storage location of the code stream in units of pages of the structured document.

また、請求項9にかかる発明は、請求項1にかかる発明において、前記構造化文書は、ISO15444−1に準拠したファイルであることを特徴とする。   The invention according to claim 9 is the invention according to claim 1, wherein the structured document is a file conforming to ISO 15444-1.

また、請求項10にかかる発明は、請求項1にかかる発明において、前記構造化文書は、ISO15444−2に準拠したファイルであることを特徴とする。   The invention according to claim 10 is the invention according to claim 1, characterized in that the structured document is a file conforming to ISO 15444-2.

また、請求項11にかかる発明は、請求項1にかかる発明において、前記構造化文書は、ISO15444−4に準拠したファイルであることを特徴とする。   The invention according to claim 11 is the invention according to claim 1, wherein the structured document is a file conforming to ISO 15444-4.

また、請求項12にかかる発明は、請求項1にかかる発明において、前記構造化文書は、ISO15444−6に準拠したファイルであることを特徴とする。   The invention according to claim 12 is the invention according to claim 1, wherein the structured document is a file conforming to ISO 15444-6.

また、請求項13にかかる発明は、請求項9〜12の何れか一項にかかる発明において、前記第1取得手段及び前記第2取得手段は、通信プロトコルとしてISO15444−9で規定されたJPIPを用いることを特徴とする。   The invention according to claim 13 is the invention according to any one of claims 9 to 12, wherein the first acquisition means and the second acquisition means use JPIP defined in ISO 15444-9 as a communication protocol. It is characterized by using.

また、請求項14にかかる発明は、請求項1にかかる発明において、前記構造化文書は、Portable Documet Formatの仕様に準拠したファイルであることを特徴とする。   The invention according to claim 14 is the invention according to claim 1, wherein the structured document is a file conforming to a specification of a portable document format.

また、請求項15にかかる発明は、請求項1にかかる発明において、前記構造化文書は、Multi Page Tagged Image Fileの仕様に準拠したファイルであることを特徴とする。   The invention according to claim 15 is the invention according to claim 1, characterized in that the structured document is a file conforming to the specification of the Multi Page Tagged Image File.

また、請求項16にかかる発明は、コードストリームと、当該各コードストリームの格納位置を示した管理情報とを少なくとも含み、これらコードストリームと管理情報とが所定の構造で格納された構造化文書を記憶する外部記憶装置にネットワークを介してアクセスを行う情報処理装置で実行される情報処理方法であって、第1取得手段が、前記構造化文書から前記管理情報を取得する第1取得ステップと、受付手段が、前記第1取得ステップで取得された管理情報が示す格納位置のうち、取得を行うコードストリームの格納位置の指定を受け付ける受付ステップと、第2取得手段が、前記指定されたコードストリームの格納位置から前記コードストリームを取得する第2取得ステップと、記憶制御手段が、前記第1取得ステップで取得された管理情報と、前記第2取得ステップで取得されたコードストームとを前記構造化文書に応じた構造で記憶手段に格納する記憶制御ステップと、格納位置更新手段が、前記記憶手段に格納された各コードストリームに対応する前記記憶手段内の管理情報に、当該各コードストリームの格納位置を上書きする格納位置更新ステップと、を含むことを特徴とする。   According to a sixteenth aspect of the present invention, there is provided a structured document including at least a code stream and management information indicating a storage position of each code stream, the code stream and the management information being stored in a predetermined structure. An information processing method executed by an information processing apparatus that accesses an external storage device to be stored via a network, wherein a first acquisition unit acquires the management information from the structured document; An accepting step for accepting designation of a storage location of a code stream to be acquired out of the storage locations indicated by the management information obtained in the first obtaining step, and a second obtaining device comprising the designated code stream A second acquisition step of acquiring the code stream from the storage position of the storage, and a storage control means acquired in the first acquisition step. A storage control step for storing the management information and the code storm acquired in the second acquisition step in a storage unit in a structure corresponding to the structured document, and a storage location update unit stored in the storage unit. And a storage location update step of overwriting the storage location of each code stream in the management information in the storage means corresponding to each code stream.

また、請求項17にかかる発明は、コードストリームと、当該各コードストリームの格納位置を示した管理情報とを少なくとも含み、これらコードストリームと管理情報とが所定の構造で格納された構造化文書を記憶する外部記憶装置にネットワークを介してアクセスを行うコンピュータを、前記構造化文書から前記管理情報を取得する第1取得手段と、前記第1取得手段により取得された管理情報が示す格納位置のうち、取得を行うコードストリームの格納位置の指定を受け付ける受付手段と、前記指定されたコードストリームの格納位置から前記コードストリームを取得する第2取得手段と、前記第1取得手段により取得された管理情報と、前記第2取得手段により取得されたコードストームとを前記構造化文書に応じた構造で記憶手段に格納する記憶制御手段と、前記記憶手段に格納された各コードストリームに対応する前記記憶手段内の管理情報に、当該各コードストリームの格納位置を上書きする格納位置更新手段と、して機能させることを特徴とする。   According to a seventeenth aspect of the present invention, there is provided a structured document including at least a code stream and management information indicating a storage position of each code stream, wherein the code stream and the management information are stored in a predetermined structure. A computer that accesses a storage external storage device via a network, a first acquisition unit that acquires the management information from the structured document, and a storage location indicated by the management information acquired by the first acquisition unit Receiving means for receiving designation of the storage location of the code stream to be acquired, second acquisition means for acquiring the code stream from the storage location of the designated code stream, and management information acquired by the first acquisition means And a code storm acquired by the second acquisition means in a structure corresponding to the structured document Storage control means for storing, and storage position update means for overwriting the storage position of each code stream in the management information in the storage means corresponding to each code stream stored in the storage means It is characterized by.

また、請求項18にかかる発明は、請求項17に記載の情報処理プログラムが記録されていることを特徴とする。   The invention according to claim 18 is characterized in that the information processing program according to claim 17 is recorded.

本発明によれば、ネットワーク上に存在する構造化文書から、当該構造化文書の要素となる各コードストリームの格納位置を示した管理情報を取得し、この管理情報に示された格納位置に基づいて、特定の格納位置に格納されたコードストリームのみを取得する。これにより、ネットワークに流れるデータ量を抑えることができるとともに、構造化文書の保持にかかるメモリ量も抑えることができるため、効率的にアクセスを行うことができる。また、取得した管理情報及びコードストリームを構造化文書に応じた構造で記憶手段に格納し、管理情報とコードストリームとの参照関係を更新するため、元の構造化文書との互換性を維持することが可能となり、元の構造化文書から特定のコードストリームを抜粋した状態で保持することができる。   According to the present invention, management information indicating the storage position of each code stream that is an element of the structured document is acquired from the structured document existing on the network, and based on the storage position indicated in the management information. Thus, only the code stream stored in the specific storage position is acquired. As a result, the amount of data flowing through the network can be reduced, and the amount of memory required for holding structured documents can also be reduced, so that access can be made efficiently. In addition, since the acquired management information and code stream are stored in the storage unit in a structure corresponding to the structured document, and the reference relationship between the management information and the code stream is updated, compatibility with the original structured document is maintained. And a specific code stream is extracted from the original structured document.

以下に添付図面を参照して、本発明にかかる情報処理装置、情報処理方法及び情報処理プログラムの最良な実施の形態を詳細に説明する。なお、以下の実施形態では、本発明の情報処理装置をPC(Personal Computer)等のファイル変換装置、ブラウジング装置、複写機やプリンタ、ファクシミリ等の印刷装置に適用した例を示すが、これに限定されるものではなく、ネットワーク上に共有された文書にアクセス可能な他の機器等にも適用することが可能である。   Exemplary embodiments of an information processing apparatus, an information processing method, and an information processing program according to the present invention are explained in detail below with reference to the accompanying drawings. In the following embodiment, an example in which the information processing apparatus of the present invention is applied to a file conversion apparatus such as a PC (Personal Computer), a browsing apparatus, a copier, a printer, a facsimile, or the like is shown. However, the present invention can be applied to other devices that can access documents shared on the network.

[第1の実施形態]
図1は、本発明にかかるファイル変換装置200を含む文書共有システムの構成を示した図である。同図に示したように、文書共有システムは、ネットワークNに接続された各機器に後述するJPMファイルを共有可能に提供する文書共有サーバ100と、JPMファイルにアクセスと行うファイル変換装置200と、ブラウジング装置300と、印刷装置400とを有している。以下、ファイル変換装置200、ブラウジング装置300、印刷装置400を総称してクライアントという。なお、ネットワークNに接続される文書共有サーバ100、ファイル変換装置200、ブラウジング装置300、印刷装置400の個数は、図1の態様に限定されないものとする。
[First Embodiment]
FIG. 1 is a diagram showing a configuration of a document sharing system including a file conversion apparatus 200 according to the present invention. As shown in the figure, the document sharing system includes a document sharing server 100 that provides each device connected to the network N so that a JPM file (to be described later) can be shared, a file conversion apparatus 200 that accesses the JPM file, It has a browsing device 300 and a printing device 400. Hereinafter, the file conversion apparatus 200, the browsing apparatus 300, and the printing apparatus 400 are collectively referred to as a client. Note that the numbers of the document sharing server 100, the file conversion apparatus 200, the browsing apparatus 300, and the printing apparatus 400 connected to the network N are not limited to the mode illustrated in FIG.

図1において、文書共有サーバ100とクライアントとはネットワークNを介して接続され、種々のデータの送受信を行う。なお、ネットワークNを介したデータ通信の通信プロトコルとして、国際標準ISO15444−9で規定されたJPIP(JPEG2000 Interactivity Tools, APIs and Protocols)を用いるものとするが、これに限らず、ファイル中の特定のページのみを個別にアクセスすることが可能な通信プロトコルであれば他のプロトコルを用いる態様としてもよい。   In FIG. 1, a document sharing server 100 and a client are connected via a network N, and transmit and receive various data. As a communication protocol for data communication via the network N, JPIP (JPEG2000 Interactivity Tools, APIs and Protocols) defined by the international standard ISO 15444-9 is used. However, the present invention is not limited to this. Another communication protocol may be used as long as it is a communication protocol capable of individually accessing only pages.

図2は、文書共有サーバ100のハードウェア構成を示した図である。同図に示したように、文書共有サーバ100は、CPU(Central Processing Unit)11と、ROM(Read Only Memory)12と、RAM(Random Access Memory)13と、マウスやキーボード等の入力デバイスから構成される操作部14と、液晶モニタ等の表示デバイスから構成される表示部15と、HDD(Hard Disk Drive)等の記憶部16と、外部装置(ファイル変換装置200等)との通信を制御する通信I/F部17と、原稿の読み取りを行うスキャナ部18と、これら各部を接続するバス19とを備えており、通常のコンピュータを利用したハードウェア構成となっている。ROM12、記憶部16には、各種プログラムや各種データが記憶される。CPU11は、ROM12や記憶部16に記憶されている各種プログラムをRAM13にロードしてこれを実行することにより、文書共有サーバ100全体を制御し、後述する各種機能部を実現させる。   FIG. 2 is a diagram illustrating a hardware configuration of the document sharing server 100. As shown in the figure, the document sharing server 100 includes a CPU (Central Processing Unit) 11, a ROM (Read Only Memory) 12, a RAM (Random Access Memory) 13, and input devices such as a mouse and a keyboard. Control unit 14, a display unit 15 including a display device such as a liquid crystal monitor, a storage unit 16 such as an HDD (Hard Disk Drive), and an external device (such as a file conversion device 200) are controlled. A communication I / F unit 17, a scanner unit 18 that reads a document, and a bus 19 that connects these units are provided, and has a hardware configuration using a normal computer. Various programs and various data are stored in the ROM 12 and the storage unit 16. The CPU 11 loads the various programs stored in the ROM 12 and the storage unit 16 to the RAM 13 and executes them, thereby controlling the entire document sharing server 100 and realizing various functional units described later.

また、記憶部16には、スキャナ部18により読み取られた原稿画像が、後述する圧縮・符号化部112より構造化文書用のファイルフォーマットで符号化された構造化文書として記憶(蓄積)されている。ここで、構造化文書とは、文字からなる文字部や絵柄からなる絵柄部などの構成要素が混在する一般的な文書において、これらの構成要素をオブジェクトとして捉え、前景、背景及び前景と背景とを切り替えるためのマスクを有した複数のコードストリームから構成されるものである。   Further, the document image read by the scanner unit 18 is stored (accumulated) in the storage unit 16 as a structured document encoded by the compression / encoding unit 112 described later in a file format for a structured document. Yes. Here, a structured document is a general document in which constituent elements such as a character part composed of characters and a picture part composed of pictures are mixed, and these constituent elements are regarded as objects, and the foreground, the background, and the foreground and the background. Are composed of a plurality of code streams having a mask for switching between the two.

本実施形態では、構造化文書の符号化方式としてJPEG2000符号化方式(非特許文献2〜8参照)を用いるものとする。JPEG2000符号化方式(以下、単に「JPEG2000」という)では、従来のJPEGが離散コサイン変換を用いるのに対し、離散ウェーブレット変換を用いることにより、ブロック歪みを発生させることなくJPEGの約2倍の圧縮効果を実現している。   In the present embodiment, it is assumed that the JPEG2000 encoding method (see Non-Patent Documents 2 to 8) is used as the encoding method for structured documents. In the JPEG2000 encoding method (hereinafter simply referred to as “JPEG2000”), the conventional JPEG uses a discrete cosine transform, whereas the discrete wavelet transform is used so that the compression is about twice that of JPEG without causing block distortion. The effect is realized.

JPEG2000には、各種規定が定められており、例えば、ROI(関心領域)の符号化オプションなどが含まれるJPEG2000のPart2(ISO15444−2)、動画規格であるJPEG2000のPart3(ISO15444−3)、絵や文字などの異なる特性を含む複合的な画像に特化した規格であるJPEG2000のPart6(ISO15444−6)などが存在している。   Various specifications are defined in JPEG2000. For example, Part2 (ISO15444-2) of JPEG2000 that includes an encoding option of ROI (region of interest), Part3 (ISO15444-3) of JPEG2000, which is a moving image standard, and a picture JPEG2000 Part 6 (ISO 15444-6), which is a standard specialized for composite images including different characteristics such as text and characters, exists.

以下、JPEG2000のPart6について説明する。JPEG2000のPart6は、絵や文字などの異なる特性を含む複合的な画像に特化した規格であり、国際標準ISO15444−615444−6で規定されている。このJPEG2000のPart6で定められたJPEG2000データのファイル拡張子は「JPM」となっている。以下、JPEG2000のPart6で符号化された構造化文書を「JPMファイル」という。また、文書共有サーバ100が提供するJPMファイルを「オリジナルのJPMファイル」という。JPMファイルは、文書を構成するための複数のボックス(Box)を有しており、これらボックスで規定される内容の階層関係や、包含関係によりJPMファイルを構成する各ページが表される。   Hereinafter, Part 6 of JPEG2000 will be described. Part 6 of JPEG2000 is a standard specialized for composite images including different characteristics such as pictures and characters, and is defined by the international standard ISO15444-615444-6. The file extension of JPEG2000 data defined in Part 6 of JPEG2000 is “JPM”. Hereinafter, a structured document encoded with Part 6 of JPEG 2000 is referred to as a “JPM file”. The JPM file provided by the document sharing server 100 is referred to as “original JPM file”. The JPM file has a plurality of boxes (Boxes) for composing a document, and each page constituting the JPM file is represented by a hierarchical relationship of contents defined by these boxes and an inclusion relationship.

図3は、JPMファイルのデータ構造を模式的に示した図である。同図に示したように、JPMファイルは、JPMファイルを管理するための各種の情報(管理情報)が格納されるヘッダ部と、JPMファイルの各ページに含まれた各種のコードストリームが格納されるデータ部とに大別される。   FIG. 3 is a diagram schematically showing the data structure of the JPM file. As shown in the figure, the JPM file stores a header portion in which various information (management information) for managing the JPM file is stored, and various code streams included in each page of the JPM file. The data section is roughly divided.

ヘッダ部のうち、メタデータには、図示しない下記の3つのフィールドが格納されている。
1.マジックナンバー
2.Signature Field
3.Type Field
In the header part, the following three fields (not shown) are stored in the metadata.
1. Magic number Signature Field
3. Type Field

ここで「マジックナンバー」には、本JPMファイルに固有の識別情報が記述されている。また、「Signature Field」には、本JPMファイルがJPEG2000に依存したファイルであることを示す情報が記述されている。また、「Type Field」には、ファイルタイプ、バージョン、互換性等を示す情報が記述されている。これら3つのフィールドは、この順序でJPMファイルの先頭部分に格納されるよう規定されている。   Here, “magic number” describes identification information unique to this JPM file. In “Signature Field”, information indicating that this JPM file is a file dependent on JPEG2000 is described. In “Type Field”, information indicating the file type, version, compatibility, and the like is described. These three fields are defined to be stored in the head portion of the JPM file in this order.

メタデータの後段に位置するヘッダデータには、コンパウンドヘッダデータと、ページコレクションボックスと、ページボックスとが格納されている。コンパウンドヘッダデータには、本JPMファイルが構造化文書であることを示す情報が記述されている。ページコレクションボックスには、本JPMファイルに含まれる各ページを管理するための情報が記述されており、各ページを指示するためのページボックスと対応付けられている。JPMでの規定では「ファイル→ページコレクション→ページ→レイアウトオブジェクト→オブジェクト→コードストリーム」の順で参照が行われるが、以下では説明の簡略化のため「ファイル→ページコレクション→ページ→コードストリーム」の順で参照が行われるものとして動作を説明する。なお、図3の例では、ページボックスとして「ページボックス0」と「ページボックス1」とが示されているが、これは「ページボックス0」と「ページボックス1」とに対応する2ページ分のファイルからJPMファイルが構成されることを意味している。以下、「ページボックス0」、「ページボックス1」に対応するページを夫々「ページ0」、「ページ1」と表す。   In the header data located after the metadata, compound header data, a page collection box, and a page box are stored. In the compound header data, information indicating that the JPM file is a structured document is described. In the page collection box, information for managing each page included in the JPM file is described, and is associated with a page box for designating each page. In JPM, references are made in the order of “File → Page Collection → Page → Layout Object → Object → Code Stream”, but in the following, for simplification of explanation, “File → Page Collection → Page → Code Stream” The operation will be described assuming that reference is made in order. In the example of FIG. 3, “page box 0” and “page box 1” are shown as page boxes, but this corresponds to two pages corresponding to “page box 0” and “page box 1”. This means that a JPM file is composed of these files. Hereinafter, the pages corresponding to “page box 0” and “page box 1” are represented as “page 0” and “page 1”, respectively.

各ページボックス内には、対応するページの要素となるオブジェクト毎に図示しないオブジェクトボックス(Object Box)が用意されている。これら各オブジェクトボックスには、対応するオブジェクトを表すコードストリームの位置を指示するための情報(オフセットと長さ)が夫々記述されており、このオフセットと長さが示す位置に基づいてコードストリームが読み出されるようになっている。ここで「オフセット」とは、JPMファイルにおいて一意に定まる位置から、各コードストリームの先頭位置まで距離を示す情報である。また「長さ」とは、各コードストリームの先頭から終端までのデータ長を示す情報である。なお、各コードストリームについてのオフセットと長さは、JPEG2000による圧縮・符号化の際に、対応する各ページボックスに含まれるオブジェクトボックスに夫々書き込まれるものとする。   In each page box, an object box (Object Box) (not shown) is prepared for each object as an element of the corresponding page. Each object box describes information (offset and length) for indicating the position of the code stream representing the corresponding object, and the code stream is read based on the position indicated by the offset and the length. It is supposed to be. Here, the “offset” is information indicating a distance from a position uniquely determined in the JPM file to the head position of each code stream. The “length” is information indicating the data length from the beginning to the end of each code stream. It is assumed that the offset and length for each code stream are written in the object boxes included in the corresponding page boxes at the time of compression / encoding by JPEG2000.

図3の例では、「ページボックス0」に含まれるオブジェクトボックス0は「コードストリーム0」の格納位置を示す「オフセット0」、オブジェクトボックス1には「コードストリーム1」の格納位置を示す「オフセット1」とが記述されることで、ページ0の要素として「コードストリーム0」と「コードストリーム1」とを参照することが可能となる(図中、破線参照)。また、同様に「ページボックス1」に含まれるオブジェクトボックス2は「オフセット2」が記述されることで、ページ1の要素として「コードストリーム2」を参照することが可能となっている。このように、各ページボックスからは、対応するページの要素となるコードストリームに夫々アクセスできるようになっている。   In the example of FIG. 3, the object box 0 included in “page box 0” is “offset 0” indicating the storage position of “code stream 0”, and the object box 1 is “offset” indicating the storage position of “code stream 1”. By describing “1”, “code stream 0” and “code stream 1” can be referred to as elements of page 0 (see the broken line in the figure). Similarly, the object box 2 included in “page box 1” can describe “code stream 2” as an element of page 1 by describing “offset 2”. In this way, each page box can access a code stream that is an element of the corresponding page.

なお、JPEG2000のPart6で規定されるJPMファイルでは、上述したオフセットによる格納位置の指定ではなく、ボックス単位で付与されるPlace HolderのIDにより参照することも可能である。また、コードストリームが格納される順番は任意でよく、出現する順番が変動しても標準互換のJPMファイルとして機能すると規定されている。   In the JPM file specified by Part 6 of JPEG 2000, it is also possible to refer to the place holder ID given in units of boxes, instead of specifying the storage position by the offset described above. Further, the order in which the code streams are stored may be arbitrary, and it is defined that the code stream functions as a standard compatible JPM file even if the order of appearance varies.

図4は、図3に示したJPMファイルの表示例を示した図である。図4において、左辺に示した「ページ0」、「ページ1」は、「ページボックス0」、「ページボックス1」に夫々対応するページであって、これら2ページによりJPMファイルが構成されている。ここで、右辺は、「ページ0」が「コードストリーム0」と「コードストリーム1」とから構成されていることを表しており、また「ページ1」が「コードストリーム2」から構成されていることを表している。なお、各コードストリームが表す画像の大きさ(縮小率)やレイアウト位置(X,Y)は、各コードストリームに対応するページボックス毎に用意された、図示しないレイアウトオブジェクトヘッダデータ(Layout Object Header Box)により規定されているものとする。   FIG. 4 is a view showing a display example of the JPM file shown in FIG. In FIG. 4, “page 0” and “page 1” shown on the left side are pages corresponding to “page box 0” and “page box 1”, respectively, and a JPM file is composed of these two pages. . Here, the right side indicates that “page 0” is composed of “code stream 0” and “code stream 1”, and “page 1” is composed of “code stream 2”. Represents that. Note that the size (reduction ratio) and layout position (X, Y) of the image represented by each code stream are determined by layout object header data (Layout Object Header Box) (not shown) prepared for each page box corresponding to each code stream. ).

図5は、文書共有サーバ100の機能的構成を示した図である。文書共有サーバ100は、CPU11とROM12又は記憶部16に記憶された各種プログラムとの協働により実現する機能部として、原稿読取部111と、圧縮・符号化部112と、アクセス要求受付部113と、符号データ読出部114とを備える。   FIG. 5 is a diagram showing a functional configuration of the document sharing server 100. The document sharing server 100 includes a document reading unit 111, a compression / encoding unit 112, and an access request receiving unit 113 as functional units realized by the cooperation of the CPU 11 and various programs stored in the ROM 12 or the storage unit 16. A code data reading unit 114.

原稿読取部111は、スキャナ部18を制御し、スキャナ上に置かれた原稿を画像データとして順次読み取る。   The document reading unit 111 controls the scanner unit 18 to sequentially read the document placed on the scanner as image data.

圧縮・符号化部112は、原稿読取部111により読み取られた画像データに対し、JPEG2000で符号化を行うことで、図3に示したデータ構造を有するJPMファイルを生成し、これを記憶部16に記憶させる。なお、本実施形態では、符号化対象となる画像データを、原稿読取部111により読み取られた画像データとしたが、これに限らず、通信I/F部17を介して入力される画像データであっても同様に扱うことが可能である。   The compression / encoding unit 112 generates a JPM file having the data structure shown in FIG. 3 by encoding the image data read by the document reading unit 111 with JPEG 2000, and stores the JPM file in the storage unit 16. Remember me. In the present embodiment, the image data to be encoded is the image data read by the document reading unit 111, but is not limited thereto, and is image data input via the communication I / F unit 17. Even if there is, it can be handled in the same way.

アクセス要求受付部113は、外部装置(ファイル変換装置200等)から送信された各種アクセス要求を通信I/F部17を介して受け付けるとともに、これら各種アクセス要求に応じて符号データ読出部114により後述する送信バッファにコピーされた応答情報を、通信I/F部17を介して送信元の外部装置に送信する。   The access request accepting unit 113 accepts various access requests transmitted from an external device (such as the file conversion device 200) via the communication I / F unit 17, and the code data reading unit 114 responds to these various access requests later. The response information copied to the transmission buffer is transmitted to the transmission source external device via the communication I / F unit 17.

また、アクセス要求受付部113は、送信した内容をRAM13又は記憶部16に確保されたキャッシュ領域(図示せず)に登録する。また、アクセス要求受付部113は、外部装置から受け付けた要求内容とキャッシュ領域に登録された登録内容の重なり度合いを判定し、重なりがない部分を符号データ読出部114に読み出させる。一方、要求内容がキャッシュ領域に登録された範囲内の場合には、既に送信済みである旨の指示情報を送信元の外部装置に送信する。このように、既に送信したデータについては、そのデータの送信を抑止することにより、ネットワーク上での冗長なトラフィックを制限することができる。なお、キャッシュ領域に登録した内容は、所定時間経過後や外部装置との接続断後等所定のタイミングでクリアされることが好ましい。   The access request receiving unit 113 registers the transmitted content in a cache area (not shown) secured in the RAM 13 or the storage unit 16. Further, the access request receiving unit 113 determines the degree of overlap between the request content received from the external device and the registered content registered in the cache area, and causes the code data reading unit 114 to read a portion where there is no overlap. On the other hand, if the requested content is within the range registered in the cache area, the instruction information indicating that the request has already been transmitted is transmitted to the external device as the transmission source. In this way, with respect to data that has already been transmitted, redundant traffic on the network can be limited by inhibiting the transmission of the data. The contents registered in the cache area are preferably cleared at a predetermined timing such as after a predetermined time has elapsed or after disconnecting from the external device.

符号データ読出部114は、アクセス要求受付部113で受け付けられた各種のアクセス要求に応じて、記憶部16に記憶されたJPMファイルから各種の情報を読み出し、これらを応答情報としてRAM13に確保された送信バッファにコピーする。   The code data reading unit 114 reads various information from the JPM file stored in the storage unit 16 in response to the various access requests received by the access request receiving unit 113, and these are secured in the RAM 13 as response information. Copy to send buffer.

具体的に、符号データ読出部114は、アクセス要求受付部113から特定のJPMファイルについてメタデータに関するアクセス要求が入力されると、指定されたJPMファイルからメタデータを読み出し、この要求に対する応答情報として送信バッファにコピーする。   Specifically, when an access request regarding metadata for a specific JPM file is input from the access request receiving unit 113, the code data reading unit 114 reads the metadata from the specified JPM file, and as response information for this request. Copy to send buffer.

また、符号データ読出部114は、アクセス要求受付部113から特定のJPMファイルについてヘッダデータに関するアクセス要求が入力されると、指定されたJPMファイルからヘッダデータを読み出し、この要求に対する応答情報として送信バッファにコピーする。   In addition, when an access request regarding header data is input for a specific JPM file from the access request receiving unit 113, the code data reading unit 114 reads the header data from the designated JPM file, and transmits the transmission data as response information to the request. Copy to.

また、符号データ読出部114は、アクセス要求受付部113からコードストリームに関するアクセス要求が入力されると、要求されたコードストリームをJPMファイルから当該アクセス要求に対する応答情報を読み出し、アクセス要求受付部113に出力する。ここで、コードストリームに関するアクセス要求には、オフセットと長さ又はPlace Holder IDが含まれているものとし、これらの情報に基づいて特定のJPMファイルからコードストリームが読み出されるものとする。   When the access request regarding the code stream is input from the access request receiving unit 113, the code data reading unit 114 reads response information for the access request from the JPM file for the requested code stream, and sends it to the access request receiving unit 113. Output. Here, it is assumed that the access request related to the code stream includes an offset and length or a place holder ID, and the code stream is read from a specific JPM file based on such information.

次に、文書共有サーバ100にアクセスを行うファイル変換装置200について説明する。ファイル変換装置200は、文書共有サーバ100により提供されるJPMファイルの一部又は全てのページを取得し、ローカル上に保持する情報処理装置である。なお、図1に示したブラウジング装置300、印刷装置400については後述する。   Next, the file conversion apparatus 200 that accesses the document sharing server 100 will be described. The file conversion apparatus 200 is an information processing apparatus that acquires some or all pages of a JPM file provided by the document sharing server 100 and holds the pages locally. The browsing device 300 and the printing device 400 shown in FIG. 1 will be described later.

図6は、ファイル変換装置200のハードウェア構成を示した図である。同図に示したように、ファイル変換装置200は、CPU21、ROM22、RAM23、HDD等の記憶部26、外部装置(文書共有サーバ100等)との通信を制御する通信I/F部27、及びこれらを接続するバス28、また場合によってはマウスやキーボード等の入力デバイスから構成される操作部24、液晶モニタ等の表示デバイスから構成される表示部25、通常のコンピュータを利用したハードウェア構成も備えている。ROM22又は記憶部26には、各種プログラムや各種データが記憶される。CPU21は、ROM22や記憶部26に記憶されている各種プログラムをRAM23にロードしてこれを実行することにより、ファイル変換装置200全体を制御し、後述する各種機能を実現させる。   FIG. 6 is a diagram illustrating a hardware configuration of the file conversion apparatus 200. As shown in the figure, the file conversion apparatus 200 includes a CPU 21, a ROM 22, a RAM 23, a storage unit 26 such as an HDD, a communication I / F unit 27 that controls communication with an external device (such as the document sharing server 100), and A bus 28 for connecting them, an operation unit 24 constituted by an input device such as a mouse or a keyboard in some cases, a display unit 25 constituted by a display device such as a liquid crystal monitor, and a hardware configuration using a normal computer I have. Various programs and various data are stored in the ROM 22 or the storage unit 26. The CPU 21 loads the various programs stored in the ROM 22 and the storage unit 26 to the RAM 23 and executes them, thereby controlling the entire file conversion apparatus 200 and realizing various functions to be described later.

次に、図7、図8を参照して、ファイル変換装置200のCPU21が各種プログラムを実行することによりファイル変換装置200において実現される本実施形態に特有の機能について説明する。図7は、ファイル変換装置200の機能的構成を示した図である。ファイル変換装置200は、CPU21とROM22又は記憶部26に記憶された各種プログラムとの協働により実現する機能部として、制御部211と、メタデータアクセス部212と、ヘッダデータアクセス部213と、コードストリームアクセス部214と、コードストリーム格納部215と、オフセット書込部216とを備える。   Next, with reference to FIGS. 7 and 8, functions unique to the present embodiment that are realized in the file conversion apparatus 200 when the CPU 21 of the file conversion apparatus 200 executes various programs will be described. FIG. 7 is a diagram illustrating a functional configuration of the file conversion apparatus 200. The file conversion apparatus 200 includes a control unit 211, a metadata access unit 212, a header data access unit 213, and a code as functional units realized by cooperation of the CPU 21 and various programs stored in the ROM 22 or the storage unit 26. A stream access unit 214, a code stream storage unit 215, and an offset writing unit 216 are provided.

また、図8は、特許請求の範囲に記載の各手段と、上記した各機能部との関係を示した図である。同図に示したように、制御部211が受付手段に対応し、メタデータアクセス部212及びヘッダデータアクセス部213が第1取得手段に対応し、コードストリームアクセス部214が第2取得手段に対応し、コードストリーム格納部215が記憶制御手段に対応し、オフセット書込部216が格納位置更新手段に対応している。また、文書共有サーバ100は外部記憶装置に対応し、RAM13又は記憶部16が記憶手段に対応する。なお、伸長手段は後述する伸長部311に対応し、削除手段は後述するコードストリーム格納部511に対応し、描画装置は表示部25又は印刷装置400に対応する。   FIG. 8 is a diagram showing the relationship between each means described in the claims and each functional unit described above. As shown in the figure, the control unit 211 corresponds to the reception unit, the metadata access unit 212 and the header data access unit 213 correspond to the first acquisition unit, and the code stream access unit 214 corresponds to the second acquisition unit. The code stream storage unit 215 corresponds to the storage control unit, and the offset writing unit 216 corresponds to the storage position update unit. The document sharing server 100 corresponds to an external storage device, and the RAM 13 or the storage unit 16 corresponds to a storage unit. The decompressing unit corresponds to the decompressing unit 311 described later, the deleting unit corresponds to the code stream storage unit 511 described later, and the drawing device corresponds to the display unit 25 or the printing device 400.

制御部211は、ファイル変換装置200全体の動作を統括的に制御する。具体的に、制御部211は、制御部211は、ユーザから操作部24を介して入力される種々の指示情報を受け付け、この指示内容に応じて各部を制御する。また、制御部211は、文書共有サーバ100により提供されるJPMファイルの選択にかかる支援画面(GUI:Graphical User Interface)や、JPMファイル中のページボックスの指定にかかる支援画面等を表示部25に表示する。ここで、JPMファイルの指定は、サーバ名やURI(Uniform Resource Identifier)、ディレクトリパス等により指定されるものとする。   The control unit 211 controls the overall operation of the file conversion apparatus 200. Specifically, the control unit 211 receives various instruction information input from the user via the operation unit 24, and controls each unit according to the content of the instruction. The control unit 211 also displays on the display unit 25 a support screen (GUI: Graphical User Interface) for selecting a JPM file provided by the document sharing server 100, a support screen for specifying a page box in the JPM file, and the like. indicate. Here, the JPM file is specified by a server name, a URI (Uniform Resource Identifier), a directory path, or the like.

メタデータアクセス部212は、通信I/F部27を介し、特定のJPMファイルに含まれたメタデータの読み出しを要求する情報を文書共有サーバ100に送信することで、この要求内容に応じたメタデータを文書共有サーバ100から取得する。また、メタデータアクセス部212は、取得したメタデータをRAM23又は記憶部26に予め用意された所定の領域に格納する。以下、この領域を「メモリエリア」という。   The metadata access unit 212 transmits information requesting reading of metadata included in a specific JPM file to the document sharing server 100 via the communication I / F unit 27, so that the meta data corresponding to the request content is transmitted. Data is acquired from the document sharing server 100. Further, the metadata access unit 212 stores the acquired metadata in a predetermined area prepared in advance in the RAM 23 or the storage unit 26. Hereinafter, this area is referred to as a “memory area”.

ヘッダデータアクセス部213は、通信I/F部27を介し、文書共有サーバ100の記憶部16に記憶された特定のJPMファイルにアクセスすることで、当該JPMファイルからヘッダデータを取得する。ここで、ボックスの指定方法は、文書共有サーバ100におけるJPMファイルの格納位置と、アクセス対象となるボックスのID(例えば、ページボックス1等)を指定する方法と、ファイル上の一意の位置からのオフセット及び長さを指定する方法の何れかにより実現される。また、ヘッダデータアクセス部213は、取得したヘッダデータを、共有元のJPMファイルに応じた構造、即ち、JPEG2000に準じた形式でメモリエリアに格納する。具体的には、既にメモリエリアに格納されたメタデータの後段に格納する。   The header data access unit 213 obtains header data from the JPM file by accessing the specific JPM file stored in the storage unit 16 of the document sharing server 100 via the communication I / F unit 27. Here, the box designation method includes the storage location of the JPM file in the document sharing server 100, the method of designating the ID of the box to be accessed (for example, page box 1), and the unique location on the file. This is realized by any one of the methods for specifying the offset and the length. Further, the header data access unit 213 stores the acquired header data in the memory area in a structure corresponding to the JPM file of the sharing source, that is, in a format according to JPEG2000. Specifically, it is stored in the subsequent stage of the metadata already stored in the memory area.

コードストリームアクセス部214は、通信I/F部27を介し、文書共有サーバ100の記憶部16に記憶された特定のJPMファイルにアクセスすることで、当該JPMファイルからコードストリームを個別に取得する。具体的に、コードストリームアクセス部214は、ヘッダデータアクセス部213により取得されたヘッダデータのページボックスの中で特定のページボックスの指定を受け付けると、このページボックス含まれるオブジェクトボックスに記述されたオフセットと長さからコードストリームを個別に取得する。ここで、コードストリームへのアクセス方法は、特定のページに対応するページボックスのID(例えば、ページボックス1等)を指定する方法と、オフセットと長さを直接指定する方法の何れかにより実現される。   The code stream access unit 214 obtains individual code streams from the JPM file by accessing the specific JPM file stored in the storage unit 16 of the document sharing server 100 via the communication I / F unit 27. Specifically, when the code stream access unit 214 receives the specification of a specific page box in the page box of the header data acquired by the header data access unit 213, the code stream access unit 214 sets the offset described in the object box included in the page box. Get the codestream separately from the length. Here, the method for accessing the code stream is realized by either a method for specifying the ID of a page box (for example, page box 1 or the like) corresponding to a specific page, or a method for directly specifying an offset and a length. The

コードストリーム格納部215は、コードストリームアクセス部214により取得されたコードストリームを、共有元のJPMファイルに応じた構造、即ち、JPEG2000に準じた形式でメモリエリアに格納する。具体的には、既にメモリエリアに格納されたヘッダデータ又はコードストリームの後段に順次格納したり、文書共有サーバに保存されていたのと同じ順番に格納する方法が挙げられる。   The code stream storage unit 215 stores the code stream acquired by the code stream access unit 214 in a memory area in a structure corresponding to the JPM file of the sharing source, that is, in a format according to JPEG2000. Specifically, a method of sequentially storing the header data or code stream already stored in the memory area in the subsequent stage or the same order as stored in the document sharing server can be used.

オフセット書込部216は、コードストリーム格納部215により格納された各コードストリームのメモリエリア上でのオフセットと長さを算出し、メモリエリアに格納された当該各コードストリームと参照関係にあるページボックスに含まれるオブジェクトボックスのオフセットフィールドに夫々上書きする。   The offset writing unit 216 calculates the offset and length of each code stream stored in the code stream storage unit 215 on the memory area, and the page box has a reference relationship with each code stream stored in the memory area. Overwrites the offset field of the object box included in.

具体的に、オフセット書込部216は、メモリエリアに格納されたJPMファイルの先頭アドレスを基準とし、この先頭アドレスから各コードストリームの先頭アドレスまでのオフセットと長さを対応するページボックスに含まれるオブジェクトボックス(図示せず)に上書きする。   Specifically, the offset writing unit 216 uses the start address of the JPM file stored in the memory area as a reference, and the offset and length from this start address to the start address of each code stream are included in the corresponding page box. Overwrite an object box (not shown).

以下、本実施形態にかかるファイル変換装置200の動作について説明する。図9は、文書共有サーバ100とファイル変換装置200とにより実行されるファイル共有処理の手順を示したフローチャートである。ここで、ステップS11〜S22はファイル変換装置200で実行される処理を示しており、ステップS31〜S37は文書共有サーバ100で実行される処理を示している。   Hereinafter, the operation of the file conversion apparatus 200 according to the present embodiment will be described. FIG. 9 is a flowchart showing a procedure of file sharing processing executed by the document sharing server 100 and the file conversion apparatus 200. Here, steps S11 to S22 indicate processing executed by the file conversion apparatus 200, and steps S31 to S37 indicate processing executed by the document sharing server 100.

ファイル変換装置200において制御部211は、文書共有サーバ100により提供されるJPMファイル群から、特定のJPMファイルが操作部24を介して指定されるまで待機を行う(ステップS11;No)。ここで、制御部211が特定のJPMファイルを指定する指示情報を受け付けると(ステップS11;Yes)、メタデータアクセス部212は、ステップS11で指定されたJPMファイルのメタデータへのアクセスを要求する情報を、通信I/F部27を介して文書共有サーバ100に送信する(ステップS12)。   In the file conversion apparatus 200, the control unit 211 stands by until a specific JPM file is designated via the operation unit 24 from the JPM file group provided by the document sharing server 100 (step S11; No). Here, when the control unit 211 receives instruction information for specifying a specific JPM file (step S11; Yes), the metadata access unit 212 requests access to the metadata of the JPM file specified in step S11. Information is transmitted to the document sharing server 100 via the communication I / F unit 27 (step S12).

一方、文書共有サーバ100では、アクセス要求受付部113がクライアントからのアクセスを待機し(ステップS31;No)、アクセスを確認すると(ステップS31;Yes)、クライアントから送信された要求内容がキャッシュ領域に登録された登録内容が含まれるか否かを比較する(ステップS32)。   On the other hand, in the document sharing server 100, the access request receiving unit 113 waits for access from the client (step S31; No), and when the access is confirmed (step S31; Yes), the request content transmitted from the client is stored in the cache area. It is compared whether or not the registered contents are included (step S32).

ステップS32の結果、アクセス要求内容は既にキャッシュされた登録内容に含まれると判定した場合には(ステップS33;No)、既に送信済みの旨の情報をクライアントに送信し(図示せず)、ステップS31に再び戻る。また、ステップS32の結果、アクセス要求受付部113が要求内容にキャッシュ領域に未登録の内容が含まれると判定した場合(ステップS33;Yes)、符号データ読出部114は、クライアントからの要求内容の内、未送信のデータを指定されたJPMファイルから読み出し、応答情報として送信バッファにコピーする(ステップS34)。   If it is determined in step S32 that the access request content is included in the already cached registration content (step S33; No), information indicating that transmission has already been performed is transmitted to the client (not shown). Return to S31 again. As a result of step S32, when the access request receiving unit 113 determines that the request content includes unregistered content in the cache area (step S33; Yes), the code data reading unit 114 displays the request content from the client. Among them, unsent data is read from the designated JPM file and copied to the transmission buffer as response information (step S34).

続いて、アクセス要求受付部113は、ステップS34で送信バッファにコピーされた応答情報を、通信I/F部17を介してファイル変換装置200に送信した後(ステップS35)、この送信が成功したか否かを判定する(ステップS36)。ここで、成功か否の判定は、ファイル変換装置200から送信される受信成功の旨の情報(ACK(ACKnowledgement)等)に基づいて行うものとする。   Subsequently, the access request reception unit 113 transmits the response information copied to the transmission buffer in step S34 to the file conversion apparatus 200 via the communication I / F unit 17 (step S35), and then the transmission is successful. Whether or not (step S36). Here, the determination of success or failure is made based on information (ACK (ACKnowledgement) or the like) indicating successful reception transmitted from the file conversion apparatus 200.

ステップS36において、送信失敗と判定した場合には(ステップS36;No)、ステップS35に再び戻り、送信バッファにコピーされた応答情報を再度送信する。なお、さらに失敗した場合の再送信可能な回数については、特に制限しないものとするが、制限回数に達した場合にはステップS31に再び戻るものとする。   If it is determined in step S36 that transmission has failed (step S36; No), the process returns to step S35, and the response information copied to the transmission buffer is transmitted again. It should be noted that the number of retransmittable times in the case of further failure is not particularly limited. However, when the limit number is reached, the process returns to step S31 again.

また、ステップS36において、送信成功と判定した場合には(ステップS36;Yes)、アクセス要求受付部113は、ステップS35で送信した送信内容をキャッシュ領域に登録し(ステップS37)、ステップS31に再び戻る。ここで、キャッシュ領域に登録された内容は、今後ステップS31で受け付けた要求内容との比較に用いられることになる。   If it is determined in step S36 that the transmission is successful (step S36; Yes), the access request reception unit 113 registers the transmission content transmitted in step S35 in the cache area (step S37), and returns to step S31. Return. Here, the contents registered in the cache area will be used for comparison with the requested contents received in step S31 in the future.

一方、ファイル変換装置200では、メタデータアクセス部212がステップS14で要求したメタデータを文書共有サーバ100から取得すると、このメタデータをメモリエリアに格納する(ステップS13)。   On the other hand, in the file conversion apparatus 200, when the metadata access unit 212 acquires the metadata requested in step S14 from the document sharing server 100, the metadata is stored in the memory area (step S13).

次いで、ヘッダデータアクセス部213は、ステップS11で指定されたJPMファイルのヘッダデータへのアクセスを要求する情報を、通信I/F部27を介して文書共有サーバ100に送信し(ステップS14)、この要求に応じたヘッダデータを文書共有サーバ100から取得すると、このヘッダデータをメモリエリアに格納されたメタデータの後段に格納する(ステップS15)。なお、ヘッダデータの要求に対する文書共有サーバ100での処理は、上述したステップS31〜S37と同様であるため説明は省略する。   Next, the header data access unit 213 transmits information requesting access to the header data of the JPM file designated in step S11 to the document sharing server 100 via the communication I / F unit 27 (step S14). When the header data corresponding to this request is acquired from the document sharing server 100, the header data is stored in the subsequent stage of the metadata stored in the memory area (step S15). Note that the processing in the document sharing server 100 in response to the request for header data is the same as that in steps S31 to S37 described above, and thus description thereof is omitted.

図10は、ステップS15の処理終了時におけるメモリエリアの状態と、文書共有サーバ100でのJPMファイルの状態とを示した図である。ここで、右図が文書共有サーバ100でのJPMファイルの状態(データ構造)、左図がファイル変換装置200のメモリエリアに格納された当該JPMファイルのメタデータ、ヘッダデータの状態を示している。   FIG. 10 is a diagram showing the state of the memory area at the end of the processing in step S15 and the state of the JPM file in the document sharing server 100. Here, the right figure shows the state (data structure) of the JPM file in the document sharing server 100, and the left figure shows the state of the metadata and header data of the JPM file stored in the memory area of the file conversion apparatus 200. .

図10に示したように、ここまでの処理でファイル変換装置200は、JPMファイルのヘッダ部分までの情報を取得したことになる。ヘッダデータに含まれたページボックスから、このJPMファイルのページ構成を把握することができるため、制御部211は、このJPMファイルのページ構成を表示部25に表示するとともに、このページ構成から閲覧対象とするページを指定可能な支援情報をユーザに提供する。   As shown in FIG. 10, the file conversion apparatus 200 has acquired information up to the header portion of the JPM file by the processing so far. Since the page configuration of the JPM file can be grasped from the page box included in the header data, the control unit 211 displays the page configuration of the JPM file on the display unit 25, and from this page configuration, the browsing target Support information that can specify the page to be provided is provided to the user.

図9に戻り、制御部211は、メモリエリアに格納されたヘッダデータに含まれるページコレクションボックス及びページボックスに基づいて、このJPMファイルを構成する全てのページを表示部25に表示し、操作部24を介して特定のページが指定されるまで待機を行う(ステップS16;No)。なお、ステップS16で指定されるページは、1つであってもよいし複数であってもよい。   Returning to FIG. 9, the control unit 211 displays all pages constituting the JPM file on the display unit 25 based on the page collection box and the page box included in the header data stored in the memory area, and the operation unit It waits until a specific page is designated via 24 (step S16; No). Note that the number of pages specified in step S16 may be one or plural.

ステップS16で、制御部211が特定のページを指定する指示情報を受け付けると(ステップS16;Yes)、コードストリームアクセス部214は、ステップS16で指定されたページのうち、1つのページを処理対象に設定する(ステップS17)。   In step S16, when the control unit 211 receives instruction information for designating a specific page (step S16; Yes), the code stream access unit 214 sets one page among the pages designated in step S16 as a processing target. Set (step S17).

次いで、コードストリームアクセス部214は、メモリエリアに格納されたページデータから処理対象のページに対応するページボックスを参照し、当該ページボックスに含まれるオブジェクトボックスに記述されたオフセットが示す位置に格納されたコードストリームへのアクセスを要求する情報を、通信I/F部27を介して文書共有サーバ100に送信する(ステップS18)。   Next, the code stream access unit 214 refers to the page box corresponding to the processing target page from the page data stored in the memory area, and stores the page box at the position indicated by the offset described in the object box included in the page box. Information requesting access to the code stream is transmitted to the document sharing server 100 via the communication I / F unit 27 (step S18).

続いて、コードストリームアクセス部214は、ステップS18でアクセスを要求したコードストリームを文書共有サーバ100から取得すると、このコードストリームをメモリエリアに格納されたコードストリームの後段に格納する(ステップS19)。なお、コードストリームの要求に対する文書共有サーバ100での処理は、上述したステップS31〜S37と同様であるため説明は省略する。   Subsequently, when the code stream access unit 214 acquires the code stream requested to be accessed in step S18 from the document sharing server 100, the code stream access unit 214 stores the code stream in the subsequent stage of the code stream stored in the memory area (step S19). Note that the processing in the document sharing server 100 in response to the request for the code stream is the same as that in steps S31 to S37 described above, and thus description thereof is omitted.

ここで、コードストームの格納位置は、JPEG2000での規定に従うものとするが、直前に格納されたコードストリームの末尾アドレスから連続的に格納する態様としてもよいし、当該末尾アドレスから所定のサイズ分、離した位置に格納する態様としてもよい。なお、コードストリームが格納されていない初期の段階では、ヘッダデータの後段に格納されるものとする。   Here, the code storm storage location conforms to the provisions of JPEG2000. However, the code storm may be stored continuously from the end address of the code stream stored immediately before, or a predetermined size from the end address. It is good also as an aspect stored in the separated position. Note that, in the initial stage where the code stream is not stored, it is stored in the subsequent stage of the header data.

オフセット書込部216は、ステップS13でメモリエリアに格納されたメタデータの先頭アドレスから、ステップS19で格納されたコードストリームの先頭アドレスまでのオフセットと長さを、メモリエリアに格納された当該コードストリームを参照するページボックスのオブジェクトボックス上の該当位置に上書きする(ステップS20)。   The offset writing unit 216 calculates the offset and length from the top address of the metadata stored in the memory area in step S13 to the top address of the code stream stored in step S19, in the code stored in the memory area. The corresponding position on the object box of the page box that refers to the stream is overwritten (step S20).

続いて、コードストリームアクセス部214は、処理対象のページを構成する全てのコードストリームについて、ステップS18〜S20の処理を施したか否かを判定し、未処理のコードストリームが存在すると判定した場合には(ステップS21;No)、ステップS18へ再び戻り、未処理のコードストリームを要求する情報を、通信I/F部27を介して文書共有サーバ100に送信する。   Subsequently, the code stream access unit 214 determines whether or not the processing of steps S18 to S20 has been performed for all the code streams constituting the processing target page, and determines that there is an unprocessed code stream. (Step S21; No), the process returns to Step S18 again, and information requesting an unprocessed code stream is transmitted to the document sharing server 100 via the communication I / F unit 27.

また、ステップS21において、全てのコードストリームについてステップS18〜S20の処理を施したと判定した場合には(ステップS21;Yes)、コードストリームアクセス部214は、さらにステップS16で指定された全てのページを処理対象としたか否かを判定する(ステップS22)。   If it is determined in step S21 that the processing in steps S18 to S20 has been performed for all code streams (step S21; Yes), the code stream access unit 214 further specifies all pages specified in step S16. Is determined as a processing target (step S22).

ステップS22において、未処理のページが存在すると判定した場合には(ステップS22;No)、ステップS17へ再び戻り未処理のページを処理対象に設定する。また、ステップS16で指定された全てのページを処理対象としたと判定した場合には(ステップS22;Yes)、本処理を終了する。   If it is determined in step S22 that an unprocessed page exists (step S22; No), the process returns to step S17 to set the unprocessed page as a processing target. If it is determined that all the pages specified in step S16 are to be processed (step S22; Yes), this process ends.

以下、上記ファイル共有処理の動作を説明する。図11〜13は、メモリエリアに格納されたJPMファイルの状態と、共有元となる文書共有サーバ100でのJPMファイルの状態とを示した図である。ここで、右図が文書共有サーバ100でのJPMファイルの状態(データ構造)を示しており、左図がメモリエリアに格納されたJPMファイルの状態を示している。なお、以下の説明ではステップS16においてユーザから「ページボックス0」及び「ページボックス1」が指定されたものとする。   The operation of the file sharing process will be described below. 11 to 13 are diagrams showing the state of the JPM file stored in the memory area and the state of the JPM file in the document sharing server 100 that is the sharing source. Here, the right figure shows the state (data structure) of the JPM file in the document sharing server 100, and the left figure shows the state of the JPM file stored in the memory area. In the following description, it is assumed that “page box 0” and “page box 1” are designated by the user in step S16.

まず、ステップS18〜S20の最初のループ処理において、コードストリームアクセス部214により「ページボックス0含まれるオブジェクトボックス0」で格納位置が指示された「コードストリーム0」が取得されると、コードストリーム格納部215は、図11に示したように、この「コードストリーム0」をメモリエリアでのヘッダデータの後段に格納する。このとき、オフセット書込部216は、ステップS20において、メタデータの先頭アドレスから「コードストリーム0」の先頭アドレスまでの長さをメモリエリアにおける「コードストリーム0」のオフセット(オフセット0’)として算出し、メモリエリアに格納された当該コードストリームを参照するページボックスのオブジェクトボックス上の該当位置に上書きする。   First, in the first loop processing of steps S18 to S20, when “code stream 0” whose storage position is indicated in “object box 0 included in page box 0” is acquired by code stream access unit 214, code stream storage is performed. As shown in FIG. 11, the unit 215 stores this “code stream 0” in the subsequent stage of the header data in the memory area. At this time, in step S20, the offset writing unit 216 calculates the length from the top address of the metadata to the top address of “code stream 0” as the offset (offset 0 ′) of “code stream 0” in the memory area. Then, the corresponding position on the object box of the page box that refers to the code stream stored in the memory area is overwritten.

次に、ステップS18〜S20の2回目のループ処理において、コードストリームアクセス部214により「ページボックス0に含まれるオブジェクトボックス0」で格納位置が指示された「コードストリーム1」が取得されると、コードストリーム格納部215は、図12に示したように、この「コードストリーム1」をメモリエリアでの「コードストリーム0」の後段に格納する。このとき、オフセット書込部216は、ステップS20において、メタデータの先頭アドレスから「コードストリーム1」の先頭アドレスまでの長さをメモリエリアにおける「コードストリーム1」のオフセット(オフセット1’)として算出し、メモリエリアに格納された当該コードストリームを参照するページボックスのオブジェクトボックス上の該当位置に上書きする。   Next, in the second loop processing of steps S18 to S20, when “code stream 1” whose storage position is indicated in “object box 0 included in page box 0” is acquired by code stream access unit 214, As shown in FIG. 12, the code stream storage unit 215 stores this “code stream 1” in the subsequent stage of “code stream 0” in the memory area. At this time, in step S20, the offset writing unit 216 calculates the length from the top address of the metadata to the top address of “code stream 1” as the offset (offset 1 ′) of “code stream 1” in the memory area. Then, the corresponding position on the object box of the page box that refers to the code stream stored in the memory area is overwritten.

次に、ステップS17〜S22のループ処理において、コードストリームアクセス部214により「ページボックス1に含まれるオブジェクトボックス2」で格納位置が指示された「コードストリーム2」が取得されると、コードストリーム格納部215は、図13に示したように、この「コードストリーム2」をメモリエリアでの「コードストリーム1」の後段に格納する。このとき、オフセット書込部216は、ステップS20において、メタデータの先頭アドレスから「コードストリーム2」の先頭アドレスまでの長さをメモリエリアにおける「コードストリーム2」のオフセット(オフセット2’)として算出し、メモリエリアに格納された当該コードストリームを参照するページボックスのオブジェクトボックスに上書きする。   Next, in the loop processing of steps S17 to S22, when “code stream 2” whose storage position is indicated in “object box 2 included in page box 1” is acquired by code stream access unit 214, code stream storage is performed. As shown in FIG. 13, the unit 215 stores this “code stream 2” in the subsequent stage of “code stream 1” in the memory area. At this time, in step S20, the offset writing unit 216 calculates the length from the top address of the metadata to the top address of “code stream 2” as the offset (offset 2 ′) of “code stream 2” in the memory area. Then, the object box of the page box that references the code stream stored in the memory area is overwritten.

なお、図11〜12では「ページボックス0」、「ページボックス1」の順序でコードストリームを取得した場合を説明したが、「ページボックス1」、「ページボックス0」の順でコードストリームが取得された場合には、「コードストリーム2」、「コードストリーム0」、「コードストリーム1」の順序で文書共有サーバ100から取得されることになる。そのため、図14に示したようにコードストリームの取得順序に応じた順序で、メモリエリアに各コードストリームが格納されることになる。   11 to 12 illustrate the case where the code streams are acquired in the order of “page box 0” and “page box 1”, but the code streams are acquired in the order of “page box 1” and “page box 0”. In such a case, they are acquired from the document sharing server 100 in the order of “code stream 2”, “code stream 0”, and “code stream 1”. Therefore, as shown in FIG. 14, the code streams are stored in the memory area in the order corresponding to the code stream acquisition order.

以上のように、本実施形態によれば、ネットワークN上に存在するJPMファイルから当該JPMファイルの要素となる各コードストリームの格納位置を示したページボックス含まれるオブジェクトボックスを取得し、このオブジェクトボックスに示された格納位置に基づいて、特定の格納位置に格納されたコードストリームのみを取得する。これにより、ネットワークNに流れるデータ量を抑えることができるとともに、JPMファイルの保持にかかるメモリ量も抑えることができるため、効率的にアクセスを行うことができる。また、文書共有サーバ100から取得した各種のデータをJPMファイルに応じた構造でメモリエリアに格納し、ページボックスに含まれるオブジェクトボックスとコードストリームとの参照関係を更新するため、オリジナルのJPMファイルとの互換性を維持することが可能となり、オリジナルのJPMファイルから特定のページ(コードストリーム)のみを抜粋した状態で保持することができる。   As described above, according to the present embodiment, an object box included in a page box indicating the storage position of each codestream that is an element of the JPM file is acquired from the JPM file existing on the network N, and this object box Only the code stream stored in the specific storage location is acquired based on the storage location indicated in (1). As a result, the amount of data flowing through the network N can be reduced, and the amount of memory required to hold the JPM file can also be reduced, so that access can be made efficiently. Further, in order to store various data acquired from the document sharing server 100 in a memory area with a structure corresponding to the JPM file and to update the reference relationship between the object box and the code stream included in the page box, Can be maintained, and only a specific page (code stream) is extracted from the original JPM file.

なお、各コードストリームの位置をファイル上の一意の位置からのオフセットと長さで表す代表的なものとして、JPEG2000 Part6で規定されるJPMファイルを用いて説明したが、同様な仕様を有するファイルであれば他のファイルフォーマットを用いる態様としてもよい。例えば、JPEG2000 Part1ファイル、JPEG2000 Part2ファイル、JPEG2000 Part3ファイル、PDF(Portable Document Format)ファイル、Multi Page Tagged Image File Formatファイル等が挙げられるが、これらはフォーマット上の違いはあっても本質的に複数のコードストリームの位置をファイル上の一意の位置からのオフセットと長さで表すという点において本質的な動作の違いはないため、JPMファイルと同様に取り扱うことができる。   In addition, although it demonstrated using the JPM file prescribed | regulated by JPEG2000 Part6 as a typical thing showing the position of each code stream by the offset and length from the unique position on a file, it is a file with the same specification. If it exists, it is good also as an aspect using another file format. For example, JPEG2000 Part1 file, JPEG2000 Part2 file, JPEG2000 Part3 file, PDF (Portable Document Format) file, Multi Page Tagged Image File Format file, etc. are mentioned. Since the position of the code stream is represented by an offset and a length from a unique position on the file, there is no essential difference in operation, so that the code stream can be handled in the same way as a JPM file.

なお、本実施形態では、ページボックス内のオブジェクトボックスに記述されたオフセットと長さに基づいてコードストリームをアクセスする態様を説明したが、他の方法を用いてコードストリームをアクセスする態様としてもよい。例えば、文書共有サーバ100から、メタデータビン(JPMファイルのトップレベルのボックスの集まり)を送る際にPlace Holder IDを割り当て、このPlace Holder IDに基づいてファイル変換装置200からアクセスする態様としてもよい。この際には、1つのボックスと包含関係にある複数のボックスは、1つのメタデータビンIDで送ることができる。これにより、メタデータビンIDで示すPlace Holderにあたる内容を文書共有サーバ100に要求し、得られたデータをファイル変換装置200のメモリエリアにおけるPlace Holderと同じIDで示された箇所に格納する。なお、詳細についてはJPEG2000Part9のA.3.6.3節にあるため説明は省略する。   In the present embodiment, the mode in which the code stream is accessed based on the offset and the length described in the object box in the page box has been described. However, the mode in which the code stream is accessed using another method may be used. . For example, when sending a metadata bin (a collection of top-level boxes of a JPM file) from the document sharing server 100, a Place Holder ID may be assigned, and access may be made from the file conversion apparatus 200 based on the Place Holder ID. . In this case, a plurality of boxes in an inclusive relationship with one box can be sent with one metadata bin ID. As a result, the content corresponding to the place holder indicated by the metadata bin ID is requested to the document sharing server 100, and the obtained data is stored in the location indicated by the same ID as the place holder in the memory area of the file conversion apparatus 200. For details, please refer to A. of JPEG2000Part9. The explanation is omitted because it is in Section 3.6.3.

また、本実施形態では、コードストリームの位置をファイルの先頭位置からのオフセットと長さで指定する態様としたが、これに限らず、コードストリームボックス名のようにファイル内で一意に定まる名前で指定する態様としてもよい。   In this embodiment, the code stream position is designated by the offset and length from the head position of the file. However, the present invention is not limited to this, and the code stream box name such as a code stream box name is uniquely determined. It is good also as a mode to designate.

また、本実施形態では、同一のJPMファイルから特定の部分符号のみを取得し、新たなJPMファイルを生成する態様を説明したが、これに限らず、複数のJPMファイルの夫々から特定の部分符号のみを取得し、新たなJPMファイルを生成する態様としてもよい。なお、ここで「部分符号」とは、解像度、画質、色成分、領域の単位で分割したコードストリーム内の一部の符号を意味する。   Further, in the present embodiment, the mode in which only specific partial codes are acquired from the same JPM file and a new JPM file is generated has been described. However, the present invention is not limited to this, and specific partial codes are obtained from each of a plurality of JPM files. It is good also as an aspect which acquires only and produces | generates a new JPM file. Here, “partial code” means a part of code in a code stream divided in units of resolution, image quality, color component, and area.

具体的には、操作部24を介して複数のJPMファイルの格納位置が指定されると、メタデータアクセス部212及びヘッダデータアクセス部213は、指定されたJPMファイルの夫々から、管理情報(メタデータ及びヘッダデータ)を取得する。ここで、操作部24を介して指定されるJPMファイルは、自己の装置内に格納されたものであってもよいし、ネットワークNを介して接続される外部装置に格納されたものであってもよい。   Specifically, when storage locations of a plurality of JPM files are specified via the operation unit 24, the metadata access unit 212 and the header data access unit 213 receive management information (metadata) from each of the specified JPM files. Data and header data). Here, the JPM file specified via the operation unit 24 may be stored in its own device or stored in an external device connected via the network N. Also good.

また、この管理情報から各JPMファイルにかかる部分符号が夫々指定されると、コードストリームアクセス部214は、各JPMファイルから指定された部分符号を取得する。この場合、部分符号の格納位置は複数のJPMファイルに及ぶことになるが、上述したオブジェクトボックスでの上書き方法と同様に、自己の装置内における各部分符号の先頭アドレスまでのオフセットと長さを保持する態様としてもよいし、オリジナルのJPMファイルを参照可能な状態で各部分符号の先頭アドレスまでのオフセットと長さを保持する態様としてもよい。以下、図15を参照して、後者の場合のファイル構造について説明する。   Further, when the partial code for each JPM file is designated from the management information, the code stream access unit 214 acquires the designated partial code from each JPM file. In this case, the storage position of the partial code covers a plurality of JPM files. However, as with the overwriting method in the object box described above, the offset and length up to the start address of each partial code in its own device are set. It is good also as a mode to hold | maintain, and it is good also as a mode which hold | maintains the offset and length to the head address of each partial code in the state which can refer to the original JPM file. Hereinafter, the file structure in the latter case will be described with reference to FIG.

図15は、複数のJPMファイル(ファイルX、ファイルY等)を参照する、新たなJPMファイル(以下、参照元JPMファイルという)のファイル構造の一例を模式的に示した図である。同図において、参照元JPMファイルは、メディアデータと、データ参照テーブルと、フラグメントテーブルとから構成される。ここで、メディアデータは、複数のJPMファイル夫々から取得された部分符号群からなるデータである。なお、後述するように各部分符号の格納位置(オフセットと長さ)は、フラグメントテーブルに登録される。   FIG. 15 is a diagram schematically illustrating an example of a file structure of a new JPM file (hereinafter referred to as a reference source JPM file) that refers to a plurality of JPM files (file X, file Y, etc.). In the figure, the reference source JPM file is composed of media data, a data reference table, and a fragment table. Here, the media data is data composed of a partial code group acquired from each of a plurality of JPM files. As will be described later, the storage position (offset and length) of each partial code is registered in the fragment table.

また、データ参照テーブルには、参照元JPMファイルが参照するJPMファイル(ファイルX、ファイルY)の格納位置が登録される。具体的に、このデータ参照テーブルには、操作部24を介して指定されたJPMファイルを格納するサーバ装置のサーバ名やURI(Uniform Resource Identifier)、ディレクトリパス等が登録される。なお、データ参照テーブルの先頭のセルに格納された数値“3”は、当該データ参照テーブルに3個のエントリが存在することを意味している。   In addition, the storage location of the JPM file (file X, file Y) referred to by the reference source JPM file is registered in the data reference table. Specifically, in this data reference table, the server name, URI (Uniform Resource Identifier), directory path, and the like of the server device that stores the JPM file specified via the operation unit 24 are registered. The numerical value “3” stored in the first cell of the data reference table means that there are three entries in the data reference table.

フラグメントテーブルは、上述したページボックスのオブジェクトボックスが参照するデータであって、データ格納のためのフラグメントリストを有している。このフラグメントリストには、ヘッダデータアクセス部213により取得された参照先となる各JPMファイルのヘッダデータのフラグメントテーブルの情報(オフセットと長さ)が登録される。なお、フラグメントリストに登録されるフラグメントテーブルの情報は、データ参照テーブルに登録された当該フラグメントテーブルの情報に対応するJPMファイルの格納位置と関連付けて保持されるものとする。これにより、データ参照テーブル及びフラグメントリストに登録された情報を合わせることで、データ参照テーブルに登録されたJPMファイルの、任意の部分符号を参照することが可能となる。   The fragment table is data referred to by the above-described page box object box, and has a fragment list for storing data. In this fragment list, information (offset and length) of the header table of the header data of each JPM file that is the reference destination acquired by the header data access unit 213 is registered. Note that the fragment table information registered in the fragment list is held in association with the storage location of the JPM file corresponding to the fragment table information registered in the data reference table. Thus, by combining the information registered in the data reference table and the fragment list, it is possible to refer to an arbitrary partial code of the JPM file registered in the data reference table.

ここで、参照元JPMファイル生成の為、コードストリームアクセス部214により参照先の各JPMファイルから取得された部分符号については、これら部分符号のメモリエリア上での格納位置(オフセットと長さ)が、オフセット書込部216により、フラグメンリストの該当する要素に上書きされるものとする。図15の例では、フラグメントリストを構成する左から1、4、5、7番目の要素に、メモリエリア上での部分符号の格納位置が夫々登録されていることを示している。また、ファイルX、ファイルYでの部分符号の格納位置が2番目、3番目の要素に夫々登録されており、ネットワークN上に存在する外部装値(文書共有サーバ100等)が提供するJPMファイル(図示せず)での部分符号の格納位置が6番目の要素に登録されていることを示している。   Here, for generation of the reference source JPM file, the partial code acquired from each JPM file of the reference destination by the code stream access unit 214 has the storage position (offset and length) of these partial codes in the memory area. The offset writing unit 216 overwrites the corresponding element in the fragment list. The example of FIG. 15 indicates that the storage positions of the partial codes on the memory area are registered in the first, fourth, fifth, and seventh elements from the left constituting the fragment list. Also, the storage positions of the partial codes in the file X and the file Y are registered in the second and third elements, respectively, and the JPM file provided by the external device (such as the document sharing server 100) existing on the network N It shows that the storage position of the partial code in (not shown) is registered in the sixth element.

このように、複数のJPMファイルから、所望する部分符号のみを取得し、新たな一のJPMファイル(参照元JPMファイル)を生成することで、参照先となった各JPMファイルを個別に取得する場合と比較し、ネットワークNに流れるデータ量やファイルの保持にかかるメモリ量を抑えることができるため、効率的にアクセスを行うことができる。   In this way, only a desired partial code is acquired from a plurality of JPM files, and a new JPM file (reference source JPM file) is generated, whereby each JPM file that is a reference destination is acquired individually. Compared to the case, the amount of data flowing through the network N and the amount of memory required to hold a file can be suppressed, so that access can be performed efficiently.

なお、参照元JPMファイルのデータ参照テーブルとフラグメントテーブルに基づき、当該参照元JPMファイルが参照するJPMファイルから新たな部分符号が取得された場合には、オフセット書込部216により、この部分符号のメモリエリアでの格納位置がフラグメントテーブル(フラグメントリスト)に上書きされるものとする。また、この例では、データ参照テーブルとフラグメントテーブルとを個別に設けた構成としたが、これに限らず、例えば、両テーブルを一体化した一つのテーブルを用いることとしてもよい。   When a new partial code is acquired from the JPM file referred to by the reference source JPM file based on the data reference table and the fragment table of the reference source JPM file, the offset writing unit 216 calculates the partial code. It is assumed that the storage position in the memory area is overwritten on the fragment table (fragment list). In this example, the data reference table and the fragment table are individually provided. However, the present invention is not limited to this. For example, a single table in which both tables are integrated may be used.

次に、上述した第1の実施形態の変形例として、ファイル変換装置200の構成を適用したJPMファイルの閲覧を行うブラウジング装置300、JPMファイルの印刷を行う印刷装置400について夫々説明する。なお、上述したファイル変換装置200の構成と同様の要素については、同一の符号を付与し説明は省略する。   Next, as a modification of the above-described first embodiment, a browsing device 300 that browses JPM files to which the configuration of the file conversion device 200 is applied and a printing device 400 that prints JPM files will be described. In addition, the same code | symbol is provided about the element similar to the structure of the file converter 200 mentioned above, and description is abbreviate | omitted.

[変形例1]
図16は、本実施形態の変形例1にかかるブラウジング装置300の機能的構成を示した図である。同図に示したように、ブラウジング装置300は、CPU21とROM22又は記憶部26に記憶された各種プログラムとの協働により実現する機能部として、制御部211と、メタデータアクセス部212と、ヘッダデータアクセス部213と、コードストリームアクセス部214と、コードストリーム格納部215と、オフセット書込部216と、伸長手段に対応する伸長部311とを備える。なお、ブラウジング装置300のハードウェア構成はファイル変換装置200と同様であるため説明を省略する。
[Modification 1]
FIG. 16 is a diagram illustrating a functional configuration of the browsing apparatus 300 according to the first modification of the present embodiment. As shown in the figure, the browsing apparatus 300 includes a control unit 211, a metadata access unit 212, a header as functional units realized by the cooperation of the CPU 21 and various programs stored in the ROM 22 or the storage unit 26. A data access unit 213, a code stream access unit 214, a code stream storage unit 215, an offset writing unit 216, and an expansion unit 311 corresponding to an expansion unit. Note that the hardware configuration of the browsing device 300 is the same as that of the file conversion device 200, and thus the description thereof is omitted.

伸長部311は、メモリエリアに格納されたJPMファイルのコードストリームを入力とし、JPEG2000に応じた伸長処理を施すことでビットマップファイルを生成する。   The decompression unit 311 receives the code stream of the JPM file stored in the memory area and generates a bitmap file by performing decompression processing according to JPEG2000.

具体的に、伸長部311は、コードストリームが表す画像を当該コードストリームに対応するページボックスに含まれるレイアウトオブジェクトヘッダデータで規定される縮小率(Scale)まで伸長し、ビットマップ画像を生成する。さらに生成したビットマップ画像を、レイアウトオブジェクトヘッダデータで規定されるレイアウト位置(X,Y)に展開することで、コードストリームに対応する画像をページ領域の規定の位置に配置する。ここで「ページ領域」とは、RAM23又は記憶部26に確保されたJPMファイルの各ページを展開するための領域である。なお、JPEG2000での伸長方法については、公知の技術を用いるものとする。また、本実施形態では、ビットマップ画像を生成する態様としたが、他のフォーマットに準じた画像を生成する態様としてもよい。   Specifically, the decompression unit 311 decompresses the image represented by the code stream to a reduction ratio (Scale) defined by the layout object header data included in the page box corresponding to the code stream, and generates a bitmap image. Further, by expanding the generated bitmap image to the layout position (X, Y) defined by the layout object header data, the image corresponding to the code stream is arranged at a specified position in the page area. Here, the “page area” is an area for expanding each page of the JPM file secured in the RAM 23 or the storage unit 26. Note that a known technique is used for the decompression method in JPEG2000. In the present embodiment, a bitmap image is generated. However, an image according to another format may be generated.

以下、本実施形態の変形例1にかかるブラウジング装置300の動作を説明する。図17は、文書共有サーバ100とブラウジング装置300とにより実行されるファイル共有処理の手順を示したフローチャートである。ここで、ステップS41〜S54はブラウジング装置300で実行される処理を示しており、ステップS61〜S67は文書共有サーバ100で実行される処理を示している。なお、ステップS41〜S50の処理は、上述したステップS11〜S20の処理と同様であるため説明を省略する。また、同図において、ステップS61〜S67の処理は、上述したステップS31〜S37の処理と同様であるため説明を省略する。   Hereinafter, the operation of the browsing apparatus 300 according to the first modification of the present embodiment will be described. FIG. 17 is a flowchart illustrating a procedure of file sharing processing executed by the document sharing server 100 and the browsing apparatus 300. Here, steps S41 to S54 indicate processing executed by the browsing apparatus 300, and steps S61 to S67 indicate processing executed by the document sharing server 100. In addition, since the process of step S41-S50 is the same as the process of step S11-S20 mentioned above, description is abbreviate | omitted. In the figure, the processes in steps S61 to S67 are the same as the processes in steps S31 to S37 described above, and thus the description thereof is omitted.

ステップS51において、伸長部311は、ステップS49、S50でメモリエリアに格納されたコードストリームからビットマップ画像を生成し、ページ領域の規定の位置に配置する(ステップS51)。次いで、制御部211は、ページ領域に配置されたビットマップ画像を表示部25に表示する(ステップS52)。   In step S51, the decompression unit 311 generates a bitmap image from the code stream stored in the memory area in steps S49 and S50, and arranges it at a specified position in the page area (step S51). Next, the control unit 211 displays the bitmap image arranged in the page area on the display unit 25 (step S52).

続いて、コードストリームアクセス部214は、処理対象のページを構成する全てのコードストリームについて、ステップS48〜S52の処理を施したか否かを判定し、未処理のコードストリームが存在すると判定した場合には(ステップS53;No)、ステップS48へ再び戻り、未処理のコードストリームを要求する情報を、通信I/F部27を介して文書共有サーバ100に送信する。   Subsequently, the code stream access unit 214 determines whether or not the processing of steps S48 to S52 has been performed for all the code streams constituting the processing target page, and determines that there is an unprocessed code stream. (Step S53; No), the process returns to Step S48 again, and information requesting an unprocessed code stream is transmitted to the document sharing server 100 via the communication I / F unit 27.

また、ステップS53において、全てのコードストリームについてステップS48〜S52の処理を施したと判定した場合には(ステップS53;Yes)、コードストリームアクセス部214は、さらにステップS46で指定された全てのページを処理対象としたか否かを判定する(ステップS54)。   If it is determined in step S53 that the processing in steps S48 to S52 has been performed for all code streams (step S53; Yes), the code stream access unit 214 further selects all pages specified in step S46. Is determined as a processing target (step S54).

ステップS54において、未処理のページが存在すると判定した場合には(ステップS54;No)、ステップS47へ再び戻り未処理のページを処理対象に設定する。また、ステップS46で指定された全てのページを処理対象としたと判定した場合には(ステップS54;Yes)、本処理を終了する。   If it is determined in step S54 that an unprocessed page exists (step S54; No), the process returns to step S47 and an unprocessed page is set as a processing target. If it is determined that all the pages specified in step S46 are to be processed (step S54; Yes), this process is terminated.

このように、データスストリームがメモリエリアに格納される毎に、当該コードストリームが表すビットマップ画像が順次生成され、表示部25に表示されることになる。これにより、文書共有サーバ100により共有されたJPMファイルのうち、ユーザが所望するページのみをダウンロードし、閲覧することが可能となる。   In this way, every time a data stream is stored in the memory area, a bitmap image represented by the code stream is sequentially generated and displayed on the display unit 25. This makes it possible to download and browse only the pages desired by the user from among the JPM files shared by the document sharing server 100.

なお、本変形例1では、データスストリームがメモリエリアに格納される毎にビットマップ画像を生成する態様としたが、これに限らず、指定された各ページ又は全てのページについて、コードストリームが格納された後にビットマップ画像を生成する態様としてもよい。具体的には、図17のステップS51、S52の処理を、ステップS53の後段又はステップS54の後段で行う構成とすることで実現することができる。   In the first modification, a bitmap image is generated every time a data stream is stored in a memory area. However, the present invention is not limited to this, and a code stream is stored for each specified page or all pages. Alternatively, the bitmap image may be generated after the image processing. Specifically, this can be realized by adopting a configuration in which the processes in steps S51 and S52 in FIG. 17 are performed in the subsequent stage of step S53 or the subsequent stage of step S54.

[変形例2]
図18は、本実施形態の変形例2にかかる印刷装置400のハードウェア構成を示したブロック図である。同図に示したように、印刷装置400は、上述したファイル変換装置200のハードウェア構成に加え、印刷を行う印刷部29を備えている。
[Modification 2]
FIG. 18 is a block diagram illustrating a hardware configuration of a printing apparatus 400 according to the second modification of the present embodiment. As shown in the figure, the printing apparatus 400 includes a printing unit 29 that performs printing in addition to the hardware configuration of the file conversion apparatus 200 described above.

ここで、印刷部29は、レーザプリンタ方式やインクジェット方式等の画像形成手段(図示せず)を備え、後述する印刷制御部411から入力されるCMYKフォーマットの画像データを、印刷用紙等の記録媒体上に印刷する。   Here, the printing unit 29 is provided with image forming means (not shown) such as a laser printer method or an ink jet method, and CMYK format image data input from a print control unit 411 described later is recorded on a recording medium such as printing paper. Print on top.

図19は、印刷装置400の機能的構成を示した図である。同図に示したように、印刷装置400は、CPU21とROM22又は記憶部26に記憶された各種プログラムとの協働により実現される機能部として、制御部211と、メタデータアクセス部212と、ヘッダデータアクセス部213と、コードストリームアクセス部214と、コードストリーム格納部215と、オフセット書込部216と、伸長部311と、印刷制御部411とを備える。   FIG. 19 is a diagram illustrating a functional configuration of the printing apparatus 400. As shown in the figure, the printing apparatus 400 includes a control unit 211, a metadata access unit 212, and functional units realized by the cooperation of the CPU 21 and various programs stored in the ROM 22 or the storage unit 26. A header data access unit 213, a code stream access unit 214, a code stream storage unit 215, an offset writing unit 216, an expansion unit 311, and a print control unit 411 are provided.

印刷制御部411は、伸長部311によりページ領域内に配置されたビットマップ画像からCMYKフォーマットの画像データをページ単位で生成し、印刷部29に出力することでJPMファイルを構成する各ページの印刷を行う。   The print control unit 411 generates image data in CMYK format from the bitmap image arranged in the page area by the decompression unit 311 in units of pages, and outputs the data to the printing unit 29 to print each page constituting the JPM file. I do.

以下、本実施形態の変形例2にかかる印刷装置400の動作を説明する。図20は、文書共有サーバ100と印刷装置400とにより実行されるファイル共有処理の手順を示したフローチャートである。ここで、ステップS71〜S84は印刷装置400で実行される処理を示しており、ステップS91〜S97は文書共有サーバ100で実行される処理を示している。なお、ステップS71〜S80の処理は、上述したステップS11〜S20の処理と同様であるため説明を省略する。また、同図において、ステップS91〜S97の処理は、上述したステップS31〜S37の処理と同様であるため説明を省略する。   Hereinafter, the operation of the printing apparatus 400 according to the second modification of the present embodiment will be described. FIG. 20 is a flowchart illustrating a procedure of file sharing processing executed by the document sharing server 100 and the printing apparatus 400. Here, steps S71 to S84 indicate processing executed by the printing apparatus 400, and steps S91 to S97 indicate processing executed by the document sharing server 100. In addition, since the process of step S71-S80 is the same as the process of step S11-S20 mentioned above, description is abbreviate | omitted. Also, in the same figure, the processing of steps S91 to S97 is the same as the processing of steps S31 to S37 described above, and therefore the description thereof is omitted.

ステップS81において、伸長部311は、ステップS79、S80でメモリエリアに格納されたコードストリームからビットマップ画像を生成し、ページ領域の規定の位置に配置する(ステップS81)。   In step S81, the decompression unit 311 generates a bitmap image from the code stream stored in the memory area in steps S79 and S80, and arranges it at a specified position in the page area (step S81).

続いて、コードストリームアクセス部214は、処理対象のページを構成する全てのコードストリームについて、ステップS78〜S81の処理を施したか否かを判定し、未処理のコードストリームが存在すると判定した場合には(ステップS82;No)、ステップS78へ再び戻り、未処理のコードストリームを要求する情報を、通信I/F部27を介して文書共有サーバ100に送信する。   Subsequently, the code stream access unit 214 determines whether or not the processing of steps S78 to S81 has been performed on all the code streams that constitute the processing target page, and determines that there is an unprocessed code stream. (Step S82; No), the process returns to Step S78 again, and information requesting an unprocessed code stream is transmitted to the document sharing server 100 via the communication I / F unit 27.

また、ステップS82において、全てのコードストリームについてステップS78〜S81の処理を施したと判定した場合には(ステップS82;Yes)、印刷制御部411は、ステップS81でページ領域内に配置されたビットマップ画像からCMYKフォーマットの画像データを生成し、印刷部29に出力することでJPMファイルを構成する1ページ分の印刷を行う(ステップS83)。   If it is determined in step S82 that all the code streams have been processed in steps S78 to S81 (step S82; Yes), the print control unit 411 determines that the bits arranged in the page area in step S81. CMYK format image data is generated from the map image and output to the printing unit 29 to print one page constituting the JPM file (step S83).

続いて、コードストリームアクセス部214は、さらにステップS76で指定された全てのページを処理対象としたか否かを判定する(ステップS84)。ステップS84において、未処理のページが存在すると判定した場合には(ステップS84;No)、ステップS77へ再び戻り未処理のページを処理対象に設定する。また、ステップS76で指定された全てのページを処理対象としたと判定した場合には(ステップS84;Yes)、本処理を終了する。   Subsequently, the code stream access unit 214 further determines whether or not all pages designated in step S76 have been processed (step S84). If it is determined in step S84 that an unprocessed page exists (step S84; No), the process returns to step S77 to set the unprocessed page as a processing target. If it is determined that all pages specified in step S76 are to be processed (step S84; Yes), the process is terminated.

このように、1ページ分のデータスストリームを表す画像がページ領域に配置される毎に、印刷部29によりJPMファイルを構成する1ページ分の印刷が行われることになる。これにより、文書共有サーバ100により提供されたJPMファイルのうち、ユーザが所望するページのみをダウンロードし、印刷することが可能となる。   In this way, every time an image representing a data stream for one page is arranged in the page area, the printing unit 29 prints one page constituting the JPM file. This makes it possible to download and print only the pages desired by the user from among the JPM files provided by the document sharing server 100.

[第2の実施形態]
上述した第1の実施形態では、文書共有サーバ100から取得したJPMファイルのコードストリームを、アクセスした順序でメモリエリアに格納する態様を説明した。第2の実施形態では、共有されたJPMファイルでのコードストリームの格納順序に応じた構成でコードストリームをメモリエリアに格納する態様について説明する。なお、第1の実施形態と同様の構成要素については、同一の符号を付与し説明は省略する。
[Second Embodiment]
In the above-described first embodiment, the mode in which the code stream of the JPM file acquired from the document sharing server 100 is stored in the memory area in the access order has been described. In the second embodiment, a mode will be described in which a code stream is stored in a memory area with a configuration corresponding to the code stream storage order in the shared JPM file. In addition, about the component similar to 1st Embodiment, the same code | symbol is provided and description is abbreviate | omitted.

図21は、本実施形態にかかるファイル変換装置500の機能的構成を示した図である。同図に示したように、ファイル変換装置500は、CPU21とROM22又は記憶部26に記憶された各種プログラムとの協働により実現する機能部として、制御部211と、メタデータアクセス部212と、ヘッダデータアクセス部213と、コードストリームアクセス部214と、コードストリーム格納部511と、オフセット書込部512とを備える。なお、ファイル変換装置500のハードウェア構成はファイル変換装置200と同様であるため説明を省略する。   FIG. 21 is a diagram showing a functional configuration of the file conversion apparatus 500 according to the present embodiment. As shown in the figure, the file conversion apparatus 500 includes a control unit 211, a metadata access unit 212, and a functional unit realized by cooperation of the CPU 21 and various programs stored in the ROM 22 or the storage unit 26. A header data access unit 213, a code stream access unit 214, a code stream storage unit 511, and an offset writing unit 512 are provided. Note that the hardware configuration of the file conversion apparatus 500 is the same as that of the file conversion apparatus 200, and thus the description thereof is omitted.

コードストリーム格納部511は、コードストリームアクセス部214により取得された各コードストリームを、文書共有サーバ100により共有されたJPMファイルでのコードストリームの格納順序に応じた順序でメモリエリアに格納する。   The code stream storage unit 511 stores each code stream acquired by the code stream access unit 214 in the memory area in an order corresponding to the code stream storage order in the JPM file shared by the document sharing server 100.

ここで、元となったJPMファイルでのコードストリームの格納順序に応じた順序でメモリエリアに格納する方法としては、種々の方法を採用することができる。具体的には、コードストリームアクセス部214により取得されたコードストリームのオフセットと長さを、メモリエリアに格納された当該コードストリームに対応するページボックスに含まれるオブジェクトボックスから読み出し、このオフセットと長さに応じたメモリエリアでの格納位置に、取得されたコードストリームを格納することで実現することができる(以下、第1の方法という)。なお、「オフセットと長さに応じたメモリエリアでの格納位置」とは、メモリエリアに格納されたJPMファイルの先頭アドレス、即ち、メタデータの先頭アドレスからこのオフセットだけ離れた位置を意味する。   Here, as a method of storing the code stream in the original JPM file in the memory area in the order corresponding to the code stream storage order, various methods can be adopted. Specifically, the offset and length of the code stream acquired by the code stream access unit 214 are read from the object box included in the page box corresponding to the code stream stored in the memory area, and the offset and length are read. This can be realized by storing the acquired code stream in the storage position in the memory area according to the above (hereinafter referred to as the first method). The “storage position in the memory area according to the offset and length” means a position that is separated from the start address of the JPM file stored in the memory area by the offset from the start address of the metadata.

また、他の方法としては、各ページボックスに含まれるオブジェクトボックスに記述されたオフセットの大小関係に基づいて、メモリエリアにおけるコードストリームの格納位置を決定する態様としてもよい。具体的には、ページボックスに含まれるオブジェクトボックスに書かれた各コードストリームのオフセットは昇順に並んでいるため、コードストリーム全体のうち何番目の順位に位置するものかを判定することができる。つまり、コードストリームの格納時に、当該コードストリームがコードストリーム全体のうち何番目の順位に位置するかを判定し、この順位に応じたメモリエリアでの格納位置にコードストリームを格納すればよい(以下、第2の方法という)。なお、この場合ページボックスに含まれるオブジェクトボックスに記述されたオフセットが示す位置にコードストリームを格納する態様としてもよいし、ヘッダデータ方向に詰めて格納しておき、コードストリームの格納が行われる毎に、その順位に応じて動的に格納位置を移動する態様としてよい。   As another method, the code stream storage position in the memory area may be determined based on the magnitude relationship of the offset described in the object box included in each page box. Specifically, since the offsets of the code streams written in the object box included in the page box are arranged in ascending order, it is possible to determine in what order the code stream is located. That is, when the code stream is stored, it is determined what order the code stream is positioned in the entire code stream, and the code stream is stored in the storage position in the memory area corresponding to the rank (hereinafter referred to as the code stream). The second method). In this case, the code stream may be stored at the position indicated by the offset described in the object box included in the page box. Alternatively, the code stream may be stored in the header data direction and stored every time the code stream is stored. In addition, the storage position may be dynamically moved according to the order.

上記した第1の方法、第2の方法において、ページボックスに含まれるオブジェクトボックスに記述されたオフセットに基づいてコードストリームをメモリエリアに格納する場合、ユーザからJPMファイルを構成する一部のページのみが指定されると、メモリエリアに格納されるコードストリーム間に有効なデータの存在しない空白領域(間隙)が生じることがある。例えば、図3に示したJPMファイルの場合、「ページボックス1」のみが指定された場合であっても、「ページボックス0」用の領域がメモリエリアに確保されることになる。このような場合、文書共有サーバ100から送信されるデータ量は削減することができるが、メモリエリアでのJPMファイルは、実質オリジナルのJPMファイルと同サイズとなる。   When the code stream is stored in the memory area based on the offset described in the object box included in the page box in the first method and the second method described above, only a part of the pages constituting the JPM file from the user Is specified, a blank area (gap) in which valid data does not exist may occur between code streams stored in the memory area. For example, in the case of the JPM file shown in FIG. 3, even if only “page box 1” is designated, an area for “page box 0” is secured in the memory area. In such a case, the amount of data transmitted from the document sharing server 100 can be reduced, but the JPM file in the memory area is substantially the same size as the original JPM file.

そのため、コードストリーム格納部511は、コードストリームアクセス部214により取得される全てのコードストリームをメモリエリアに格納した後、各コードストリームの格納位置をヘッダデータ方向に移動し、有効なデータが存在しない空白領域を詰めることで、コードストリーム間の間隙を削除する削除手段として機能する。これにより、メモリエリアに格納したJPMファイルをコンパクト化することができる。   Therefore, after storing all the code streams acquired by the code stream access unit 214 in the memory area, the code stream storage unit 511 moves the storage position of each code stream in the header data direction, and there is no valid data. By filling the blank area, it functions as a deletion means for deleting the gap between the code streams. Thereby, the JPM file stored in the memory area can be made compact.

オフセット書込部512は、上述したオフセット書込部216と同様の機能を有するとともに、コードストリーム格納部511により、メモリエリアに格納されたコードストリームの格納位置が移動された際には、移動後の各コードストリームのメモリエリア上でのオフセットを夫々算出し、メモリエリアに格納された当該各コードストリームに対応するページボックスに含まれるオブジェクトボックスのオフセット値に夫々上書きする。   The offset writing unit 512 has the same function as the offset writing unit 216 described above. When the code stream storage unit 511 moves the storage position of the code stream stored in the memory area, The offset in the memory area of each code stream is calculated, and the offset value of the object box included in the page box corresponding to each code stream stored in the memory area is overwritten.

以下、本実施形態にかかるファイル変換装置500の動作を説明する。図22は、文書共有サーバ100とファイル変換装置500とにより実行されるファイル共有処理の手順を示したフローチャートである。ここで、ステップS101〜S114はファイル変換装置500で実行される処理を示しており、ステップS121〜S127は文書共有サーバ100で実行される処理を示している。なお、ステップS101〜S108の処理は、上述したステップS11〜S18の処理と同様であるため説明を省略する。また、同図において、ステップS121〜S127の処理は、上述したステップS31〜S37の処理と同様であるため説明を省略する。   Hereinafter, the operation of the file conversion apparatus 500 according to the present embodiment will be described. FIG. 22 is a flowchart showing a procedure of file sharing processing executed by the document sharing server 100 and the file conversion apparatus 500. Here, steps S101 to S114 indicate processing executed by the file conversion apparatus 500, and steps S121 to S127 indicate processing executed by the document sharing server 100. In addition, since the process of step S101-S108 is the same as the process of step S11-S18 mentioned above, description is abbreviate | omitted. In the figure, the processes in steps S121 to S127 are the same as the processes in steps S31 to S37 described above, and thus the description thereof is omitted.

また、本処理では、上述したステップS109において、コードストリーム格納部511は、コードストリームアクセス部214により取得されたコードストリームを、当該コードストリームのオフセットと長さに応じたメモリエリアでの格納位置に格納する(ステップS109)。   In this process, in step S109 described above, the code stream storage unit 511 sets the code stream acquired by the code stream access unit 214 to the storage position in the memory area according to the offset and length of the code stream. Store (step S109).

続いて、オフセット書込部216は、ステップS109でメモリエリアに格納されたメタデータの先頭アドレスから、ステップS19で格納されたコードストリームの先頭アドレスまでのオフセットと長さをメモリエリアに格納された当該コードストリームを参照するページボックスのオブジェクトボックスに上書きする(ステップS110)。なお、ステップS109においてオフセットと長さが示す位置に格納された場合には、本処理を省略してもよい。   Subsequently, the offset writing unit 216 stores the offset and length from the top address of the metadata stored in the memory area in step S109 to the top address of the code stream stored in step S19 in the memory area. The object box of the page box that refers to the code stream is overwritten (step S110). Note that this processing may be omitted when the offset and the length are stored in step S109.

続いて、コードストリームアクセス部214は、処理対象のページを構成する全てのコードストリームについて、ステップS108〜S110の処理を施したか否かを判定し、未処理のコードストリームが存在すると判定した場合には(ステップS111;No)、ステップS108へ再び戻り、未処理のコードストリームを要求する情報を、通信I/F部27を介して文書共有サーバ100に送信する。   Subsequently, the code stream access unit 214 determines whether or not the processing of steps S108 to S110 has been performed on all the code streams that configure the processing target page, and determines that there is an unprocessed code stream. (Step S111; No), the process returns to Step S108 again, and information requesting an unprocessed code stream is transmitted to the document sharing server 100 via the communication I / F unit 27.

また、ステップS111において、全てのコードストリームについてステップS108〜S110の処理を施したと判定した場合には(ステップS111;Yes)、コードストリームアクセス部214は、さらにステップS106で指定された全てのページを処理対象としたか否かを判定する(ステップS112)。   If it is determined in step S111 that the processing in steps S108 to S110 has been performed for all code streams (step S111; Yes), the code stream access unit 214 further specifies all pages specified in step S106. Is determined as a processing target (step S112).

ステップS112において、未処理のページが存在すると判定した場合には(ステップS112;No)、ステップS107へ再び戻り未処理のページを処理対象に設定する。また、ステップS106で指定された全てのページを処理対象としたと判定した場合(ステップS112;Yes)、コードストリーム格納部511は、メモリエリアに格納されたコードストリームをヘッダデータ方向に移動し、コードストリーム間の間隙を削除する(ステップS113)。   If it is determined in step S112 that there is an unprocessed page (step S112; No), the process returns to step S107, and an unprocessed page is set as a processing target. If it is determined that all pages specified in step S106 are to be processed (step S112; Yes), the code stream storage unit 511 moves the code stream stored in the memory area in the header data direction, The gap between code streams is deleted (step S113).

続いて、オフセット書込部512は、ステップS113で移動された各コードストリームのメモリエリア上でのオフセットと長さを夫々算出し、当該メモリエリアに格納された各コードストリームに対応するページボックスに含まれるオブジェクトボックスに夫々上書きした後(ステップS114)、本処理を終了する。   Subsequently, the offset writing unit 512 calculates the offset and length on the memory area of each code stream moved in step S113, and stores it in the page box corresponding to each code stream stored in the memory area. After overwriting each of the included object boxes (step S114), this process is terminated.

以上のように、本実施形態によれば、ネットワークN上に存在するJPMファイルから当該JPMファイルの要素となる各コードストリームの格納位置を示したページボックスに含まれるオブジェクトボックスを取得し、このオブジェクトボックスに示された格納位置に基づいて、特定の格納位置に格納されたコードストリームのみを取得する。これにより、ネットワークNに流れるデータ量を抑えることができるとともに、JPMファイルの保持にかかるメモリ量も抑えることができるため、効率的にアクセスを行うことができる。また、文書共有サーバ100から取得した各種のデータをJPMファイルに応じた構造でメモリエリアに格納し、ページボックスに含まれるオブジェクトボックスとコードストリームとの参照関係を更新するため、オリジナルのJPMファイルとの互換性を維持することが可能となり、オリジナルのJPMファイルから特定のページ(コードストリーム)のみを抜粋した状態で保持することができる。   As described above, according to the present embodiment, the object box included in the page box indicating the storage position of each codestream that is an element of the JPM file is acquired from the JPM file existing on the network N, and this object Based on the storage location indicated in the box, only the code stream stored in the specific storage location is obtained. As a result, the amount of data flowing through the network N can be reduced, and the amount of memory required to hold the JPM file can also be reduced, so that access can be made efficiently. Further, in order to store various data acquired from the document sharing server 100 in a memory area with a structure corresponding to the JPM file and to update the reference relationship between the object box and the code stream included in the page box, Can be maintained, and only a specific page (code stream) is extracted from the original JPM file.

また、オリジナルのJPMファイルでのコードストリームの格納順序に応じた順序で、メモリエリアにコードストリームを格納するため、オリジナルのJPMファイルとの互換性をより高めることができる。   In addition, since the code streams are stored in the memory area in the order corresponding to the code stream storage order in the original JPM file, compatibility with the original JPM file can be further improved.

なお、本実施形態では、コードストリーム間の間隙を削除する態様としたが、これに限らず、間隙を維持した状態でメモリエリアに保持する態様としてもよい。また、本実施形態では、コードストリームアクセス部214により取得された全てのコードストリームについて、元となるJPMファイルでの格納順序に応じた順序でメモリエリアに格納する態様としたが、これに限らず、一部のコードストリームについてのみ適用する態様としてもよい。また、オフセット書込部512を、上述した第1の実施形態の構成に適用する態様としてもよい。   In this embodiment, the gap between the code streams is deleted. However, the present invention is not limited to this, and the gap may be maintained in the memory area. In this embodiment, all code streams acquired by the code stream access unit 214 are stored in the memory area in the order corresponding to the storage order in the original JPM file. However, the present invention is not limited to this. Alternatively, it may be applied to only a part of the code streams. Also, the offset writing unit 512 may be applied to the configuration of the first embodiment described above.

[実施例]
以下、上記第1、第2の実施形態のファイル変換装置(ブラウジング装置)を用いた実施例について説明する。図23は、本実施例で文書共有サーバ100により提供されるJPMファイルの構造を模式的に示した図である。このJPMファイルは、春夏秋冬の四季に応じた4つのページから構成される複合文書である。
[Example]
Hereinafter, examples using the file conversion apparatus (browsing apparatus) of the first and second embodiments will be described. FIG. 23 is a diagram schematically showing the structure of a JPM file provided by the document sharing server 100 in this embodiment. This JPM file is a compound document composed of four pages corresponding to the four seasons of spring, summer, autumn and winter.

図23において、「ヘッダ部」は、図3で示したヘッダ部に対応するものであり、メタデータやページボックス等が含まれている。「文書サムネイル(四季)」は、このJPMファイルの表紙ページに対応するコードストリームであって、表示ページのサムネイル画像を表すものである。「ページサムネイル(春)」、「本文(春)」は夫々、JPMファイルの1つのページの要素となるコードストリームであって、「ページサムネイル(春)」がこのページのサムネイル画像を表し、「本文(春)」がこのページの本文を表している。以下同様に「ページサムネイル(夏)」、「本文(夏)」、「ページサムネイル(秋)」、「本文(秋)」、「ページサムネイル(冬)」、「本文(冬)」の各対も、夫々各ページのサムネイル画像と本部とを表すコードストリームである。   In FIG. 23, a “header part” corresponds to the header part shown in FIG. 3 and includes metadata, a page box, and the like. “Document thumbnail (four seasons)” is a code stream corresponding to the cover page of the JPM file, and represents a thumbnail image of the display page. “Page thumbnail (spring)” and “text (spring)” are code streams that are elements of one page of the JPM file, and “page thumbnail (spring)” represents a thumbnail image of this page. "Text (Spring)" represents the text of this page. Similarly, “page thumbnail (summer)”, “text (summer)”, “page thumbnail (autumn)”, “text (autumn)”, “page thumbnail (winter)”, “text (winter)” Are code streams representing thumbnail images and headquarters of each page.

なお、上記の構成において、「文書サムネイル(四季)」から各ページのページサムネイルを参照することが可能であるものとする。また、各ページサムネイルから当該各ページに対応するヘッダ部内のページボックスを参照することが可能であるものとする。即ち、各ページサムネイルから対応する本文を辿ることが可能であるものとする。   In the above configuration, it is assumed that the page thumbnail of each page can be referred to from “document thumbnail (four seasons)”. Also, it is possible to refer to the page box in the header corresponding to each page from each page thumbnail. That is, it is assumed that the corresponding text can be traced from each page thumbnail.

図24、図25は、ファイル変換装置での操作を説明するための図である。ファイル変換装置では、文書共有サーバ100により共有されるJPMファイルから「ヘッダ部」を取得した後「文書サムネイル(四季)」を取得すると、制御部211の制御により表示部25に「文書サムネイル(四季)」を表示する(図24、左図参照)。次に、操作部24を介しユーザから「文書サムネイル(四季)」が指定されると、ファイル変換装置は「文書サムネイル(四季)」と参照関係にある各ページサムネイルを共有されたJPMファイルから取得し、制御部211の制御により表示部25に一覧表示する(図24、中央図参照)。ここで、操作部24を介しユーザから「ページサムネイル(夏)」が指定されたとすると、ファイル変換装置は共有されたJPMファイルから「ページサムネイル(夏)」と参照関係にある「本文(夏)」を取得し、制御部211の制御により表示部25に表示する(図24、右図参照)。   24 and 25 are diagrams for explaining operations in the file conversion apparatus. In the file conversion apparatus, after acquiring the “header part” from the JPM file shared by the document sharing server 100 and then acquiring “document thumbnail (four seasons)”, the control unit 211 controls the display unit 25 to display “document thumbnail (four seasons)”. ) "Is displayed (see FIG. 24, left diagram). Next, when “document thumbnail (four seasons)” is designated by the user via the operation unit 24, the file conversion apparatus acquires each page thumbnail having a reference relationship with “document thumbnail (four seasons)” from the shared JPM file. Then, a list is displayed on the display unit 25 under the control of the control unit 211 (see FIG. 24, central view). Here, if “page thumbnail (summer)” is designated by the user via the operation unit 24, the file conversion apparatus refers to the “text (summer)” that has a reference relationship with “page thumbnail (summer)” from the shared JPM file. Is displayed on the display unit 25 under the control of the control unit 211 (see FIG. 24, right figure).

上記の操作の後、第1の実施形態にかかるファイル変換装置200のメモリエリアには、文書共有サーバ100から取得されたJPMファイルが図26に示した状態で格納される。即ち、コードストリームが取得された順序でメモリエリアに格納されることになる。なお、各コードストリームが格納された位置に応じて、オフセット書込部216により各ページボックスに含まれるオブジェクトボックスのオフセット値が更新されることは言うまでもない。   After the above operation, the JPM file acquired from the document sharing server 100 is stored in the memory area of the file conversion apparatus 200 according to the first embodiment in the state shown in FIG. That is, the code streams are stored in the memory area in the order in which they are acquired. Needless to say, the offset value of the object box included in each page box is updated by the offset writing unit 216 according to the position where each code stream is stored.

また、「本文(夏)」の表示が閉じられた後、操作部24を介して「ページサムネイル(春)」が選択されると(図25、左図及び中央図参照)、ファイル変換装置は共有されたJPMファイルから「ページサムネイル(春)」と参照関係にある「本文(春)」を取得し、制御部211の制御により表示部25に表示する(図25、右図参照)。   When “page thumbnail (spring)” is selected via the operation unit 24 after the display of “text (summer)” is closed (see FIG. 25, the left diagram and the central diagram), the file conversion apparatus From the shared JPM file, “text (spring)” having a reference relationship with “page thumbnail (spring)” is acquired and displayed on the display unit 25 under the control of the control unit 211 (see the right diagram in FIG. 25).

上記の操作の後、第1の実施形態にかかるファイル変換装置200には、取得されたJPMファイルが図27に示した状態でメモリエリアに格納される。即ち、コードストリームが取得された順序でメモリエリアに格納されることになる。なお、各コードストリームが格納された位置に応じて、オフセット書込部216により各ページボックスに含まれるオブジェクトボックスのオフセット値が更新されることは言うまでもない。   After the above operation, the obtained JPM file is stored in the memory area in the state shown in FIG. 27 in the file conversion apparatus 200 according to the first embodiment. That is, the code streams are stored in the memory area in the order in which they are acquired. Needless to say, the offset value of the object box included in each page box is updated by the offset writing unit 216 according to the position where each code stream is stored.

また、第2の実施形態にかかるファイル変換装置500では、取得されたJPMファイルが図28に示した状態でメモリエリアに格納される。即ち、元となったJPMファイルでのコードストリームの格納順序に応じた構造でメモリエリアに格納されることになる。なお、同図では、コードストリーム間の間隙が削除された後の状態を示している。   In the file conversion apparatus 500 according to the second embodiment, the acquired JPM file is stored in the memory area in the state shown in FIG. That is, the data is stored in the memory area in a structure corresponding to the code stream storage order in the original JPM file. In the figure, the state after the gap between the code streams is deleted is shown.

また、図29に示したように、ヘッダデータの後段に各ページサムネイルが取得された順序で格納され、この後段に元となったJPMファイルでのコードストリームの格納順序に応じた構造で各本文が格納される態様としてもよい。即ち、コードストリーム格納部215の機能とコードストリーム格納部511の機能とを併用する態様としてもよい。この場合、サムネイル画像や本文等のコードストリームが表すデータ種別に応じて使い分けることとしてもよいし、コードストリームのデータサイズや構造化文書の構成等に応じて使い分ける態様としてもよい。   Further, as shown in FIG. 29, the page thumbnails are stored in the order in which the page thumbnails are acquired in the subsequent stage of the header data, and the body texts are structured in accordance with the code stream storage order in the original JPM file in the subsequent stage. May be stored. That is, the function of the code stream storage unit 215 and the function of the code stream storage unit 511 may be used in combination. In this case, it may be properly used according to the data type represented by the code stream such as the thumbnail image or the text, or may be appropriately used according to the data size of the code stream, the structure of the structured document, or the like.

なお、本発明は、上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化することができる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成することができる。例えば、実施の形態に示される全構成要素からいくつかの構成要素を削除してもよい。さらに、異なる実施の形態にわたる構成要素を適宜組み合わせても良い。   Note that the present invention is not limited to the above-described embodiment as it is, and can be embodied by modifying the constituent elements without departing from the scope of the invention in the implementation stage. Moreover, various inventions can be formed by appropriately combining a plurality of constituent elements disclosed in the embodiment. For example, some components may be deleted from all the components shown in the embodiment. Furthermore, constituent elements over different embodiments may be appropriately combined.

例えば、上記各クライアント(実施形態のファイル変換装置200、ブラウジング装置300、印刷装置400、ファイル変換装置500)で実行される文書共有処理にかかるプログラムを、インターネット等のネットワークに接続されたコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより提供するように構成しても良い。また、上記各クライアントで実行される文書共有処理にかかるプログラムを、インターネット等のネットワーク経由で提供または配布するように構成しても良い。   For example, a program related to a document sharing process executed by each client (the file conversion apparatus 200, the browsing apparatus 300, the printing apparatus 400, and the file conversion apparatus 500 of the embodiment) is executed on a computer connected to a network such as the Internet. You may comprise so that it may provide by storing and downloading via a network. Further, the program relating to the document sharing process executed by each client may be provided or distributed via a network such as the Internet.

また、上記各クライアントで実行される文書共有処理にかかるプログラムを、ROM等の記憶媒体に予め組み込んで提供するように構成してもよい。   Further, the program relating to the document sharing process executed by each client may be provided by being incorporated in advance in a storage medium such as a ROM.

以上のように、本発明にかかる情報処理装置、情報処理方法、情報処理プログラム及び記録媒体は、ネットワーク上に共有された構造化文書にアクセスを行う情報処理装置に有用であり、特に、複数ページからなる構造化文書にネットワークを介してアクセスを行う情報処理装置に適している。   As described above, the information processing apparatus, the information processing method, the information processing program, and the recording medium according to the present invention are useful for an information processing apparatus that accesses a structured document shared on a network. It is suitable for an information processing apparatus that accesses a structured document consisting of

文書共有システムの構成を示したブロック図である。It is the block diagram which showed the structure of the document sharing system. 文書共有サーバのハードウェア構成を示したブロック図である。It is the block diagram which showed the hardware constitutions of the document sharing server. JPMファイルのデータ構造を模式的に示した図である。It is the figure which showed the data structure of the JPM file typically. 図3のJPMファイルを説明するための図である。It is a figure for demonstrating the JPM file of FIG. 文書共有サーバの機能的構成を示したブロック図である。It is the block diagram which showed the functional structure of the document sharing server. ファイル変換装置のハードウェア構成を示したブロック図である。It is the block diagram which showed the hardware constitutions of the file conversion apparatus. 第1の実施形態にかかるファイル変換装置の機能的構成を示したブロック図である。It is the block diagram which showed the functional structure of the file conversion apparatus concerning 1st Embodiment. 各手段と各機能部との関係を示した図である。It is the figure which showed the relationship between each means and each function part. 第1の実施形態にかかる文書共有処理の手順を示したフローチャートである。It is the flowchart which showed the procedure of the document sharing process concerning 1st Embodiment. JPMファイルの状態を示した図である。It is the figure which showed the state of the JPM file. JPMファイルの状態を示した図である。It is the figure which showed the state of the JPM file. JPMファイルの状態を示した図である。It is the figure which showed the state of the JPM file. JPMファイルの状態を示した図である。It is the figure which showed the state of the JPM file. JPMファイルの状態を示した図である。It is the figure which showed the state of the JPM file. 複数のJPMファイルを参照する、JPMファイルのファイル構造の一例を模式的に示した図である。It is the figure which showed typically an example of the file structure of a JPM file which refers to a some JPM file. 第1の実施形態の変形例1にかかるブラウジング装置の機能的構成を示したブロック図である。It is the block diagram which showed the functional structure of the browsing apparatus concerning the modification 1 of 1st Embodiment. 第1の実施形態の変形例1に文書共有処理の手順を示したフローチャートである。It is the flowchart which showed the procedure of the document sharing process in the modification 1 of 1st Embodiment. 第1の実施形態の変形例2にかかる印刷装置のハードウェア構成を示したブロック図である。It is the block diagram which showed the hardware constitutions of the printing apparatus concerning the modification 2 of 1st Embodiment. 第1の実施形態の変形例2にかかる印刷装置の機能的構成を示したブロック図である。It is the block diagram which showed the functional structure of the printing apparatus concerning the modification 2 of 1st Embodiment. 第1の実施形態の変形例2に文書共有処理の手順を示したフローチャートである。10 is a flowchart illustrating a procedure of document sharing processing according to a second modification of the first embodiment. 第2の実施形態にかかるファイル変換装置の機能的構成を示したブロック図である。It is the block diagram which showed the functional structure of the file conversion apparatus concerning 2nd Embodiment. 第2の実施形態にかかる文書共有処理の手順を示したフローチャートである。It is the flowchart which showed the procedure of the document sharing process concerning 2nd Embodiment. JPMファイルのデータ構造を模式的に示した図である。It is the figure which showed the data structure of the JPM file typically. ファイル変換装置での操作を説明するための図である。It is a figure for demonstrating operation with a file converter. ファイル変換装置での操作を説明するための図である。It is a figure for demonstrating operation with a file converter. JPMファイルの状態を示した図である。It is the figure which showed the state of the JPM file. JPMファイルの状態を示した図である。It is the figure which showed the state of the JPM file. JPMファイルの状態を示した図である。It is the figure which showed the state of the JPM file. JPMファイルの状態を示した図である。It is the figure which showed the state of the JPM file.

符号の説明Explanation of symbols

100 文書共有サーバ
11 CPU
12 ROM
13 RAM
14 操作部
15 表示部
16 記憶部
17 通信I/F部
18 スキャナ部
19 バス
111 原稿読取部
112 圧縮・符号化部
113 アクセス要求受付部
114 符号データ読出部
200 ファイル変換装置
21 CPU
22 ROM
23 RAM
24 操作部
25 表示部
26 記憶部
27 通信I/F部
28 バス
29 印刷部
211 制御部
212 メタデータアクセス部
213 ヘッダデータアクセス部
214 コードストリームアクセス部
215 コードストリーム格納部
216 オフセット書込部
300 ブラウジング装置
311 伸長部
400 印刷装置
411 印刷制御部
500 ファイル変換装置
511 コードストリーム格納部
512 オフセット書込部
100 document sharing server 11 CPU
12 ROM
13 RAM
DESCRIPTION OF SYMBOLS 14 Operation part 15 Display part 16 Storage part 17 Communication I / F part 18 Scanner part 19 Bus 111 Document reading part 112 Compression / encoding part 113 Access request reception part 114 Code data reading part 200 File conversion apparatus 21 CPU
22 ROM
23 RAM
24 operation unit 25 display unit 26 storage unit 27 communication I / F unit 28 bus 29 printing unit 211 control unit 212 metadata access unit 213 header data access unit 214 code stream access unit 215 code stream storage unit 216 offset writing unit 300 browsing Device 311 Expansion unit 400 Printing device 411 Print control unit 500 File conversion device 511 Code stream storage unit 512 Offset writing unit

Claims (18)

コードストリームと、当該各コードストリームの格納位置を示した管理情報とを少なくとも含み、これらコードストリームと管理情報とが所定の構造で格納された構造化文書を記憶する外部記憶装置にネットワークを介してアクセスを行う情報処理装置において、
前記構造化文書から前記管理情報を取得する第1取得手段と、
前記第1取得手段により取得された管理情報が示す格納位置のうち、取得を行うコードストリームの格納位置の指定を受け付ける受付手段と、
前記指定されたコードストリームの格納位置から前記コードストリームを取得する第2取得手段と、
前記第1取得手段により取得された管理情報と、前記第2取得手段により取得されたコードストリームとを前記構造化文書に応じた構造で記憶手段に格納する記憶制御手段と、
前記記憶手段に格納された各コードストリームに対応する前記記憶手段内の管理情報に、当該各コードストリームの格納位置を上書きする格納位置更新手段と、
を備えたことを特徴とする情報処理装置。
The network includes at least a code stream and management information indicating the storage position of each code stream, and stores the structured document in which the code stream and the management information are stored in a predetermined structure via a network. In an information processing apparatus that performs access,
First acquisition means for acquiring the management information from the structured document;
A receiving unit that receives designation of a storage location of a code stream to be acquired among the storage locations indicated by the management information acquired by the first acquisition unit;
Second acquisition means for acquiring the code stream from the storage location of the specified code stream;
Storage control means for storing the management information acquired by the first acquisition means and the code stream acquired by the second acquisition means in a storage means in a structure corresponding to the structured document;
Storage position update means for overwriting the management information in the storage means corresponding to each code stream stored in the storage means with the storage position of each code stream;
An information processing apparatus comprising:
前記記憶制御手段は、前記第2取得手段により取得されたコードストリームを、前記構造化文書に格納されたコードストリームの格納順序に応じた順序で前記記憶手段に格納することを特徴とする請求項1に記載の情報処理装置。   The storage control unit stores the code stream acquired by the second acquisition unit in the storage unit in an order corresponding to a storage order of the code streams stored in the structured document. The information processing apparatus according to 1. 前記記憶制御手段は、前記第2取得手段により取得されたコードストリームを、当該コードストリームが取得された順序で前記記憶手段に格納することを特徴とする請求項1に記載の情報処理装置。   The information processing apparatus according to claim 1, wherein the storage control unit stores the code stream acquired by the second acquisition unit in the storage unit in an order in which the code stream is acquired. 前記管理情報は、前記構造化文書における一意の位置を起点とし、この起点から前記各コードストリームが格納された位置までのオフセットと長さを、前記格納位置として保持することを特徴とする請求項1に記載の情報処理装置。   The management information has a unique position in the structured document as a starting point, and holds an offset and a length from the starting point to a position where each code stream is stored as the storing position. The information processing apparatus according to 1. 前記第2取得手段は、前記構造化文書の起点から、前記コードストリームの格納位置に応じたオフセット分、離れた位置に格納された前記コードストリームを取得することを特徴とする請求項4に記載の情報処理装置。   The said 2nd acquisition means acquires the said code stream stored in the position according to the offset according to the storage position of the said code stream from the starting point of the said structured document. Information processing device. 前記記憶手段に記憶されたコードストリーム間の間隙を削除する削除手段を更に備え、
前記格納位置更新手段は、前記削除手段により間隙が削除された後の各コードストリームの格納位置を、前記記憶手段に格納された当該各コードストリームに対応する管理情報に上書きすることを特徴とする請求項1又は2に記載の情報処理装置。
A deletion unit that deletes a gap between code streams stored in the storage unit;
The storage position updating means overwrites the management information corresponding to each code stream stored in the storage means with the storage position of each code stream after the gap is deleted by the deleting means. The information processing apparatus according to claim 1 or 2 .
前記記憶手段に格納された各コードストリームを伸長する伸長手段を更に備えたことを特徴とする請求項1に記載の情報処理装置。   2. The information processing apparatus according to claim 1, further comprising decompression means for decompressing each code stream stored in the storage means. 前記受付手段は、前記構造化文書のページ単位で前記コードストリームの格納位置の指定を受け付けることを特徴とする請求項1に記載の情報処理装置。   The information processing apparatus according to claim 1, wherein the reception unit receives designation of a storage location of the code stream in units of pages of the structured document. 前記構造化文書は、ISO15444−1に準拠したファイルであることを特徴とする請求項1に記載の情報処理装置。   The information processing apparatus according to claim 1, wherein the structured document is a file conforming to ISO15444-1. 前記構造化文書は、ISO15444−2に準拠したファイルであることを特徴とする請求項1に記載の情報処理装置。   The information processing apparatus according to claim 1, wherein the structured document is a file conforming to ISO 15444-2. 前記構造化文書は、ISO15444−4に準拠したファイルであることを特徴とする請求項1に記載の情報処理装置。   The information processing apparatus according to claim 1, wherein the structured document is a file conforming to ISO15444-4. 前記構造化文書は、ISO15444−6に準拠したファイルであることを特徴とする請求項1に記載の情報処理装置。   The information processing apparatus according to claim 1, wherein the structured document is a file conforming to ISO15444-6. 前記第1取得手段及び前記第2取得手段は、通信プロトコルとしてISO15444−9で規定されたJPIPを用いることを特徴とする請求項9〜12の何れか一項に記載の情報処理装置。   13. The information processing apparatus according to claim 9, wherein the first acquisition unit and the second acquisition unit use JPIP defined by ISO 15444-9 as a communication protocol. 前記構造化文書は、Portable Documet Formatの仕様に準拠したファイルであることを特徴とする請求項1に記載の情報処理装置。   The information processing apparatus according to claim 1, wherein the structured document is a file that conforms to a specification of a Portable Document Format. 前記構造化文書は、Multi Page Tagged Image Fileの仕様に準拠したファイルであることを特徴とする請求項1に記載の情報処理装置。   The information processing apparatus according to claim 1, wherein the structured document is a file compliant with a specification of a Multi Page Tagged Image File. コードストリームと、当該各コードストリームの格納位置を示した管理情報とを少なくとも含み、これらコードストリームと管理情報とが所定の構造で格納された構造化文書を記憶する外部記憶装置にネットワークを介してアクセスを行う情報処理装置で実行される情報処理方法であって、
第1取得手段が、前記構造化文書から前記管理情報を取得する第1取得ステップと、
受付手段が、前記第1取得ステップで取得された管理情報が示す格納位置のうち、取得を行うコードストリームの格納位置の指定を受け付ける受付ステップと、
第2取得手段が、前記指定されたコードストリームの格納位置から前記コードストリームを取得する第2取得ステップと、
記憶制御手段が、前記第1取得ステップで取得された管理情報と、前記第2取得ステップで取得されたコードストームとを前記構造化文書に応じた構造で記憶手段に格納する記憶制御ステップと、
格納位置更新手段が、前記記憶手段に格納された各コードストリームに対応する前記記憶手段内の管理情報に、当該各コードストリームの格納位置を上書きする格納位置更新ステップと、
を含むことを特徴とする情報処理方法。
The network includes at least a code stream and management information indicating the storage position of each code stream, and stores the structured document in which the code stream and the management information are stored in a predetermined structure via a network. An information processing method executed by an information processing apparatus that performs access,
A first acquisition step in which a first acquisition means acquires the management information from the structured document;
A receiving step for receiving a designation of a storage position of a code stream to be acquired out of the storage positions indicated by the management information acquired in the first acquisition step;
A second obtaining step in which a second obtaining unit obtains the code stream from a storage position of the designated code stream;
A storage control step in which the storage control means stores the management information acquired in the first acquisition step and the code storm acquired in the second acquisition step in the storage means in a structure corresponding to the structured document;
A storage location update step in which the storage location update means overwrites the management information in the storage means corresponding to each code stream stored in the storage means with the storage location of each code stream;
An information processing method comprising:
コードストリームと、当該各コードストリームの格納位置を示した管理情報とを少なくとも含み、これらコードストリームと管理情報とが所定の構造で格納された構造化文書を記憶する外部記憶装置にネットワークを介してアクセスを行うコンピュータを、
前記構造化文書から前記管理情報を取得する第1取得手段と、
前記第1取得手段により取得された管理情報が示す格納位置のうち、取得を行うコードストリームの格納位置の指定を受け付ける受付手段と、
前記指定されたコードストリームの格納位置から前記コードストリームを取得する第2取得手段と、
前記第1取得手段により取得された管理情報と、前記第2取得手段により取得されたコードストームとを前記構造化文書に応じた構造で記憶手段に格納する記憶制御手段と、
前記記憶手段に格納された各コードストリームに対応する前記記憶手段内の管理情報に、当該各コードストリームの格納位置を上書きする格納位置更新手段と、
して機能させることを特徴とする情報処理プログラム。
The network includes at least a code stream and management information indicating the storage position of each code stream, and stores the structured document in which the code stream and the management information are stored in a predetermined structure via a network. The computer to access
First acquisition means for acquiring the management information from the structured document;
A receiving unit that receives designation of a storage location of a code stream to be acquired among the storage locations indicated by the management information acquired by the first acquisition unit;
Second acquisition means for acquiring the code stream from the storage location of the specified code stream;
Storage control means for storing the management information acquired by the first acquisition means and the code storm acquired by the second acquisition means in a storage means in a structure corresponding to the structured document;
Storage position update means for overwriting the management information in the storage means corresponding to each code stream stored in the storage means with the storage position of each code stream;
An information processing program characterized in that it is made to function.
請求項17に記載の情報処理プログラムが記録されていることを特徴とするコンピュータが読み取り可能な記録媒体。   A computer-readable recording medium on which the information processing program according to claim 17 is recorded.
JP2008069152A 2008-03-18 2008-03-18 Information processing apparatus, information processing method, information processing program, and recording medium Expired - Fee Related JP5080325B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2008069152A JP5080325B2 (en) 2008-03-18 2008-03-18 Information processing apparatus, information processing method, information processing program, and recording medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008069152A JP5080325B2 (en) 2008-03-18 2008-03-18 Information processing apparatus, information processing method, information processing program, and recording medium

Publications (2)

Publication Number Publication Date
JP2009223747A JP2009223747A (en) 2009-10-01
JP5080325B2 true JP5080325B2 (en) 2012-11-21

Family

ID=41240430

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008069152A Expired - Fee Related JP5080325B2 (en) 2008-03-18 2008-03-18 Information processing apparatus, information processing method, information processing program, and recording medium

Country Status (1)

Country Link
JP (1) JP5080325B2 (en)

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5762458A (en) * 1980-10-01 1982-04-15 Toshiba Corp Document drawind device
JPH03105560A (en) * 1989-09-20 1991-05-02 Toshiba Corp Document preparing/editing device
JPH05151219A (en) * 1991-11-27 1993-06-18 Sharp Corp Document processor with partial access function
JPH11134341A (en) * 1997-10-24 1999-05-21 Nec Corp System for displaying selection of descriptive information in hyper media description language
US7711834B2 (en) * 2002-12-13 2010-05-04 Ricoh Co., Ltd. Network access to partial document images
US8291315B2 (en) * 2006-02-28 2012-10-16 Ricoh Co., Ltd. Standardized network access to partial document imagery

Also Published As

Publication number Publication date
JP2009223747A (en) 2009-10-01

Similar Documents

Publication Publication Date Title
JP4603947B2 (en) Image communication system, server apparatus and control method therefor, and computer program
US6166826A (en) Printing apparatus, printing method, and printing system
US6708309B1 (en) Method and system for viewing scalable documents
US20050254072A1 (en) Image data processing method, client terminal, image processing program, image data management method and image management system
US20090015864A1 (en) Image-processing apparatus and image-processing method
US20080144076A1 (en) Systems and methods for serving documents from a multifunction peripheral
JP4553385B2 (en) Image processing method and apparatus
US9916117B2 (en) Remote data access for image output apparatus via a control device
KR100893829B1 (en) Object transfer method with format adaptation
US9507796B2 (en) Relay apparatus and image processing device
US20060132820A1 (en) Image processing apparatus configured to obtain electronic data stored in storage by reading image document and method for the same
JP5153277B2 (en) Image processing apparatus, image processing method, and image processing program
JP2009020862A (en) Imaging apparatus, electronic album system, and image storage device
US8482763B2 (en) Method and apparatus for generating a file using address and information tags
JP2008035224A (en) Log information management system, log information management device, log information management method, log information management program, and storage medium
JP5080325B2 (en) Information processing apparatus, information processing method, information processing program, and recording medium
JP2006139632A (en) Image data processing method, image processor, image processing program
JP4434925B2 (en) Information processing method, information processing apparatus, program, and storage medium
JP5089353B2 (en) Program, file management apparatus and file management method
JP2000125062A (en) Data communication system/device, their control method and storage medium
JP5187094B2 (en) Image encoding device
JP2007055133A (en) Image forming device and image forming system
JP2006203317A (en) Document management system, and control method thereof, and storage medium
JP2006050060A (en) Image processing apparatus
JP2005326908A (en) Image data processing method, image processing device, image processing program, image data management method, and image management system

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20100412

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20120720

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120724

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120803

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

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20120830

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20150907

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 5080325

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees