This application is based on Japanese Patent Application No. 2013-192892 filed on Sep. 18, 2013, in the Japan Patent Office, the entire content of which is hereby incorporated by reference.
The present invention relates to a data generation apparatus, a non-transitory computer-readable storage medium storing a data generation program, and a data generation method. In particular, the present invention relates to a data generation apparatus, a non-transitory computer-readable storage medium storing a data generation program, and a data generation method that generate print preview data.
Many printers of late years have preview functions. Such printers are configured to, before printing a document, display a preview image that shows an appearance of a print output and to allow a user to confirm the displayed print preview image, so as to prevent output of unwanted printouts. Also in the case that a user instructs such a printer to conduct printing through a printer driver working in a user terminal, the printer causes the user terminal to display a preview image, so as to prevent output of unwanted printouts. Moreover, in recent years, there has been used a method of employing a Web application provided by a Web server and of displaying a preview display image created by the Web server onto a Web screen of a user terminal. Such preview display allows users, before printing, to confirm, for example, drawing positions, drawing sizes, drawing misalignment, and print splitting, and especially nowadays further allows to users to confirm positions of punching or stapling, which provides very convenient features for users.
With respect to techniques related to the preview display, for example, Japanese Patent Application Laid-Open Publication (JP-A) No. 2010-79766 discloses a document printing system having a printer driver that converts print information created by an application into print data that can be interpreted by a printing device, wherein the system includes: a print preview section for displaying a preview screen showing a print image of the print information before transmitting the print information to the printing device; an edit section for additionally editing the print image on the preview screen; and a print data generation section for generating print data that can be interpreted by the printing device based on the print information and the edit data for the additional editing.
In addition, JP No. 2011-39898 discloses an image forming apparatus that can communicate data with at least one printing device via a network, wherein the apparatus includes: a print job acquisition section for acquiring a print job based on a print instruction given by a user; an image forming section for performing print output by executing the print job; an event detection section for detecting an occurrence of a predetermined event; and a print preview processing section which, when the occurrence of the predetermined event is detected by the event detection means, acquires a first print preview image of a case when the print job is executed in the image forming section, and a second print preview image of a case when the print job is executed in the printing device, and outputs the first print preview image and the second print preview image.
Although a printing device with a preview function generates a print preview image to be used for preview display based on a print job for a document, there are cases where the document includes a font not supported by the printing device, or the document has been created using a function not supported by the printing device (e.g., 3D drawing function). In such cases, the printing device generates a print preview image by replacing a font or a function not supported by the apparatus with an alternative font or an alternative function supported by the apparatus. Accordingly, the replacing result is reflected in the print preview image transmitted from the printing device to the user terminal at the host side. Since information about the replacement of the font or function was not presented to a user at that time in conventional technologies, there was a problem that the user cannot recognize what part in the document has been replaced and how it has been replaced just by looking into the print preview image and that the user hardly determine appropriately whether or not to execute the print processing.
Especially in recent years, situations that users give print instructions using mobile devices, such as a tablet device and a smart phone, are increasing as mobile devices have become popular. However, since screens on mobile devices are small, it becomes more difficult for users to recognize what part in the document has been replaced and how it has been replaced. In addition, occurrence of the above problems is not limited to the preview display for printing. Rather, they similarly occurs in preview display used for transmitting a document via facsimile, for example. The present invention seeks to solve those problems.
There are disclosed illustrative data generation apparatuses, non-transitory computer-readable storage media each storing a data generation program, and data generation methods.
An illustrative data generation apparatus reflecting one aspect of the present invention is a data generation apparatus comprising: a communication section configured to communicate with a print instructing apparatus which can output a print job of a document; and a preview-image generating section configured to analyze a print job received by the communication section and generate a preview image showing each page of the document, where the each page reflects print settings. The preview-image generating section is further configured to determine whether or not an object having a property not supported by the data generation apparatus exists in each page of the document; and, in response to determining that the object exists, obtain at least one possible alternative to the property of the object, where each of the least one possible alternative is supported by the data generation apparatus. The preview-image generating section is further configured to generate edit data to be used for highlighting a replaced part in the preview image in which the property of the object is replaced with the at least one possible alternative at the replaced part, and output the edit data to the print instructing apparatus so as to allow a user to recognize the replaced part.
A non-transitory computer-readable medium reflecting one aspect of the present invention stores a data generation program to be executed in a processing apparatus communicably connected with a print instructing apparatus which can output a print job of a document. The data generation program, when being executed by a processor of the processing apparatus, causes the processor to perform processes comprising: analyzing the print job; and generating a preview image showing each page of the document, where the each page reflects print settings. The analyzing the print job includes determining whether or not an object having a property not supported by the processing apparatus exists in each page of the document; and in response to determining that the object exists, obtaining at least one possible alternative to the property of the object, where each of the least one possible alternative is supported by the processing apparatus. The generating the preview image includes generating edit data to be used for highlighting a replaced part in the preview image in which the property of the object is replaced with the at least one possible alternative at the replaced part; and outputting the edit data to the print instructing apparatus so as to allow a user to recognize the replaced part.
A data generation method of a printing system including a print instructing apparatus which can output a print job of a document and a processing apparatus which can process the print job, where the print instructing apparatus and the processing apparatus are connected through a communication network. The data generation method comprises: sending a print job from the print instructing apparatus to the processing apparatus; receiving and analyzing the print job by the processing apparatus; generating a preview image showing each page of the document, by the processing apparatus, where the each page reflects print settings; and displaying the preview image by the print instructing apparatus. The analyzing the print job includes determining, by the processing apparatus, whether or not an object having a property not supported by the processing apparatus exists in each page of the document; and in response to determining that the object exists, obtaining, by the processing apparatus, at least one possible alternative to the property of the object, where each of the least one possible alternative is supported by the processing apparatus. The generating the preview image includes generating, by the processing apparatus, edit data to be used for highlighting a replaced part in the preview image in which the property of the object is replaced with the at least one possible alternative at the replaced part; and outputting the edit data from the processing apparatus to the print instructing apparatus. The displaying the preview image includes displaying the preview image by the print instructing apparatus by using the edit data so as to allow a user to recognize the replaced part.
Other features of illustrative embodiments will be described below.
Embodiments will now be described, by way of example only, with reference to the accompanying drawings which are meant to be exemplary, not limiting, and wherein like elements numbered alike in several figures, in which:
Illustrative embodiments of data generation apparatuses, non-transitory computer-readable storage media each storing a data generation program, and data generation methods will be described with reference to the drawings. It will be appreciated by those of ordinary skill in the art that the description given herein with respect to those figures is for exemplary purposes only and is not intended in any way to limit the scope of potential embodiments may be resolved by referring to the appended claims.
According to illustrative data generation apparatuses, non-transitory computer-readable storage media each storing a data generation program, and data generation methods as embodiments of the present invention, it is possible to generate data for preview display which allows a user to easily recognize a replaced part in the preview display.
This is because the data generation apparatus (by executing a data generation program thereon) analyzes a print job and generate a preview image showing each page of a document, where the each page reflects print settings which have been established. In this processing, the data generation apparatus determines whether or not there is an object having a property not supported by the apparatus in a page; obtains, if there is such an object, a possible alternative supported by the apparatus as an alternative to the property of the above object; and generates edit data to be used for highlighting the replaced part (displaying with emphasis the replaced part) in a preview image in which the property of the object is replaced with the alternative at the replaced part. In addition, it is also because the data generation apparatus generates data of possible alternatives to be used for displaying the obtained possible alternatives so as to allow a user to designate any of them.
As described in the descriptions of the background, confirmation of an appearance of a print output by using a print preview image is popularly carried out in order to avoid output of unwanted printouts. The print preview image is an image showing an appearance of a print output obtained when a document created with a computing device is outputted by a printer. However, there are cases where the printer does not support a font in the document created using the computing device, or cases where the printer does not support a function (e.g., 3D drawing function) of an application in the computing device, for example.
In such cases, the printer creates a print preview image by, for example, replacing the font in the document with another font supported by the printer, or replacing the function of the application with a function supported by the printer. That is, when a document is created using a font or a function that are not supported by the printer, it makes a mismatch between a document created using the computing device and a document outputted using the printer.
Therefore, it is necessary to confirm which part has been replaced and how the part has been replaced in the document when the font or the function has been replaced. In a conventional printing system, the print preview image was created by automatically replacing unsupported fonts or unsupported functions with corresponding alternatives. Accordingly, it was difficult for a user to recognize which part has been changed and how the part has been changed in a computing device that displays print preview images, especially in a mobile device having a small screen, and thus there was a problem that it is not possible for the user to determine whether to print the document or not appropriately. In addition to preview display in the case of printing, there were similar problems in, for example, preview display in facsimile transmission.
Accordingly, one embodiment of the present invention provides a technology to, when a font or a function not supported by a printer in a preview image is replaced with an alternative font or an alternative function supported by the printer, highlight the replaced part (display the replaced part with emphasis) in the preview image. In addition, other possible alternatives may be displayed so as to allow a user to designate any of them. Thereby, the user can recognize the replaced part easily, and thus it is possible for the user to determine appropriately whether or not the printing job should be executed just by looking into the preview image. Further, when the technology employs displaying other possible alternatives so as to allow a user to designate any of them, a user can change the part to be replaced by using the alternative desired by the user, and thus it is possible for the user to determine more appropriately whether or not the printing job should be executed just by looking into the preview image.
In order to describe the embodiments of the present invention in detail, a data generation apparatus, a non-transitory computer-readable storage medium storing a data generation program, and a data generation method according to the present example will be described with reference to
It should be noted that, in the present example, a preview image is an image of each page in a document, wherein the each page reflects print settings which have been established for printing the document. The preview image corresponds to an image to be actually printed. When a font or a function not supported by the printing apparatus is used in the document, the font or the function is replaced with the corresponding alternative in the preview image. In addition, edit data is data to be used for highlighting (displaying with emphasis) the replaced part, where the font or the function is replaced, in the preview image. The edit data may be data of an image prepared by editing the preview image with highlighting (emphasizing) the replaced part, or partial data to be used for editing the preview image such that the replaced part is highlighted (displayed with emphasis) (e.g., data for superimposing onto the replaced part in the preview image, and data for overwriting onto the replaced part in the preview image). The former edit data is used in the following descriptions about the present example.
As illustrated in
In
The control section 11 includes: a CPU (Central Processing Unit) 11a; and a memory, such as a RAM (Random Access Memory) 11c, which serves as a workspace, and a ROM (Read Only Memory) 11b, which serves as a storage region for a control program. The CPU 11a controls various functions of the printer 10a (or server 10b) by reading a program from the ROM 11b or the storage section 16, and developing and executing the program on the RAM 11c.
The input section 12 is, for example, a touch panel or a hard key and receives various operations related to printing and operations of registering LUT described later, for example.
The communication section 13 includes, for example, an NIC (Network Interface Card) and a modem, and establishes communication with the computing device 20a or the mobile device 20b via the network. The communication section 13 receives, for example, a print job for instructing printing of a document, and alternative designating data which designates, for example, an alternative font and/or an alternative function, from the computing device 20a or the mobile device 20b. In addition, the communication section 13 transmits, for example, edit data (data to be used for highlighting the replaced part in the preview image) generated by the preview-image generating section 14, and data of possible alternatives to the computing device 20a or the mobile device 20b.
The preview-image generating section 14 generates a preview image of a document based on a print job, that is, a preview image according to an appearance of a print output of the received document. Specifically, the preview-image generating section 14 performs, for example, analysis processing which analyzes the print job received from the computing device 20a or the mobile device 20b for each page and generates intermediate language, and drawing processing which creates frame data by rasterizing the intermediate language for every frame and generates a bitmap image for one page for previewing based on the frame data.
In the analysis processing, the preview-image generating section 14 determines whether or not there is an object having a font, a function, or the like (these are generically called a property) not supported by the printer 10a or the server 10b in a page of the document. When determining that such an object exists, the preview-image generating section 14 refers a pre-stored table (LUT) and obtains a possible alternative (alternative font of alternative function) to the property of the object, where the possible alternative is a property supported by the printer 10a or the server 10b and is selected as such that the result of drawing the page by using the possible alternative is close to the appearance of the page displayed on the computing device 20a or the mobile device 20b. In addition, in the above-described drawing processing, the preview-image generating section 14 generates the preview image by replacing the object with the possible alternative, and generates edit data for changing color of the object, changing color of the background of the object, adding a frame enclosing the object, or changing thickness of characters in the object so as to highlight the replaced part in the preview image. Further, the preview-image generating section 14 outputs the edit data to the computing device 20a or the mobile device 20b so as to allow a user to recognize the replaced part in the preview image, on the computing device 20a or the mobile device 20b.
The image output section 15 is an engine arranged in the printer 10a and prints an image of a document on sheets of paper according to an instruction from the control section 11. Specifically, the image output section 15 includes elements required for image formation that uses image formation processes, such as an electrophotography technique and an electrostatic recording technique. Examples of those elements include an electrification device, a photoconductor drum, an exposure device, a transfer roller, a transfer belt, and a fixing device. Specifically, the image output section 15 performs processing that forms an electrostatic latent image by irradiating light corresponding to the image data from the exposure device onto the photoconductor drum electrified by the electrification device, develops using a developer device by adhering on the toner, transfers the toner image onto the paper medium via a primarily transferring roller and a secondary transfer belt, and fixes the toner image by a fixing device.
The storage section 16 includes an HDD (Hard Disk Drive), an SSD (Solid State Drive), or the like, and stores a print job, data of a preview image, edit data for a preview image, data of possible alternatives, and an LUT to be used for obtaining possible alternatives, for example.
It should be noted that, although
Computing Device 20a (Mobile Device 20b):
The computing device 20a and the mobile device 20b mainly include a control section 21, an input section 22, a communication section 23, a display section 24, a preview display controlling section 25, an application section 26, and a driver section 27, for example.
The control section 21 includes: a CPU 21a; and a memory, such as a RAM 21c which serves as a workspace, and a ROM 21b, which serves as a storage region for programs for the operation system. The CPU 21a and the memory are connected via a bus. The CPU 21a controls various functions of the computing device 20a (or mobile device 20b) by reading programs from the ROM 21b, and developing and executing the program on the RAM 21c.
The input section 22 receives, for example, operations upon creating a document using the application section 26, operations upon creating a print job that is to be transmitted to the printer 10a (or server 10b) using the driver section 27, and operations that selects possible alternatives in the preview screen displayed on the display section 24.
The communication section 23 includes an NIC, a modem, or the like, and establishes communications with the printer 10a or the server 10b via a network. The communication section 23 transmits to the printer 10a or the server 10b, for example, a print job and alternative designating data which designates the selected possible alternative, and receives from the printer 10a or the server 10b, for example, the preview image edit data and data of possible alternatives.
The display section 24 can be an LCD (Liquid Crystal Display), for example, and displays a document creation screen of the application section 26, a printing instruction screen of the driver section 27, and a preview screen based on the edit data received via the communication section 23, for example.
For example, the preview display controlling section 25 displays an image prepared by highlighting the replaced part in the preview image onto the display section 24, based on the edit data received from the printer 10a or the server 10b, displays the possible alternatives based on the data of possible alternatives so as to allow a user to select any of them, and displays a button or the like that instructs execution of print output.
The application section 26 is a part that executes processing based on application software for creating documents to be printed.
The driver section 27 converts document data created with the application section 26 into a print job described using language that can be interpreted by the printer 10a or the server 10b (PDL (Page Description Language), such as PCL (Printing Control Language) and PS (PostScript)).
It should be noted that
Next, operations of the computing device 20a (or mobile device 20b) in the above-described arrangement will be described. The CPU 21a of the computing device 20a (or mobile device 20b) executes each process illustrated in the flowcharts in
First, as illustrated in
Next, the application section 26 determines whether a print preview display has been instructed in the operation screen of the application (e.g., whether “Print Preview” is selected in a “File” pull down menu in
Meanwhile, if the print preview display has been instructed, the control section 21 makes the driver section 27 operate and starts the driver (S106), the driver section 27 generates from document data a print job in a form that enables output in the printer 10a or the server 10b (S107), and sends the generated print job to the printer 10a (or server 10b) via the communication section 23 (S108).
The printer 10a (or server 10b) that received the print job executes analysis processing and drawing processing, which will be described later, and generates edit data to be used for highlighting (displaying with emphasis) the replaced part in the preview image and data of possible alternatives for allowing a user to select possible alternatives. Then, the printer 10a (or server 10b) sends the above data to the computing device 20a (or mobile device 20b).
Thereafter, as illustrated in
Specifically, paragraphs in the upper part in the document in
As illustrated in
Thereafter, if there is an instruction to execute print output as appeared in the preview image 41 (Yes in S205), execution instruction information is transmitted to the printer 10a (or server 10b) (S206). Meanwhile, if execution instruction information is received from the computing device 20a or the mobile device 20b (or receiving execution instruction information via the server 10b), the printer 10a controls the image output section 15 so as to perform print output processing.
Next, operations of the printer 10a (or server 10b) will be described. The CPU 11a of the printer 10a (or server 10b) executes respective processes illustrated in the flowcharts in
First, the control section 11 receives a print job from the computing device 20a (or mobile device 20b) via the communication section 13 (S301). Next, the preview-image generating section 14 executes analysis processing for one page of the received print job to generate intermediate language (S302), and executes drawing processing for one frame after another based on the intermediate language (S303). The analysis processing and the drawing processing will be described later.
Thereafter, the preview-image generating section 14 generates a preview bitmap image for one page (S304). If there is a next page (Yes in S305), the process returns to S302 to repeat the same processing. Meanwhile, if the bitmap images have been generated up to the last page (No in S305), edit data for the preview image and data of possible alternatives are sent to the computing device 20a (or mobile device 20b) (S306).
Next, the analysis processing (S302) and the drawing processing (S303), which are executed in the preview-image generating section 14, will be described.
As illustrated in
If the font is a font supported by the printer 10a (or server 10b), the process proceeds to S409. If the font is a font not supported by the printer 10a (or server 10b), the preview-image generating section 14 determines whether at last one possible alternative font to the determined font is registered in a LUT which has previously prepared (S404). If at least one possible alternative font is registered in the LUT, a predetermined number (arbitrary number, e.g., three) of possible alternative fonts are obtained from fonts in the LUT (S405), and a first possible alternative is selected among the selected possible alternative fonts (S407) and a second and a third possible alternatives (in the case that three possible alternatives are obtained) are registered in the storage section 16 (S408). Meanwhile, if no possible alternative font is registered in the LUT, a default font is selected as an alternative font (S406) and the process proceeds to S409.
In the LUT, it is desirable to pre-define the kind and size (font line width and font point) of the alternative font such that a preview image in which object fonts have been replaced with the alternative font fits within one page by taking into consideration proportional fonts (variable width fonts) and monospace fonts (equal-width fonts), and bold fonts and thin fonts, or the like. In particular, by maintaining the font size, it is possible to prevent in advance problems caused by font replacement, such as misalignment and a preview image extending in more than one page. In addition, although any font can be defined as a default font, the font may not be replaced with a default font. That is, there may be no drawing (blank characters are used) at the replaced part.
Meanwhile, if the object included in the page is not a text object (No in S402), the preview-image generating section 14 determines whether the object is drawn with a function not supported by the printer 10a (or server 10b) (S411). If the object is drawn with a function supported by the printer 10a (or server 10b), the process proceeds to S409. If it is drawn with a function not supported by the printer 10a (or server 10b), the preview-image generating section 14 determines whether or not at least one possible alternative to the function is registered in the LUT (S412). If at least one possible alternative function is registered in the LUT, a predetermined number (arbitrary number, e.g., three) of possible alternative functions are obtained from the LUT (S413), and a first possible alternative is selected from the selected possible alternative functions (S407) and a second and a third possible alternatives (in the case that three possible alternatives are obtained) are registered in the storage section 16 (S408). Meanwhile, if no possible alternative function is registered in the LUT, a default function is selected (S414) and the process proceeds to S409. It should be noted that it is desirable to define possible alternative functions and a default function similarly to fonts.
Next, intermediate language is created using the first possible alternative obtained in S407 (S409) and data in the created intermediate language is saved in the memory. Then, it is determined whether the analysis processing for one page is completed (S410). If the analysis for one page is not completed, the process returns to S402 to repeat the same processing for the next object.
As illustrated in
As described above, the present example performs processing to, in the case where there is an object having a property (font or function) not supported by the apparatus in a page when generating a preview image, obtain at least one possible alternative as a property supported by the apparatus, and generate edit data to be used for highlighting a replaced part in the preview image in which the object having the property not supported by the apparatus is replaced with the possible alternative at the replaced part. Thereby, it is possible for a user to recognize the replaced part easily, and thus it is possible for the user to determine whether or not to execute the printing job appropriately. In addition, by generating data of possible alternatives which allow a user to designate one of the obtained possible alternatives, it is possible for a user to select a desired possible alternative among the possible alternatives, and thus the user can obtain a desired printing result.
It should be noted that the present invention should not be limited to the above embodiments and examples. The arrangements of systems and devices and the method for generating preview displaying data may be modified as appropriate within the spirit of the present invention.
For example, although “font” and “function” were exemplified as properties in the above-described embodiments and examples, the property is not limited to them. In addition, although “Arial”, “Courier New” and “OCR-B” were exemplified as fonts and “3D drawing function” was exemplified as a function, neither the font nor the function is limited to them. In addition, although methods that change the object color and the background color, add a frame surrounding the object and change thickness of the characters in the text object were exemplified as methods for highlighting the replaced part in the preview image, they are is not limited to them.
In addition, although “edit data” was described as image data provided by editing a preview image such that the replaced part in the preview image is highlighted in the above-described embodiments and examples, the edit data should not be limited to that as far as the edit data is data to be used for highlighting the replaced part in the preview image. For example, the edit data may be partial data to be used for editing the preview image such that the printer 10a or the server 10b sends the preview image data and the edit data to the computing device 20a or the mobile device 20b and the computing device 20a or the mobile device 20b highlights the replaced part in the preview image using the edit data upon displaying the preview image.
In addition, although cases where the preview display for printing is performed were described in the above-described embodiment, the present invention can be applied to cases where the preview display is performed, upon transmitting predetermined pages in a document via facsimile, for confirming the contents in the pages.
Number | Date | Country | Kind |
---|---|---|---|
2013-192892 | Sep 2013 | JP | national |