The present invention is directed to a printing method and apparatus for selectively printing a last page of a multi-page document. In particular, if a last page of a multi-page document does not contain, or contains a sufficiently small amount of, printed matter of interest, the last page can selectively not be printed or a small amount of material can be moved onto a previous page for printing.
When printing documents, it is frustrating and wasteful to print sheets of paper with a minor amount of coverage, or with unnecessary coverage. This problem has been identified by Cudd, in U.S. Application No. 2007/0273895 and also by Brown, in U.S. Pat. No. 6,688,786.
Cudd teaches a method where scaling is used to avoid a condition where minimal text is printed on the last page. The user must select a custom printing mode in a particular application to obtain the benefit of this scaling. The custom printing mode is implemented by supplementary code that is provided for the application. In this custom printing mode, Cudd detects a predetermined threshold for which a page is deemed potentially “not worth printing.” The user is prompted for a decision on whether or not to use scaling for the print job. If scaling is selected, the small amount of text on the last page is moved onto the previous page using space created by the scaling operation. The threshold taught by Cudd is a vertical limit. When text placement exceeds this predefined limit, a specialized preview is invoked.
Brown also teaches a method for suppressing printing of nearly-blank pages. Brown teaches that in many cases, there is header and footer text that may satisfy the requirement of Cudd, but still enable printing of pages of limited value. Brown identifies a window boundary for determining nearly-blank pages, thus eliminating the header and footer from the analysis. Additionally, “a page with a small number of dots to be marked within the window boundary could also be designated a nearly-blank page.”
What is needed is a method of inhibiting or reformatting not only nearly blank pages, but also those pages that have marking coverage that exceeds the thresholds of Cudd and Brown, yet still carry little in the way of desired information.
A preferred embodiment of the present invention comprises a computer implemented method of receiving a print job for a printer, formatting the print job, wherein the formatted print job includes a number of pages comprising text, and a last page of the text includes an image. A minimal amount of text on the last page is detected and image data for the image is detected. The last page is reformatted, where formatting, format, formatted, reformatting, reformatted, modified, and modifying are taken to mean any of various steps including deleting a page or the last page from the print job, deleting portions of the last page such as text or images, printing only portions of images or text, setting new margins or font size, and any other step of page or page data manipulation. Reformatting preferably comprises deleting the image from the last page before printing the last page. Reformatting can also include decreasing a margin on at least one side of the text to be printed on the last page, before printing the last page.
Another preferred embodiment of the present invention comprises a computer implemented method of receiving a print job and formatting the print job which includes printable pages comprising text and a last page that comprises an image. If the last page also includes a blank space, it is detected and the last page is reformatted so that the last page is not printed. If the last page also includes text, then only the text is printed on the last page without the image. A user interface can be displayed on the computer system for the user to selectively control printing or not printing the last page.
Another preferred embodiment of the present invention comprises a computer implemented method of rendering a print job comprising a determination that a last page of a print job comprises insignificant text or no text. Insignificance includes a minimal amount or a minimal importance of the text. Terms such as “comments,” “footnotes,” “cites,” “bibliography,” “sponsored,” or other terms, words, or headings may indicate insignificant text. A user selected term or terms can be stored and the present method implemented with respect to the user selected word for indicating to the computer system that the last page text is insignificant. Modifying the print job in response to this determination is then performed, which can include deleting the last page, displaying a user interface for presenting options for implementing the step of modifying the print job, deleting an image, deleting an image but not text on the last page of the print job, or reducing a margin of the text on the last page of the print job.
These, and other, aspects and objects of the present invention will be better appreciated and understood when considered in conjunction with the following description and the accompanying drawings. It should be understood, however, that the following description, while indicating preferred embodiments of the present invention and numerous specific details thereof, is given by way of illustration and not of limitation. For example, the summary descriptions above are not meant to describe individual separate embodiments whose elements are not interchangeable. In fact, many of the elements described as related to a particular embodiment can be used together with, and possibly interchanged with, elements of other described embodiments. Many changes and modifications may be made within the scope of the present invention without departing from the spirit thereof, and the invention includes all such modifications. The figures below are intended to be drawn neither to any precise scale with respect to relative size, angular relationship, or relative position nor to any combinational relationship with respect to interchangeability, substitution, or representation of an actual implementation.
In a preferred embodiment, the condition where the advertisements extend onto additional last page 100 is detected. The detection takes place in the driver for the printer. This provides utility in that special code need not be incorporated into the application software, avoiding the need to download add-ons for many applications. Additionally, the manner in which detected conditions are presented to the user is made uniform for the printer.
The condition illustrated by
Note that a decision to generate a preview, or not to print, can also be made for another removal criterion where a predefined small amount of text is detected along with the images as shown in
Print driver may also analyze the coverage of last page 100. In another removal criterion such as shown in
Alternatively, this detected condition may provide alternative previews with text-only printing or automatically printed pages where images have been automatically removed from the print job, such as illustrated in
Print driver 220 may also use different triggers for different application software 210. For example, if application software 210 is a web browser application such as Mozilla Firefox, then the image data for printing last page 100, 300, or 400 presented to print driver 220 are likely images that are advertisements. In these cases, the images are likely to be advertisements that the user would prefer not to print, and it is appropriate that print driver 220 generate a preview or not print the page in question. However, if application software 210 is a word processing application such as Microsoft Word, then the image data for printing last page 100, 300, or 400 presented to print driver 220 are likely images that are not advertisements, and the user would not necessarily benefit from a preview (user interface) or from automatically not printing the last page. Preferred print responses in circumstances such as these can be set through the print driver 220 by the user. Another option that can be set according to the type of application is “don't print images.” In many cases, only the text conveys the useful information that the user desires.
Print driver 220 may also detect conditions that are indicative of diminishing print value. One such condition is the occurrence of the word “comment” in the text. Often, this term is used to denote that reader comments are provided below. These comments may not be considered worthwhile to print when printing a web article. The text for the trigger condition can be stored by the user in a “preferences” section in the user interface for printer driver 220.
Step 255 of
The criteria necessary to prevent the page shown in
The bitmap is analyzed row by row from top to bottom of the page, where rows are horizontal sequences of contiguous spaces. The analysis of the rows at the top of the page, which contain the header, show intermittent coverage in a single color which is characteristic of text. This condition may not meet the removal criteria. Further down the page, the analysis will show that the entire width of the page has similar intermittent coverage in a single color that is characteristic of text. This also does not meet the criteria for removal, since this condition is indicative of text that may be of value. A third condition is detected where the text rendered for the page has ended. Here, there is a large space with no marking on the left side of the page, and the right side coverage is full, or nearly full, with coverage in many colors. This detected condition meets the removal criteria, and a print preview is generated. The analysis indicates that there are large areas of unprinted space adjacent to an image, regardless of the position of the image.
The detected criteria necessary to prevent the page shown in
A limitation to the criteria can be provided that requires that the first line that meets the criteria for removal is printed. By limiting the criteria in this fashion, partial lines of text that are positioned at the end of text of value will be printed even though there is blank space on the partial line.
Once the criteria have been detected, actions may be taken to remediate the situation where unwanted printing may occur. In addition to generating a preview that allows the user to determine if a particular page is to be printed or not, the print driver may also provide automatically executed options for printing.
The invention has been described in detail with particular reference to certain preferred embodiments thereof, but it will be understood that variations and modifications can be effected within the spirit and scope of the invention.