Patent Publication Number: US-7912324-B2

Title: Orderly structured document code transferring method using character and non-character mask blocks

Description:
The present application claims priority to and incorporates by reference the entire contents of Japanese priority document 2005-131203, filed in Japan on Apr. 28, 2005. 
     BACKGROUND OF THE INVENTION 
     1. Field of the Invention 
     The present invention relates to a transferring method, an image processing system and a server system, handling a MRC or JPM structured document code. 
     2. Description of the Related Art 
     According to a method called MRC (mixed raster content), each page of a document including characters and images in a mixed manner is divided into three layers, i.e., foreground (color information of characters); mask (character area information); and background (image information), and each layer is coded. Japanese Patent No. 3275807 and Japanese Laid-open Patent Application No. 2001-223903 disclose related arts. 
     Further, recently, JPEG2000 (IS 15444-6) which is suitable to compress a high-definition image has received much attention, and JPM (JPEG2000 Multi Layer) has been standardized (IS 15444-6) on October 2003. It has been mentioned that JPEG2000 may be selected as a method of coding the foreground, mask and background of the MRC model. JPEG2000 and JPM will now be generally described. 
     Outline of JPEG2000 
       FIG. 1  is a block diagram illustrating a JPEG2000 algorithm. A color image is divided into tiles which do not overlap each other (the number of tile divisions≧1), for each component. Compression/decompression is performed separately for each tile for each component. 
     Compression/coding operation is performed as follows. Data of each tile of each component is transformed from, for example, an RGB space into a YCbCr space by a color space transform/invert transform unit  111 . Then, a two-dimensional wavelet transform/inverse transform unit  112  performs a two-dimensional wavelet transform (forward transform) and spatially divides the thus-obtained data into subbands (frequency bands). 
       FIG. 2  shows a state of the subband divided data when the number of decomposition levels is 3. Two-dimensional wavelet transform is performed on a tile image shown in  FIG. 2(   a ), obtained from the tile dividing from the original image, and thus, subband decomposition is made in the  1 LL,  1 HL,  1 LH and  1 HH subbands as shown in  FIG. 2(   b ). A two-dimensional wavelet transform is then performed on the  1 LL subband coefficients which are a low-frequency component of the decomposition level  1  thereof. As a result, it is decomposed into the  2 LL,  2 HL,  2 LH and  2 HH subbands shown in  FIG. 2(   c ). A two-dimensional wavelet transform is then performed on the  2 LL subband coefficients in the decompression level  2  thereof. As a result, it is decomposed into the  3 LL,  3 HL,  3 LH and  3 HH subbands shown in  FIG. 2(   d ). 
     Returning to  FIG. 1 , in JPEG2000, a lossy wavelet transform called a ‘9×7 transform’ and a lossless wavelet transform called ‘5×3 transform’ are prescribed. When the 9×7 transform is applied, a quantization/inverse quantization unit  113  performs linear quantization on the wavelet coefficients for each subband. Then, the bits to encode are determined in the specified coding order, and the quantization/inverse quantization unit  113  generates a context from the peripheral bits of the target bit. An entropy coding/decoding unit  114  performs entropy coding on the wavelet coefficients from the context and the target bit according to a probability estimation. 
     In further detail, as shown in  FIG. 3 , each subband is divided into rectangular areas that do not overlap each other called precincts. Three rectangular areas spatially coincident among the LH, HL and HH subbands of the common decomposition level are regarded as one precinct. However, for the LL subband, a single rectangular area is regarded as one precinct. Roughly speaking, the precinct indicates a position in the given image. Code blocks are obtained when the precinct is then divided into rectangles, and are units for the entropy coding. According to JPEG2000, entropy coding called MQ coding is performed for each code block of the wavelet coefficients in the order of bit planes (bit plane coding). 
     A tag processing part  115  discards unnecessary entropy code, generates a packet by collecting necessary entropy code, arranges the packets in a predetermined order, and attaches thereto a necessary header. Thus, one code stream (coded data) is produced. 
     The ‘packet’ means one collection of the code of the code blocks included in the precinct. For example, the bit planes of the code of MSB through the third plane of all the code blocks are collected. Then, the packet header is attached thereto. The packet has component, resolution level, precinct and layer attributes. 
     The relationship between the resolution level and the decomposition level is now described for the example of FIG.  2 .  3 LL subband has the resolution level  0 , while  3 HL,  3 LH and  3 HH subbands have the resolution level  1 .  2 HL,  2 LH and  2 HH subbands of the decomposition level  2  have the resolution level  2 ; and  1 HL,  1 LH and  1 HH subbands of the decomposition level  1  has the resolution level  3 . 
     As to the layer, when the packets of the entire precincts (i.e., all the code blocks) are collected, a part of the entire image (for example, the codes of the MSB through the third bit plane of the wavelet coefficients of the entire image) is obtained. This is called a ‘layer’. 
       FIG. 4  shows a general structure of the code stream. Tag information called a main header and a tile-part header are attached to the top of the code stream and the top of partial tile of each tile. Then, subsequent to the tile-part header, the tile&#39;s packet sequence follows (bit stream). Finally, the tag (‘end of code stream’) is attached. 
     Decompression (decoding) processing is performed in a procedure reverse to the above-described coding processing, and, from the code stream of each tile of each component, image data is generated. Briefly describing with reference to  FIG. 1 , the tag information attached to the code stream input externally is interpreted by the tag processing unit  115 . Then the code stream is decomposed into those of the respective tiles for each component. For the code stream of each tile of each component, decoding is performed. A bit position is determined for a target bit to decode in the order according to the tag information included in the code stream. Further, the quantization/inverse quantization unit  113  generates context from the arrangement of the peripheral bits (already decoded) of the target bit. The entropy coding/decoding unit  114  generates the target bit from decoding (MQ decoding) by use of a probability estimation with the use of the context and the code stream. The bit that is generated is written at the corresponding position of the page. The decoded wavelet coefficients that are obtained then undergo, if necessary, inverse quantization by the quantization/inverse quantization unit  113 . After that, the two-dimensional wavelet transform/inverse transform unit  112  performs an inverse wavelet transform, and thus, each tile image of each component is reproduced. The reproduced data is transformed into the original color system of data by use of the color space transform/inverse transform unit  111 . 
     Outline of JPM 
       FIG. 5  illustrates an outline of JPM. A page of a document includes at least one set of a layout object and a base object (background). The base object includes parameter specification, and, ordinarily, a single color or transparent. The layout object includes an image (foreground) and a mask. The image stores ordinary image data. The mask indicates opacity. Ordinarily, the layout object includes sets of images and masks. However, the layout object may be one which includes only either one. When the layout object includes only images, all the masks are regarded as “1”, which means ‘overwriting’. When the layout object includes only marks, the images have values to specify. It is noted that scaling and clipping can be made on either one of image and mask (see  FIG. 7 ). 
       FIG. 6  illustrates an example of page image reproduction of the JPM structured document. In a lower part of  FIG. 6 , arithmetic expressions for image reproduction are shown. 
     First, the base page is PageImge_ 0  (background  0 ). Then, PageImage_ 1  is produced from PageImge_ 0  and Image_ 0  (foreground  0 ) and Mask_ 0  (mask  0 ) of the first layout object. That is, the opacity is 1 at a black pixel position of Mask_ 0 , and Image_ 0  is overwritten on PageImge_ 0 . At a white pixel position of Mask_ 0 , the transparency is 1, and thus, PageImge_ 0  is displayed. Similarly, PageImge_ 2  (background  2 ) is produced from PageImage_ 1  (background  1 ), as well as Image_ 1  (foreground  1 ) and Mask_ 1  (mask  1 ) of the second layout object. Thus, Image_ 1  is overwritten at the black pixel position of Mask_ 1  on PageImage_ 1 , while PageImge_ 1  is displayed at the while pixel position of Mask_ 1 . In this example, PageImage_ 2  is the reproduced image finally displayed. 
     The second expression shown in the lower part of  FIG. 6  is the arithmetic expression for blending background and foreground. Mm and Im denote the mask pixel value in the m-th layout object and the image (foreground) pixel value, respectively. ‘c’ denotes the component. Mask is of a single component. [x,y] denotes the pixel coordinate, and Sm denotes the Mm&#39;s maximum value ((power of 2)−1). ‘n’ denotes the number of layout objects. 
     The above-mentioned second arithmetic expression is further described. In the example of  FIG. 6 , the mask has a binary value (one bit for each pixel). Thus, Sm=2 1 −1=1. Accordingly, when the mask value is 1, the combined image value equals the foreground value. When the mask value is 0, the combined image value equals the background value. That is, either one of the foreground value and the background value is selected by the mask value. However, the mask may have a multilevel value. That is, when each pixel of the mask has an 8-bit positive value (including 0), Sm=2 8 −1=255. Accordingly, in this case, the combined pixel value=((255−mask value)/255)×background value+(mask value/255)×foreground value. Thus, a value obtained from ‘weighted averaging’ of the foreground value and the background value becomes the combined image value. Thus, the mask has a function of controlling a display ratio between the foreground and the background. 
     Next, the mask scaling and clipping are described with reference to  FIG. 7 . A decoded mask (see  FIG. 7(   a )) can be changed in size separately in a vertical direction and in a horizontal direction (see  7 ( b )). When only a part of the mask is used, the part of the mask should be clipped out (see  7 ( c )). Then, the thus-clipped-out part of the mask may be allocated at any position of the page (see  7 ( d )). The mask part may further be subject to clipping after the allocation (see  7 ( e )). Also as to the foreground, the scaling/clipping can be made in the same manner. 
     SUMMARY OF THE INVENTION 
     A structured document code transferring method, image processing system, server apparatus and computer readable information recording medium are described. In one embodiment, a method of transferring code of a structured document comprising background and at least one set of foreground and mask, to an image reproducing unit that reproduces a document image from the structured document code, comprises, for each set of the foreground and the mask, performing a control to give priority to the code of the mask over the code of the foreground. 
     Thus, from a structured document code, including ‘background and at least one set of foreground and mask’ (when only one set of foreground and mask is included, it including ‘background, foreground and mask’), a document image can be reproduced in the above-described procedure. 
    
    
     
       BRIEF DESCRIPTION OF DRAWINGS 
       Other embodiments and further features of the present invention will become more apparent from the following detailed description when read in conjunction with the accompanying drawings: 
         FIG. 1  illustrates a JPEG2000 algorithm; 
         FIG. 2  illustrates a two-dimensional wavelet transform; 
         FIG. 3  illustrates tiles, precincts and code blocks; 
         FIG. 4  illustrates a JPEG2000 code stream; 
         FIG. 5  illustrates an outline of JPM; 
         FIG. 6  illustrates a document image reproducing procedure; 
         FIG. 7  illustrates scaling/clipping of a mask; 
         FIG. 8  shows a block diagram illustrating an image processing system according to the present invention; 
         FIG. 9  shows a block diagram of an image processing system in a server-and-client configuration; 
         FIG. 10  illustrates code transferring according to an embodiment; 
         FIG. 11  shows how an image is seen at a client; 
         FIG. 12  shows a code transferring processing flow chart in two embodiments; 
         FIG. 13  illustrates an example of mask block dividing and a character/non-character block determination process; 
         FIG. 14  shows an order of block-unit code transferring; 
         FIG. 15  shows mask-code transferring processing flow chart in other embodiments; 
         FIG. 16  illustrates code transferring in the embodiments; and 
         FIG. 17  shows a code transferring processing flow chart in an embodiment. 
     
    
    
     DETAILED DESCRIPTION 
     Embodiments of the present invention include a structured document code transferring method, an image processing system and a server apparatus, by which, when a document image is reproduced from such a structured document code, significant information of the document can be obtained efficiently at an earlier stage, and a computer readable information recording medium storing program for achieving the method. 
     According to one embodiment of the present invention, a control is made such that, for each set of foreground and mask, the code of the mask is given priority, over the code of the foreground, upon transferring the structured document code. 
     The present invention may be performed in any one of following modes  1  through  18 . In mode  1 , a method of transferring a code of a structured document including background and at least one set of foreground and mask, to an image reproducing part that reproduces the structured document code into a document image, includes, for each set of foreground and mask, performing control such as to give priority to the code of mask over the code of foreground. 
     In mode  2 , the structured document code transferring method in mode  1  includes performing a control to transfer the structured document code having a single set of foreground and mask, in an order of the mask, the background, and then the foreground. 
     In mode  3 , the structured document code transferring method in mode  1  or  2  includes transferring the code of mask of the structured document, in block units, which correspond to division areas of the mask. 
     In mode  4 , in the structured document code transferring method in mode  3 , the code of mask of the structured document has a divided plurality of tiles of JPEG2000 code, and the tiles correspond to the blocks. 
     In mode  5 , in the structured document code transferring method in mode  3  or  4 , a determination is made as to whether the block of the mask of the structured document corresponds to a character block or a non-character block, and, based on the determination result, a control is performed such that the transfer of the character block is given priority over the transfer of the non-character block. 
     In mode  6 , in the structured document code transferring method in any one of modes  1  through  5 , the image reproducing unit is included in a client apparatus that is connected with a server apparatus via a communication network, and the structured document is transferred from the server apparatus to the client apparatus via the communication network. 
     In mode  7 , an image processing system includes an image reproducing unit reproduces a document image from code of a structured document including a background and at least one set of a foreground and a mask; and a transferring unit transferring the structured document code to the image reproducing unit, wherein: the transferring unit includes an order control unit controlling a transferring order of the structured document code; and the order control part performs a control such as to give priority to the code of mask over the code of foreground. 
     In mode  8 , in the image processing system in mode  7 , the order control unit performs a control such as to transfer the structured document code having a single set of foreground and mask, in an order of the mask, the background, and then the foreground. 
     In mode  9 , in the image processing system in mode  7  or  8 , the order control part performs transferring of the code of mask of the structured document in block units, which correspond to division areas of the mask. 
     In mode  10 , in the image processing system in mode  9 , the code of the mask of the structured document has a divided plurality of tiles of JPEG2000 code, and the tiles correspond to the blocks. 
     In mode  11 , in the image processing system in mode  9  or  10 , the transferring part has a determining unit determining as to whether the block of mask of the structured document corresponds to a character block or a non-character block; and the order control part performs a control such that the transfer of character block is given priority over the transfer of non-character block. 
     In mode  12 , in the image processing system in any one of modes  7  through  11 , the image reproducing unit is included in a client apparatus; the transferring unit is included in a server apparatus connected with the client apparatus via a communication network; and the transferring unit transfers the structured document from the server apparatus to the client apparatus via the communication network. 
     In mode  13 , a server apparatus includes a transferring unit transferring a structured document code, including background and at least one set of foreground and mask, to a client apparatus via a communication network, wherein the transferring unit has an order control unit controlling a transferring order of the structured document code, which performs a control to give priority to the code of the mask over the code of the foreground. 
     In mode  14 , in the server apparatus in mode  13 , the order control unit performs a control to transfer the structured document code having a single set of foreground and mask, in an order of the mask, the background and then the foreground. 
     In mode  15 , in the server apparatus in mode  13  or  14 , the transfer control unit transfers the code of mask of the structured document in block units which correspond to division areas of the mask. 
     In mode  16 , in the server apparatus in mode  15 , the code of mask of the structured document corresponds to a divided plurality of tiles of JPEG2000 code, and the tiles correspond to the blocks. 
     In mode  17 , in the server apparatus in mode  15  or  16 , the transferring unit has a determining unit determining as to whether the block of mask of the structured document corresponds to a character block or a non-character block; and the order control unit performs a control such that the transfer of character block is given priority over the transfer of non-character block. 
     In mode  18 , a computer readable information recording medium storing a program including instructions to cause a computer as the transferring unit in any one of modes  7  through  17 . 
     Ordinarily, in the mask of a structured document, character information that is most significant upon recognizing the contents of the document is included. On the other hand, in the foreground, character color information is included which has relatively low significance. In the background, a picture such as a photograph, which supplements the character information may be included, which is more significant than the character color information, generally speaking. According to one embodiment of the present invention, in the above-mentioned modes  1  through  12 , the mask code of the structured document is transferred with higher priority that that of the background code. Especially, according to one embodiment of the present invention, in the modes  2  through  8 , the code is transferred in the order of the mask, the background and then the foreground. Accordingly, in the transfer destination, the information having higher significance can be reproduced with higher priority, and thus, the contents of the document can be efficiently recognized. 
     When a page size of the document is large, a longer time may be required for a reproduction of the mask information in the transfer destination when the entire mask code is transferred in a lump. In embodiments, in the modes  3  through  5  and the modes  9  through  11 , the mask code is transferred in block units. Accordingly, in the transfer destination, the mask information can be reproduced in sequence in block units. Since a time required for reproducing each block of the mask information is short, the document contents can be recognized earlier. Further, according to embodiments of the present invention, in the modes  4  and  10 , the mask information is mask-divided JPEG2000 code. Accordingly, by extracting the tile parts from the mask code (JPEG2000 code stream) and transferring the same, the above-mentioned block-unit transferring can be easily achieved. Further, according to embodiments of the present invention, in the modes  5  and  11 , the code of character blocks which are those including significant character information of the mask is transferred with higher priority than the code of non-character blocks; the character block information can be thus reproduced earlier in the transfer destination. Accordingly, in comparison to a case where the character blocks/non-character blocks are reproduced without distinguishing therebetween, the document contents can be recognized more efficiently. 
     In embodiments of the present invention in the modes  14  through  17 , the transferring method in embodiments of the present invention of the modes  1  through  7  can be executed, and also, the image processing system in the server-and-client configuration according to embodiments of the present invention in the modes  8  through  11  can be achieved. 
     Further, in the modes  18  and  19 , in embodiments of the present invention in the modes  1  through  6  can be easily achieved with the use of a computer, and also, the image processing system or the server apparatus according to embodiments of the present invention, in the modes  7  through  17  can be easily achieved with the use of a computer. 
       FIG. 8  shows a block diagram illustrating a configuration of an image processing system according to one embodiment of the present invention. This image processing system includes an image reproducing unit  200  performing reproduction of a document image from a structured document code; and a transferring unit  201  transferring the structure document code to the image reproducing part  200  according to the transferring method of the present invention. 
     The transferring unit  201  takes the structured document code stored in a code storage unit  204 , and transfers the same, in this example. However, it is also possible, according to one embodiment of the present invention, that the structured document code is generated from the document code stored in an image storage unit  205  by a coding unit  206 , and then is transferred by the transferring unit  201 . 
     An order control unit  202  is included in the transferring unit  201 , and controls the transferring order of the structured document code. Further, in the above-mentioned modes  5  and  11 , in order to distinguish between character blocks and non-character blocks, a determining unit  203  is also included in the transferring unit  201 . 
     The above-described image processing system may have a configuration in a mode A in which both the image reproducing unit  200  and the transferring unit  201  are included in a single apparatus, or may have a configuration in a mode B in which these two units  200  and  201  are included in physically separate two apparatuses. The latter mode B typically corresponds to a system mode in a server-and-client configuration shown in  FIG. 9 . In this configuration,  300  denotes a client apparatus,  301  denotes a server apparatus, and both apparatuses  300  and  301  are connected via a communication network  302 . The image reproducing unit  200  is included in the client apparatus  300  while the transferring unit  201  is included in the server apparatus  301 , as shown. The transferring unit  201  transfers the structured document code via the communication network  302 . 
     An image processing system in the above-mentioned mode A may be achieved by a program in a common computer including a CPU, a memory, a display device, a communication interface, an input device, a hard disk drive and so forth. That is, at least one program which includes instructions for causing the computer as the image reproducing unit  200  and the transferring unit  201  is stored, for example, in the hard disk drive. Then, when necessary, the program is loaded in the memory, is executed by the CPU, and thus the image processing system is built in the computer. 
     A computer readable information recording medium such as a magnetic disk, a magneto-optical disk, a semiconductor memory device or such storing such a program corresponds to the above-mentioned mode  18  of the present invention. The program thus includes a program causing the computer to act as the transferring unit  201 . 
     Also, the client apparatus  300  and the server apparatus  301  in the mode B may be achieved by programs in common computers, respectively. The program achieving the server apparatus  300  includes a program stored in the computer readable information recording medium of the mode  18  of the present invention, which has instructions causing the computer to act as the transferring unit  201 . 
     Below, the image processing system in the mode B shown in  FIG. 9  is described. However, this is merely for the purpose of convenience of description. The description may also be applied to the image processing system in the mode A. Further the description below corresponds to an embodiment of the structured document code transferring method in the above-mentioned modes  1  through  6 . 
     Embodiment 1 
     In the embodiment 1of the present invention, the code processing unit  201  performs transferring the structured document code including ‘background, mask and foreground’ (i.e., including one set of ‘foreground and mask’. A flow diagram of the transferring processing is shown in  FIG. 11 . Under the control of the order control unit  202 , as shown in  FIG. 10 , the code of the mask is transferred first (step  1 ), then the code of the background is transferred (step  2 ), and finally, the code of the foreground is transferred (step  3 ). 
       FIG. 12  shows one example of a state in which the image reproducing unit  200  of the client apparatus  300  reproduces an image. As shown in  FIG. 12(   a ), first, the mask code is decoded and only the image thereof is displayed. In this example, the mask includes only character information of three characters, i.e., ‘B’, ‘U’ and ‘S’ (‘BUS’), neither foreground nor background has been decoded at this stage, and thus, only the characters ‘BUS’ of a predetermined color are displayed on a white background. In this stage, a user who sees it can recognize that this document relates to a ‘bus’. Subsequently, the code of the background is decoded, and as a result, the image is displayed in which the ‘BUS’ is overwritten on the background (a photograph image of a bus) (see  FIG. 12(   b )). At this stage, the user can recognize that the document has the contents of the photograph of the bus. Finally, the code of the foreground (specifying a color of the characters) is decoded. As a result, the characters ‘BUS’ are painted by the color specified by the foreground (see  FIG. 12(   c ); it is noted that the actual color is not shown in the figure). 
     Thus, a control of code transferring order is made such that transfer of the code of the mask including the character information which is most significant for recognizing the contents of a document is given the highest priority, the code of the background which may frequently include a picture or such supplementing recognition of the characters is transferred next, and finally, the code of the foreground which has color specifying information, which has, generally speaking, the lowest significance, is transferred. As a result, on the client side, the user can easily recognize the contents of the document at the earlier stage of the document image reproduction processing. The example of  FIG. 12  is an example of a combination of the photograph and the caption ‘BUS’ thereof. In a more common document including, as a large part, the contents described by characters, in many cases the user can recognize almost all the contents of the document when only the character description is first displayed. Accordingly, the above-mentioned transferring order control is remarkably advantageous. 
     Embodiment 2 
     In the embodiment 2of the present invention, the same as in the embodiment 1 described above, the transferring unit  201  performs transferring of code of structured document including ‘background, mask and foreground’. First, the code of mask is transferred, the code of background is transferred next, and finally the code of foreground is transferred, the same as in the embodiment 1. Accordingly, an overall flow of the structured document code transferring processing in this embodiment is as shown in  FIG. 11 . 
     However, in the step  1  of  FIG. 11 , the code of mask is transferred in block units. Further, for the blocks of mask, the determining unit  203  determines whether each block is a character block or a non-character block. Then, according to the determination result, the order control unit  202  makes a control of a mask code transferring order such that the character blocks are transferred earlier than the non-character blocks. 
     For example, it is assumed that, the mask is divided into six blocks as shown in  FIG. 13(   a ), and the blocks filled by ‘CH’ in  FIG. 13(   b ), are determined as the character blocks while those filled by ‘NO’ are determined as the non-character blocks. Further, it is assumed that the blocks are previously given the numbers according to the raster order as shown in  FIG. 13(   c ). The blocks of mask determined as the character blocks are first transferred in block units in the ascending order of the above-mentioned rater numbers. After that, the blocks of mask determined as the non-character blocks are transferred in block units in the ascending order of the above-mentioned rater numbers. Accordingly, the images of the characters of mask are first displayed on the client side in sequence as  FIG. 14(   a ), ( b ) and then ( c ). Thus, the contents of the characters can be recognized earlier on the client side. In comparison to a case where the code of the entire mask is transferred in a lump, a transferring time and a decoding time can be effectively reduced when only the code of the character blocks is transferred first separately. Accordingly, the document contents can be recognized at an earlier stage. After the character block images are thus displayed, the non-character block images are then displayed in sequence as  FIG. 14(   d ), ( e ) and then ( f ). 
     In a variant embodiment of the present embodiment 2, without distinguishing the mask blocks into the character blocks or the non character blocks, the mask code is transferred in block units, for example, according to the raster order. In this configuration, on the client side, the mask image can be displayed in sequence in block units. Accordingly, in comparison to the case where the mask code is transferred in a lump and the mask image is displayed after the entire mask code is transferred and decoded, the document contents can be recognized earlier since decoding and displaying can be performed each time when each block is transferred and decoded. 
       FIG. 15  shows a flow chart of the step  1  of  FIG. 11  in the embodiment 2. There, the mask code corresponds to the JPEG2000 code in which tile dividing is made. The tiles are regarded as the blocks, and the character blocks of the mask code are transferred with higher priority than the non-character blocks in block units. 
     First, in the transferring part  201 , the mask code (JPEG2000 code stream) is divided into tile parts (step  11 ). These tile parts correspond to the blocks. It is noted that the headers of the tile parts include information of the tile numbers (i.e., the block numbers). 
     Then, the determining unit  203  determines, for each block (i.e., each tile), whether it corresponds to a character block or a non-character block (step  12 ). There is commonly relationship that, in image information, characters have large edge amounts, and also, as the edge amount included in the block becomes larger, the code amount of the block increases. From this relationship, a method can be taken for the character/non-character-block determination in which, the code amount of each block (tile part) is compared with a predetermined threshold, and, the block having the code amount not less than the threshold is determined as the character block, while the block having the code amount less than the threshold is determined as the non-character block. However, the present invention is not limited to this method. 
     After the determination, the transferring unit  201  performs transferring the mask code in block units. At this time, the order control unit  202  makes a transfer order control such that transferring of the character block code is given higher priority than that of the non-character block code. 
     That is, the order control unit  202  determines, for the block having the smallest number, whether or not it corresponds to a character block (step  13 ). When it does not correspond to a character block, a next block is taken (step  15 ), while, when the same corresponds to a character block, the order control part  202  causes the transferring unit  201  to transfer the block (step  14 ), and then takes a next block (step  15 ). In the same manner, the order control unit  202  makes a control to cause each character blocks to be transferred. Thus, the order control unit  202  makes a control such as to transfer the character blocks in the ascending order. Then, when the last block is processed (yes of step  16 ), step  17  is performed. In step  17 , the order control unit  202  selects the block having the smallest number, and, when the block has been already transferred (yes of step  18 ), a next block is taken (step  20 ). When the selected block has not been transferred yet (no of step  18 ), the block is made to be transferred (step  19 ). Then, a next block is taken (step  20 ). Thus, the order control unit  202  makes a control such as to transfer the non-character blocks in the ascending order. Then, when the final block has been processed (Yes in step  21 ), the transferring processing is finished. 
     When, in order that the client side which has received the code blocks that were transferred can decode the same in block units and arrange the corresponding images of the decoded blocks on a page, the main header information of the mask code (JPEG2000 code stream) should also be transferred to the client side, commonly. For this purpose, for example, the main header may be attached to the character block code (tile parts) of the mask first transferred. However, it is also possible that the main header is separately transferred previously, or any other method may be taken. 
     Further, in the embodiment  2 , JPEG2000 is applied as the mark coding method. However, any other coding method may be applied instead as long as coding/decoding can be made in block units. Further, upon transferring, when the structured document code is generated from a document image, it is also possible that, the mask is first divided into blocks before being coded, and then, the respective blocks are coded separately. This can be said also for an embodiment 4described later. 
     Embodiment 3 
     In the embodiment 3of the present invention, transferring of the code of the structured document including ‘background  0 ; and n sets of foregrounds k and masks k) (where k=0, 1, . . . , n- 1 ) is performed. For each set of foreground and mask, the order control unit  202  makes a transfer order control to transfer the mask code with higher priority than the foreground code. Further, among background  0 , mask  0  and foreground  0 , a transfer order control is made such that the code is transferred in the order of mask  0 , background  0  and then foreground  0 , as shown in  FIG. 16 . 
       FIG. 16  shows the structured document code transferring order and a manner of image production on the client side in the embodiment  3 , diagrammatically. The server side  301  transfers, to the client side  300 , the code in the order of mask  0 , background  0 , foreground  0 , mask  1 , foreground  1 , . . ., mask n- 1  and then foreground n- 1 . The client side  300 , receiving them same, produces background  1  from the combination of background  0 , mask  0  and foreground  0 ; produces background  2  from the combination of thus-produced background  1 , mask  1  and foreground  1 ; . . . , and, through the repetition of the processing, finally, the client side  300  produces background n from the combination of background n- 1 , mask n- 1  and foreground n- 1 . The background n that is produced corresponds to a final reproduced document image. In each step of k=0, 1, 2, . . . , n- 1 , the mask code is transferred with higher priority. Also, the produced image from the combination in each step is displayed, in sequence. Accordingly, in each step, the character information, which is significant information of the document, is displayed with higher priority. Thus, the contents of the document can be easily recognized earlier on the client side  300 . 
       FIG. 17  shows a flow chart of the processing of the transferring unit  201  in the embodiment 3. First, the order control unit  202  sets  0  in ‘k’ , and sets a repeating number of times (i.e., the total number of sets of masks and backgrounds) in ‘n’ (step  31 ). Then, the order control part  202  takes a mask k, and causes the transferring unit  201  to transfer the same to the client side (step  32 ). Then, when k=0 (Yes in step  33 ), background k is taken, and the code thereof is made to be transferred to the client side by the transferring unit  201  (step  34 ). On the other hand, when k≠0 (No in step  33 ), foreground k is taken and is made to be transferred to the client side (step  35 ). Next, k is incremented by 1 (step  36 ), mask k is taken, and is made to be transferred (step  32 ). This process of code transfer in steps  32  through  36  is repeated until k=n (Yes in step  37 ). Thus, the above-described processing is performed. 
     Embodiment 4 
     In the embodiment 4of the present invention, the structured document code transferring processing is performed according to the flow diagram shown in  FIG. 17 . However, in step  32 , the same as in the embodiment 2, the mask code is transferred in block units in such a manner that character blocks of the mask are transferred with higher priority than non-character blocks. Such a processing flow of step  32  may be the same as that of  FIG. 15  described above, and the duplicated description is omitted. However, instead, without distinguishing character/non-character blocks, the mask code may be transferred in the raster order in block units. 
     Further, the present invention is not limited to the above-described embodiments, and variations and modifications may be made without departing from the basic concept of the present invention claimed below.