U.S. patent application number 11/226391 was filed with the patent office on 2006-01-12 for printing apparatus, content outputting apparatus and printing system.
Invention is credited to Kenji Hisatomi.
Application Number | 20060008306 11/226391 |
Document ID | / |
Family ID | 19087907 |
Filed Date | 2006-01-12 |
United States Patent
Application |
20060008306 |
Kind Code |
A1 |
Hisatomi; Kenji |
January 12, 2006 |
Printing apparatus, content outputting apparatus and printing
system
Abstract
When a print instruction is made by a user who is watching a
digital television or the like, a printer makes a send request for
print data necessary for printing the first page to a set top box
(STB) and receives "Sample. bml" from the STB. Next, the printer
refers to the contents written in "Sample. bml", and specifies
image data whose vertical and horizontal sizes are unknown. Next,
the printer makes a send request for the vertical and horizontal
sizes of an image data whose vertical and horizontal sizes are
unknown (such as "B. jpg") to the STB, and receives the vertical
and horizontal sizes from the STB. Further, the printer obtains
actual image data from the STB after performing the layout for
printing based on the received vertical and horizontal sizes and
executes printing page by page.
Inventors: |
Hisatomi; Kenji;
(Neyagawa-shi, JP) |
Correspondence
Address: |
WENDEROTH, LIND & PONACK, L.L.P.
2033 K STREET N. W.
SUITE 800
WASHINGTON
DC
20006-1021
US
|
Family ID: |
19087907 |
Appl. No.: |
11/226391 |
Filed: |
September 15, 2005 |
Related U.S. Patent Documents
|
|
|
|
|
|
Application
Number |
Filing Date |
Patent Number |
|
|
10487275 |
Feb 20, 2004 |
|
|
|
PCT/JP02/08849 |
Aug 30, 2002 |
|
|
|
11226391 |
Sep 15, 2005 |
|
|
|
Current U.S.
Class: |
400/76 ;
348/E5.006; 400/62 |
Current CPC
Class: |
H04N 21/436 20130101;
H04N 21/44004 20130101; H04N 2201/0041 20130101; H04N 1/00291
20130101; H04N 1/00294 20130101; H04N 1/32101 20130101; H04N
2201/0015 20130101; H04N 21/4117 20130101; H04N 2201/33321
20130101; H04N 2201/0049 20130101; H04N 21/443 20130101; H04N
21/8153 20130101; H04N 1/3873 20130101; H04N 2201/0082
20130101 |
Class at
Publication: |
400/076 ;
400/062 |
International
Class: |
B41J 29/38 20060101
B41J029/38 |
Foreign Application Data
Date |
Code |
Application Number |
Aug 30, 2001 |
JP |
2001-260748 |
Claims
1. A printing apparatus for connection to a content storage device
which stores a content including an image, said apparatus
comprising: a data obtainment unit operable to obtain size data, an
image file and control data, from the content storage device, the
size data being in the image file which includes (a) image data for
representing the image and (b) the size data indicating a size of
the image, and the control data defining information concerning a
layout of the image; a layout unit operable to perform the layout
of the image for printing, based on the obtained size data and the
obtained control data; and a printing unit operable to print the
image based on the obtained image data and the layout.
2. The printing apparatus according to claim 1, further comprising
a data request unit operable to request the content storage device
for the size data, the image file and the control data, wherein
said data obtainment unit is operable to obtain, from the content
storage device, the size data, the image file and the control data
which have been requested by said data request unit.
3. The printing apparatus according to claim 1, further comprising
a determination unit operable to determine whether or not the
obtained control data includes layout size information indicating
the size of the image in printing layout, wherein said layout unit
is operable to perform the layout based on the result of the
determination by said determination unit.
4. The printing apparatus according to claim 3, wherein said layout
unit is operable to perform the layout based on the size data in
the case where said determination unit determines that the layout
size information is not included in the control data.
5. The printing apparatus according to claim 3, further comprising
a size request unit operable to request the content storage device
to send one of the size data and the image file in the case where
said determination unit determines that the layout size information
is not included in the control data, wherein said data obtainment
unit is operable to obtain, from the content storage device, one of
the size data and the image file which has been requested by said
size request unit.
6. The printing apparatus according to claim 5, wherein said data
obtainment unit is operable to obtain one of the size data and the
image file, after the request and before said printing unit prints
a page on which the image is printed.
7. The printing apparatus according to claim 1, wherein the content
storage device is one of a television for digital broadcasting and
a set top box for digital broadcasting.
8. The printing apparatus according to claim 1, wherein said
control data is described in a markup language.
9. The printing apparatus according to claim 1, wherein said
control data is described in XHTM.
10. The printing apparatus according to claim 1, wherein the size
data is described in a header of the image file.
11. A printing method for a printing apparatus for connection to a
content storage device which stores a content including an image,
said method comprising: obtaining size data, an image file and
control data, from the content storage device, the size data being
in the image file which includes (a) image data for representing
the image and (b) the size data indicating the size of the image,
and the control data defining information concerning a layout of
the image; performing the layout of the image for printing, based
on the obtained size data and the obtained control data; and
printing the image based on the obtained image data and the layout.
Description
[0001] This application is a divisional of U.S. application Ser.
No. 10/487,275, filed Feb. 20, 2004, which is a national stage
application of International application No. PCT/JP02/008849, filed
Aug. 30, 2002, now pending.
TECHNICAL FIELD
[0002] This present invention relates to an apparatus and the like
for printing documents and images, especially a printing technology
and a printing method used when printing documents and images
displayed on a digital television and the like.
BACKGROUND ART
[0003] Conventionally, when printing data to be printed (means
"print data" from here) showing a document to be printed (such as
an Extensible Markup Language (XML) document that contains an
image) using a printer connected to a personal computer
(abbreviated as "PC" from here), printing is performed by
representing print data using a control language (such as Page
Description Language) for a PC, then transforming it to an object
image (abbreviated as "OI" from here) with the descriptions of the
image data, further transforming the transformed OI to a print
image data, and processing the print image data using a
printer.
[0004] FIG. 1 is a diagram showing the process of making the print
image data from a file represented using a control language in the
case of the above-mentioned conventional printing. As shown in FIG.
1, first, a file to which information on a page written in a
control language is added for all the print data, next, page by
page data necessary for printing in the file is sent. The printer
prints based on the received data. In this case, all the data of
text data, image data and the like in the document are written in a
control language.
[0005] Conventional printers are made without considering the case
where printing is performed by connecting to a device (such as a
set top box (STB) of a digital television) that does not have the
function for transforming print data to a file written in a control
language unlike a PC while they have the function for receiving
data sent from outside. More specifically, a screen display of a
digital broadcasting program displayed on a digital television
screen comprises a plurality of files, that is, a BML file contains
the component information of the screen display, a JPEG (Joint
Photographic Experts Group being an image compression standard)
file and an AAC (Advanced Audio Coding being an audio compression
standard) file which are components of a display screen and the
like, which means that a printer must receive data (such as a BML
file or a JPEG file) that is sent from an STB and the like as it is
before transforming the data to a file written in a control
language, and perform transformation processing that is performed
conventionally by a PC when performing printing by connecting a
printer to a device such as this distal television. Therefore, the
processing load necessary for such a transformation processing in
the printer increases and the required memory capacity at the time
of printing also increases, which results in a drawback of high
cost and the like.
[0006] Therefore, this present invention is made considering the
above-mentioned problems and its aim is providing a printing
apparatus, a content output apparatus and a printing system
operable to transform a BML file, a JPEG file or the like into a
file written in a control language while the processing is
conventionally performed by a PC, and further, transform the file
written in a control language into an OI more efficiently while the
processing is conventionally performed by a printer using a smaller
memory capacity.
SUMMARY OF THE INVENTION
[0007] In order to achieve the above-mentioned aim, the printing
apparatus in the present invention is connectable to a content
storage device that stores contents containing an image, and
comprises a data obtainment unit operable to obtain a part or all
of the contents, a size extraction unit operable to extract the
vertical and horizontal sizes of an image from the obtained data, a
layout unit operable to lay out the image for printing using the
extracted vertical and horizontal sizes of the image, an image
obtainment unit operable to request the content storage apparatus
for the image data and obtain the image data based on the layout,
and a printing unit operable to generate and print out a print
image data based on the obtained image data and layout.
[0008] FIG. 2 is a diagram showing the process from representing
the print data printed by the printing apparatus in the present
invention in a control language to making an OI. As shown in FIG.
2, when it is compared with the above-mentioned FIG. 1, it is
possible to save the memory capacity in the printer because a file
in which image data is stored is written as link information in the
file written in a control language. In this case, if a need arises,
the image data is decompressed based on the link information and
the vertical and horizontal sizes of the image.
[0009] In this way, as an OI of image data is made by a direct
access to the image data as a need arises, it is not necessary to
write the data corresponding to the image data in the file written
in a control language, and thus it becomes possible to prevent
doubly storing the received image data and the after-transformation
data written in a control language. Also, it is possible to perform
printing processing efficiently using the memory of the printer
without putting a heavy load on an STB.
[0010] Note that, the present invention is realized not only as the
above-mentioned printing apparatus, but also as a printing method
regarding the unique units of the above-mentioned printing
apparatuses as steps or as a program operable to have a computer
such as a PC execute these steps. It is needless to say that it is
possible to distribute such a program using a storage medium such
as a CD-ROM or via a communication medium such as the Internet.
Further Information about Technical Background to this
Application
[0011] Japanese Patent application No. 2001-260748 filed Aug. 30,
2001, is incorporated herein by reference.
BRIEF DESCRIPTION OF DRAWINGS
[0012] These and other objects, advantages and features of the
invention will become apparent from the following description
thereof taken in conjunction with the accompanying drawings that
illustrate specific embodiments of the invention. In the
Drawings:
[0013] FIG. 1 is a diagram showing the process in which a file
represented using a control language is transformed to print image
data in conventional printing.
[0014] FIG. 2 is a diagram showing the process in which a file
represented using a control language is transformed to print image
data in printing in a first embodiment.
[0015] FIG. 3 is a block diagram showing the functional structure
of an STB and a printer which comprise the printing system in the
first embodiment.
[0016] FIG. 4 is a communication sequence diagram showing the data
communication between the STB and the printer in the first
embodiment.
[0017] FIG. 5 is a flow chart showing the processing flow of the
printer in the first embodiment.
[0018] FIG. 6 is a diagram showing the print image using the print
data in the first embodiment.
[0019] FIG. 7 is a diagram showing the group of object images
necessary for all pages when printing using the print data in the
first embodiment.
[0020] FIG. 8 is a diagram showing an example of structure
information data for respective print data files in the first
embodiment.
[0021] FIG. 9 is a block diagram showing an example of structure
information data concerning the print data for respective pages in
the first embodiment.
[0022] FIG. 10 is a diagram showing an example of each buffer
capacity in the storage unit of the printer in the first
embodiment.
[0023] FIG. 11 is a communication sequence diagram showing the data
communication between an STB and a printer in a second
embodiment.
[0024] FIG. 12 is a flow chart showing the processing flow of the
printer in a second embodiment.
[0025] FIG. 13 is a communication sequence diagram showing the data
communication between an STB and a printer in a third
embodiment.
[0026] FIG. 14 is a flow chart showing the processing flow of the
printer in the third embodiment.
[0027] FIG. 15 is a block diagram showing the functional structure
of a server, an STB and a printer comprising the printing system in
a fourth embodiment.
[0028] FIG. 16 is a communication sequence diagram showing the data
communication among the server, the STB and the printer in the
fourth embodiment.
[0029] FIG. 17 is a flow chart showing the processing flow of the
printer in the fourth embodiment.
BEST MODE FOR CARRYING OUT THE INVENTION
[0030] Further explanations on embodiments in the present invention
will be made below with reference to figures.
First Embodiment
[0031] FIG. 3 is a diagram showing the functional structures of an
STB 100 and a printer 200 which comprise the printing system 10 in
this embodiment.
[0032] The STB 100 is a tuner terminal of a digital television
broadcasting, and it comprises a communication I/F unit 101
operable to input and output data when communicating with a printer
200, an HDD 102 operable to store program contents of digital
television broadcasting and the like, the first memory 103 operable
to store the data of a program on air or before broadcasting (more
specifically, before displaying the data on the screen display of a
digital television and the like), the second memory 104 operable to
save the data stored in this first memory 103, a controller unit
105 operable to control the above-mentioned respective units and so
on. Further, each unit of the STB 100 is connected to each other by
an I/O bus 109.
[0033] The reason why the STB 100 comprises the second memory 104
is as follows: for example, in the case of digital television
broadcasting, as the data of a program that is already broadcast is
usually stored only in the first memory 103 in the STB 100, the
data is deleted when switching programs or the program finishes
unless an explicit store instruction is made by a user. Besides, if
it receives a print instruction from a user during the on-air time,
in the case that the program is switched or finished before its
printing completes, the data expected to be printed is deleted in
the first memory 103 of the STB 100 and thus there emerges a
problem that it is impossible to complete printing. In order to
solve this problem, the second memory 104 is prepared so as to save
the data necessary expected to be printed unless there is an
explicit delete instruction or the like. Of course, when the data
for printing exists in the first memory 103, it is also possible to
send the data from the first memory 103 to the printer 200. In
other words, any one of an HDD 102 in the STB 100, a printer 200,
an external storage medium connected to the STB 100 and the like is
available when saving the above-mentioned data, and it is also
possible to send from the first memory 103 when the necessary print
data can be stored in the first memory 103 without the second
memory 104.
[0034] The printer 200 is a printer that is a so-called "PULL"
type, and actively obtains necessary data from the STB 100 when
receiving a print instruction notification from the STB 100 and the
like. The printer 200 comprises a communication I/F unit 201
operable to input and output data when communicating with the STB
100, a storage unit 203 operable to store data received from the
STB 100 or print image data or the like that are made during the
printing process, a transformation unit 202 operable to control
transformation from the received data to a file written in a
control language or respective images generated by executing
respective instructions written in a file in a control language
(object image: OI) to respective print image data, a print engine
unit 204 operable to draw text or images on a paper and the like
based on print image data, a print instruction receiving unit 206
operable to receive a print instruction from a user via the STB
100, a controller 205 operable to control the above-mentioned
respective units and the like. In addition, each unit of the
printer 200 is connected to an I/O bus 209. An object image has
information on location in the whole page along with being a small
piece of the image.
[0035] Also, the print instruction reception unit 206 can also
receive a print instruction via, for example, a remote controller
of a digital television and the like excluding the above-mentioned
STB 100.
[0036] Further, the storage unit 203 comprises an input file buffer
203a operable to store data received from an STB 100, a
decompression buffer 203b operable to decompress data stored in the
input file buffer 203a to a file written in a control language, an
OI buffer 203c operable to store object images when executing a
file written in a control language, and an image data buffer 203d
operable to store print image data made by synthesizing respective
object images.
[0037] Also, the STB 100 is connected with the printer 200 via
serial connection such as the IEEE 1394. Any one of the IEEE 1394,
a USB, and the like is available when connecting the STB 100 with
the printer 200. The printer 200 is, for example, a printer like an
inkjet printer or a laser printer, or a facsimile apparatus, a copy
machine and the like.
[0038] Next, explanation on data communication when printing in the
printing system 10 will be made. FIG. 4 is a communication sequence
that shows data communication between the STB 100 and the printer
200. In FIG. 4, it is assumed that there is a print instruction
from a user for printing "the first page" shown in the
later-explained FIG. 6. Print data in FIG. 4 is composed of a group
of broadcasting program files made of "Sample. bml", "A. jpg", and
"B. jpg". Document structure of respective image data files (file
size, the vertical and horizontal sizes of images and so on), and
places in which an image data file is stored (link destinations)
are written in "Sample. bml". "A. jpg" and "B. jpg" are image data
(for example, a JPEG file with a header part and a body part) of
images that constitutes a screen display. In this embodiment, the
contents of the print data and so on are not manipulated (for
example, without changing color information), and printed as they
are.
[0039] First, the printer 200 (the print instruction receiving unit
206) receives a print instruction from a user via the STB 100 and
the like. In this way, the printer 200 notifies the STB 100 of a
print data send instruction (S11). After that, the printer 200
receives print data sent from the STB 100 (S12), and tries to store
the received data in the input file buffer 203a of the printer
200.
[0040] Here, a controller unit 205 judges whether the input file
buffer 203a has the capacity for storing all the received print
data. When the judgment is yes, in other words, when it is judged
that the size of print data is smaller than that of the input file
buffer 203a of the printer 200, the transformation unit 202 starts
pre-printing processing (that is, layout processing for
printing).
[0041] On the other hand, when it is judged that the print data to
be received cannot be completely stored in the input file buffer
203a, the controller unit 205 issues a save request from the
printer 200 to the STB 100 so as to store the whole print data
tried to be received in the STB 100 (513), and controls the
communication I/F unit 201 so as to save the concerning data in the
second memory 104 in the STB 100. The reason why the data is saved
is, as mentioned above, to prevent an in-process printing from
terminating because of a program's completion or the like.
[0042] Note that it is also possible to save the concerning data in
the second memory 104 triggered by a print instruction, regardless
of whether it is possible to store the data in the input file
buffer 203a or not when it is specified in advance that the STB 100
executes a pull-type communication with the printer 200 in its
specification and the like.
[0043] Here, the sizes of the respective buffers in the storage
unit 203 are shown in FIG. 10. Whether the printer 200 is capable
of storing the print data to be received from the STB 100
completely in the input file buffer 203a is judged by receiving
data that indicates the size of print data, that is, 190 KB in
total of 7 KB for "Sample. bml", 40 KB for "A. jpg", and 143 KB for
"B. jpg" and then comparing the size with 110 KB, that is, the size
of the input file buffer 203a in controller unit 205. In the case
of this embodiment, the controller unit 205 judges that it is
impossible to store the whole print data by referring to the
contents of FIG. 10 because the data amount of the print data is
larger than 110 KB, that is, the capacity of the input file buffer
203a.
[0044] It is also possible to calculate the data size of the print
data to be received in the printer 200 side (for example, the
controller 205) without receiving the information that shows the
size of the print data from the STB 100.
[0045] As to the above-mentioned "Sample. bml", providing that the
"Sample. bml" is held in the input file buffer 203a after received
until its printing finishes (in other words, providing that it is
not deleted until its printing finishes), it is possible to start
the above-mentioned transformation processing and the like
immediately without receiving the print data even when printing the
pages starting from the second page.
[0046] Here, the printing processing when it is impossible to store
the whole print data in the input file buffer 203a at one time will
be explained more specifically with reference to FIG. 6. The input
file buffer 203a can store "Sample. bml" and "A. jpg" but cannot
store "B. jpg". However, "B. jpg" is necessary for printing the
first page. In addition, as the component information of the file
as a standard (such as the vertical and horizontal sizes of the
display screen and the like) is necessary for making a file written
in a control language as a stage before making print image data,
the input file buffer 203a in the printer 200 should hold the
vertical and horizontal sizes of the image of "Sample. bml", "A.
jpg", and "B. jpg" until printing finishes.
[0047] Generally, these vertical and horizontal sizes of the images
are gotten by reading the information on these vertical and
horizontal sizes written in the header part and the like of the
image data. More specifically, information shown in FIG. 8 is
stored in the input file buffer 203a and the like. The vertical and
horizontal sizes of images can be received from the STB 100 or
calculated in the printer 200 (for example, the controller unit
205).
[0048] Further, the STB 100 may store the vertical and horizontal
sizes of the image data in advance in "Sample. bml", and then
function to send the data to the printer 200. It is also possible
to perform image enlarging or shrink processing based on the
vertical and horizontal sizes of these images when executing
printing processing.
[0049] The above-mentioned pre-printing processing will be
explained below.
[0050] First, information showing that the vertical size of the
image "A. jpg" is 200 [pixel] and the horizontal size is 500
[pixel] is gotten from the data stored in the input file buffer
203a such as the component information stored in "A. jpg", and
"Sample. bml" in FIG. 8 (more specifically, information shown in
the table as FIG. 8), and the input file is transformed into a file
written in a control language by the transformation unit 202 and
decompressed in the decompression buffer 203b. While the data
including the image data are conventionally written as statements
when transforming data that contains image data into a file written
in a control language, only a statement specifying the file name of
the image data is written instead of the descriptions of the image
data as statements when the data is transformed into a file written
in a control language in this embodiment because image data is not
always stored in the input file buffer 203a. This method is
especially effective when there is no need to print all the pages
of image data that requires plural pages. Also, a file written in a
control language is made for all the respective pages, and the
number of pages in total can be grasped when these files written in
a control language are made.
[0051] When these files written in a control language are made in
the decompression buffer 203b by the transformation unit 202,
respective instructions written in a control language are executed
in order by the transformation unit 202 so as to decompress the
object images in the first page in the OI buffer 203c. FIG. 7 is a
diagram showing the object images to be displayed in the OI buffer
203c. When the transformation unit 202 executes instructions
starting from the one written in the first line of the file and the
stage has come in which the instruction for making object images of
"A. jpg" in the OI buffer 203c is executed, and the transformation
unit 202 confirms the data stored in the input file buffer 203a.
Then the transformation unit 202 makes object images in the OI
buffer 203c using "A. jpg" because "A. jpg" itself is stored in the
input file buffer 203a. After this processing, the transformation
unit 202 further executes the instruction for making object images
of "B. jpg" in the OI buffer 203c. However, the transformation unit
202 has to obtain "B. jpg" in advance from the STB 100 unlike in
the case of "A. jpg" because "B. jpg" does not exist in the input
file buffer 203a.
[0052] Therefore, the printer 200 makes a resend request for "B.
jpg" to the STB 100. As "B. jpg" is sent as a group of files of the
print data from the second memory 104 in the STB 100, "B. jpg" is
overwritten in a memory space in which necessary data, that is, "A.
jpg" is stored. "B. jpg" can be stored in the input file buffer
203a by overwriting the data on the file that has already processed
and becomes useless, or by writing the data after deleting the
previously stored file. If image data requires plural pages as
shown in FIG. 6, only storing the number of bytes necessary for
constituting one page is needed. In practicality, as it is possible
to specify which part of the "B. jpg" is the first page when making
files written in a control language, it becomes possible to use the
number of bytes of the first page of "B. jpg" when performing
printing processing of the following page by storing the data
separately as shown in FIG. 9. When "B. jpg" is stored in the input
file buffer 203a, the instruction for making object images of "B.
jpg" in the OI buffer 203c is executed.
[0053] This embodiment is a case where "A. jpg" and "B. jpg" are
aligned vertically and "B. jpg" is processed after "A. jpg", but it
is possible to execute OI making processing regardless of the
locations of images because image data are processed one by one in
the order of having been written in a control language regardless
of image locations.
[0054] FIG. 7 is for specifying object images made in this way. The
print image data for the first page is made in the image data
buffer 203d by the transformation unit 202 using these object
images that stores location information. The state of the print
image data to be decompressed in the image data buffer 203d will be
shown in FIG. 6. The print engine unit 204 of the printer 200
executes printing using these image data.
[0055] Judgment on whether the second page should be printed or not
after the first page is printed is on hold until a user gives an
instruction. When a user gives an instruction for executing
printing the second page, the printing processing is continued.
Data when making the first page, that is, files written in a
control language corresponding to all of the respective pages have
already stored, more specifically in the decompression buffer 203b.
Therefore, the second page is processed considering the processing
of the first page.
[0056] There is a need to make object images considering files
written in a control language for the first page so as to print the
second page. There is a need to obtain these data so as to make
object images of the second page because there is no data on the
latter part of "B. jpg". The rest of the "B. jpg" data should be
stored in the input file buffer 203a based on the number of bytes
of "B. jpg" obtained when receiving "B. jpg" in the first page. The
processing for making the following print image data is the same as
the processing for the first page.
[0057] FIG. 5 is a flow chart showing the processing flow in the
printer 200 when executing printing explained in the
above-mentioned FIG. 4.
[0058] When there is a print request from a user (S201), the
printer 200 makes a send request for print data to the STB 100
(S202) first and receives the print data (such as BML data and
image data) (S203).
[0059] Next, the printer 200 extracts the vertical and horizontal
sizes of these images based on the image data and deletes the image
data themselves because the memory capacity is limited.
[0060] Further, the printer 200 determines the layout for printing
based on BML data and the above-mentioned vertical and horizontal
sizes (S206 and S207), and makes a send request for the image data
to the STB 100 (S208).
[0061] After this, the printer 200 receives the printing data from
the STB 100, completes the image data for printing and executes
printing the first page (S210).
[0062] Pages from the second page are printed in a same manner.
(S211 and S206 to S210).
[0063] The processing method mentioned above makes it possible to
print data that requires plural pages even when data that are not
transformed into files written in a control language (more
specifically, "Sample. bml", "A. jpg" and "B. jpg") are inputted
and reduce the processing workload of apparatuses to be connected
to the printer because complicated data processing in the image
data sending side, that is, the STB 100 becomes unnecessary. Also,
there is no need to write the descriptions of "A. jpg" and "B. jpg"
whose data sizes are big in files written in a control language
while an instruction specifying these file names should be written
in files written in a control language because the printer 200
makes both of files written in a control language and object
images. By doing this, it is possible to use the decompression
buffer 203b effectively in the printer 200, and further, it is also
possible to use the input file buffer 203a effectively by storing
only the necessary image data in the input file buffer 203a only
when the need arises.
[0064] An example of the STB 100 as the sending side of image data
is explained in the above-mentioned embodiment, it is also possible
to connect the printer 200 to a mobile device such as a mobile
phone or the like and receive image data from an external data
server via the mobile device.
[0065] Also, via an information electrical apparatus such as a
microwave oven or a refrigerator with a storage medium such as an
SD memory, it is possible to receive data stored in the storage
unit of an apparatus of those listed above. When these apparatuses
without a function for a complicated processing have a data send
function, it becomes possible to print print data in the same
method as in this embodiment. Further, while a BML file is used as
a standard for making files written in a control language in the
above-mentioned embodiment, a file written in an ML (Markup
Language) such as an HTML file, an XHTM file and an XML file or any
other file can also be used on condition that the file includes
standard information of the file components.
[0066] The print data is explained as data displayed on a
television display screen in this embodiment, but invisible data
that are not displayed on a screen display are included when the
data can be scrolled. For example, print data can be the data such
as cooking recipe information that are not displayed on the
television screen in a cooking program. When there is a description
for linking to data except these visible data such as audio data in
the standard information of the file structure, it is advisable to
execute the processing for removing the linking to these visible
data when making files written in a control language.
[0067] An example of writing link information in files to be
written in a control language using file names of these image data
is shown as to image data in this embodiment. On the other hand,
the following is an explanation on the processing in the case where
another standard file existing as a slave of a master standard file
that is a standard for making files written in a control language.
The name of the slave standard file is written as link information
in a file written in a control language when transforming the
master standard file into a control language. It is possible to
execute the processing of printing the whole print data like this
embodiment when transforming the slave standard file into a control
language by executing the processing according to the contents of
the contents of the slave standard file like this embodiment--for
example, writing text data in a control language as they are,
writing file names of image data as link destinations in a control
language, and making OI and image data according to the
instructions written in a control language that is made here.
[0068] Also, while files written in a control language are directly
made from data stored in the input file buffer 203a in the
above-mentioned embodiment, it is also possible to make files
written in a control language after transforming the data into
another format once.
[0069] In addition, the printing processing can be terminated
without confirming the end of printing after printing the last
page. Also, it is advisable to notify the STB 100 of a print
termination message each time a printing processing terminates.
Also, notifying the STB 100 of a print termination message each
time a printing terminates enables the STB to keep a start
instruction in another printing processing on hold, which makes it
possible to avoid a collision of a resend instruction in the
process of a printing and the start instruction in the printing
processing.
[0070] Printing is executed in the order of pages starting from the
1st page in this embodiment. It is desirable that printable pages
be displayed to a user when there are plural pages, that the user
can select the pages to be printed, and that printing in no
particular order, for example, printing the fifth page next to the
third page be possible. Also, the storage unit 203 is clearly
divided into the input file buffer 203a, the decompression buffer
203b, the OI buffer 203c and the image data buffer 203d, but it is
possible to regard the whole storage unit 203 as a memory instead
of dividing it physically. For example, it is possible to reduce
receiving times by preparing a bigger buffer area for an input file
when the decompression buffer 203b has a free space.
Second Embodiment
[0071] Next, a printing system in the second embodiment of the
present invention will be explained.
[0072] In this embodiment, the case where the vertical and
horizontal sizes of image data are extracted from its header,
layout for printing is performed, the entity data of the images
necessary for printing is obtained, and printing is executed will
be explained while the above-mentioned first embodiment is shown as
the case where the part of the print data (more specifically, "B.
jpg") is temporally deleted and the layout for printing is
performed, and then the print data is reobtained and printed when
it is judged whether the image data received from an STB can be
stored in the input file buffer or not and the result is
"impossible".
[0073] FIG. 11 is a diagram showing a communication sequence
indicating the data communication between the STB 300 and the
printer 400 that comprise the printing system 20 concerning this
embodiment.
[0074] The STB 300 has the same level functions as the STB 100 in
the above-mentioned first embodiment, but the STB 300 differs from
the above-mentioned STB 100 in that the STB 300 is useful when the
printer 400 makes a send request for only the header of image
data.
[0075] The printer 400 has the same level functions as the printer
200 in the above-mentioned first embodiment, but the printer 400
differs from the printer 200 in that the printer 400 makes a send
request for only the header of image data to the STB 300.
[0076] Units different from the ones in the printing system in the
above-mentioned first embodiment will be focused on in the
following explanation, while the same reference number is given to
the units used in common and explanations on those units are
omitted.
[0077] As shown in FIG. 11, the printer 400 receives only "Sample.
bml" from the STB 300 first (S21 and S22), and extracts image files
whose vertical and horizontal sizes are unknown (such as "B. jpg")
of "Sample. bml".
[0078] Next, the printer 400 obtains the header of "B. jpg" whose
vertical and horizontal sizes are unknown from the STB 300 (S22 and
S24). The printer 400 may delete the header of "B. jpg" after
extracting the vertical and horizontal sizes of "B. jpg" from the
header of "B. jpg". Next, the layout for printing is performed (S14
and S17) like the case of the above-mentioned first embodiment.
[0079] After that, the printer 400 obtains "A. jpg" and "B. jpg"
from the STB 300 as the need arises (S25 and S26), and making image
data for printing and executing printing (S18).
[0080] FIG. 12 is a flow chart showing the processing flow in the
printer 400 in this embodiment.
[0081] First, the printer 400 requests the STB 300 for only
"Sample. bml" as print data and obtains "Sample. bml" (S401 and
S402).
[0082] Next, the printer 400 starts laying out object images based
on "Sample. bml" (S403), and checks whether the vertical and
horizontal sizes of image data are written (S404). When the
vertical and horizontal sizes are not written in "Sample. bml"
(S404: No), the printer 400 obtains the header of "B. jpg" from the
STB 300 (S405).
[0083] In this way, the printer 400 extracts the vertical and
horizontal sizes from the header of "B. jpg" and completes laying
out object images for printing (S207). Next, printing is executed
(S208 to S211) like the case of the above-mentioned first
embodiment.
[0084] As mentioned up to this point, the printing system 20 in
this embodiment makes it possible to print images on a digital
television screen and the like even when the buffer capacity for
printing in the printer is small because the header in which the
vertical and horizontal sizes necessary for laying out object
images are preobtained from the STB, the layout for printing is
completed, and then, necessary image data is received from the STB,
and print image data are generated in advance.
Third Embodiment
[0085] Next, a printing system in the third embodiment of the
present invention will be explained.
[0086] In this embodiment, the case where the layout for printing
is performed after the vertical and horizontal sizes are obtained
from the STB, the entity data of images necessary for printing is
obtained, and printing is performed is explained, while the
above-mentioned first embodiment is shown as the case where whether
the image data received from the STB can be stored in the input
file buffer is judged, when the judgment is "impossible", part of
the print data (more specifically, "B. jpg") is temporarily
deleted, layout for printing is performed, the print data is
reobtained, and then printing is performed.
[0087] FIG. 13 is a communication sequence diagram showing the data
communication between the STB 500 and the printer 600 that
constitute the printing system 30 concerning this embodiment.
[0088] The STB 500 has the same level functions as the STB 100 in
the above-mentioned first embodiment, but the STB 500 differs from
the above-mentioned STB 100 in that the STB 500 is useful when
there is a send request for only the vertical and horizontal sizes
of image data made by the printer 600.
[0089] The printer 600 has the same level functions as the printer
200 in the above-mentioned first embodiment, but the printer 600
differs from the printer 200 in that the printer 600 makes a send
request for only the vertical and horizontal sizes of image data to
the STB 500.
[0090] Units different from the ones in the printing system in the
earlier-mentioned embodiment will be focused on in the following
explanation, while a same reference number is given to the units
used in common and explanations on those units are omitted.
[0091] As shown in FIG. 13, the printer 600 extracts image files
whose vertical and horizontal sizes are unknown (such as "B. jpg")
of "Sample. bml" and receives only the vertical and horizontal
sizes (for example, of "B. jpg") from the STB 500 after extracting
the images whose vertical and horizontal sizes are unknown (S31 and
S32).
[0092] The layout is made like the case in the above-mentioned
second embodiment (S14 and S17) and printing is performed (S25, S26
and S18) below.
[0093] FIG. 14 is a flow chart showing the processing flow in the
printer 600 in this embodiment.
[0094] First, the printer 600 obtains only "Sample. bml" in the
same manner as the above-mentioned second embodiment (S201, S401
and S402). Next, the printer 600 extracts images whose vertical and
horizontal sizes are unknown (S601) based on "Sample. bml", and
obtains only the vertical and horizontal sizes of these images from
the STB 500 (S604 and S605).
[0095] The printer 600 completes the layout for printing (S403 and
S207) as the vertical and horizontal sizes of all the images are
clarified by these steps.
[0096] Printing is performed in the same manner as the
above-mentioned second embodiment (S208 to S211).
[0097] As mentioned up to this point, the printing system 30 in
this embodiment makes it possible to print a digital television
screen and the like even when the buffer capacity for printing in
the printer is small because the vertical and horizontal sizes
necessary for the layout are obtained from the STB, the layout for
printing is completed, and then, the necessary image data is
received from the STB, and print image data are generated in
advance.
Fourth Embodiment
[0098] Next, a printing system in the fourth embodiment of the
present invention will be explained.
[0099] In this embodiment, the case where a server which is an
image data sending source sends image data to which the vertical
and horizontal sizes of the images are added in advance to the STB
and the processing concerning the vertical and horizontal sizes
executed between the STB and the printer is unnecessary will be
explained, while the above-mentioned first embodiment is shown as
the case where whether the image data received from the STB can be
stored in the input file buffer is judged, when the judgment is
"impossible", part of the print data (more specifically, "B. jpg")
is temporarily deleted, the layout for printing is performed, the
print data is reobtained, and printing is performed.
[0100] FIG. 15 is a block diagram showing the functional structure
of the server 900, the STB 700 and the printer 800 that constitute
the printing system 40 in the fourth embodiment. Units different
from the ones in the printing system in the above-mentioned
embodiments will be focused on in the following explanation, while
the same reference number is given to the units used in common and
explanations on those units are omitted.
[0101] The server 900 has the communication I/F unit 901 operable
to exchange data and so on when communicating with the STB 700, the
memory 902 operable to store an HDD (hard disc drive) and the like
for storing data and the like to be sent to the STB 700, the
vertical and horizontal size writing unit 903 operable to specify
the vertical and horizontal sizes of images in advance and write
those sizes in "Sample. bml", and the controller unit 904 operable
to control the above-mentioned respective units, all of which are
connected with the I/O bus 909.
[0102] The communication I/F unit 701 in the STB 700 executes data
transformation and so on when communicating with the server 900 and
the printer 800.
[0103] The communication I/F unit 801 in the printer 800 executes
data transformation and so on when communicating with the STB 700.
Other units are the same as the ones in the above-mentioned first
embodiment.
[0104] FIG. 16 is a communication sequence diagram showing the data
communication between the above-mentioned server 900, the STB 700
and the printer 800. As shown in FIG. 16, the vertical and
horizontal size writing unit 903 in the server 900 judges whether
the vertical and horizontal sizes of these images in the respective
image files that comprise the display screen are written in
"Sample. bml", as to the written image files, specifies the
vertical and horizontal sizes with reference to the headers of
these image files and writes those sizes in "Sample. bml".
[0105] The STB 700 receives print data from the server 900 via a
line or a broadcasting wave (S41) and stores the data in the HDD
102.
[0106] The printer 800 obtains only "Sample. bml" from the STB 700
(S21 and S22) in the same manner as the above-mentioned third
embodiment, and performs the layout for printing based on the
vertical and horizontal sizes of the respective images written in
this "Sample. bml". The following communication sequence is the
same as the above-mentioned third embodiment.
[0107] FIG. 17 is a flow chart showing the processing flow in the
printer 800 in this embodiment.
[0108] First, the printer 800 obtains only "Sample. bml" like the
case of the above-mentioned third embodiment (S201, S401 and S402).
Next, the printer 800 completes laying out of all the images
necessary for printing (S403 and S207) based on "Sample. bml" and
next, executes printing in the same manner as the third embodiment
(S208 to S211).
[0109] As mentioned up to this point, the printing system 40 in
this embodiment makes it possible to reduce the time needed for
printing because the necessary vertical and horizontal sizes are
specified in a server and written in "Sample. bml" in advance and
thus there is no need to communicate data for specifying the
vertical and horizontal sizes after that.
INDUSTRIAL APPLICABILITY
[0110] As mentioned up to this point, the printing apparatus and
the printing method in the present invention is suitable for a
printing system in a digital television and the like that can
realize reduction in the memory cost and acceleration in printing
speed because the memory capacity needed for printing is smaller,
and data communication is performed more efficiently than before
when printing the images displayed on a digital television or the
like.
* * * * *