Program, recording medium, control method, and information processing apparatus
Patent Information
- Application Number
- JP2023132028
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2023-08-14
- Publication Date
- 2025-02-27
- Estimated Expiration
- 2043-08-14
Smart Images

Figure 2025027320000001_ABST
Abstract
Description
[Technical field]
[0001] The present invention relates to a program, a recording medium, a control method, and an information processing device. [Background technology]
[0002] A host computer (information processing device) capable of processing information between the printing device and the printing device is communicatively connected to the printing device. For example, a printer driver installed on the host computer from the printing device is used as control software for controlling the printing device. This printer driver allows the host computer to issue print instructions to the printing device. An operating system (hereinafter referred to as "OS"), which is basic software, is pre-installed on the host computer. The printer driver is configured according to specifications defined by the OS, and can be called up and operated by the OS. In addition, such printer drivers differ depending on the vendor supplying the printing device, that is, they are model-specific printer drivers suitable for each printing device.
[0003] In recent years, Windows (registered trademark) provides a standard class driver (hereinafter sometimes referred to as a "standard driver") that can be commonly used even for printing devices supplied by different vendors. Such a standard driver is pre-installed in the OS. Then, the standard driver can be used by connecting any printing device to a host computer having an OS with the standard driver installed. This makes it possible to omit the installation of a printer driver specific to the model. Also, the standard driver can be used by specifying the printing function of the printing device according to Print Device Capabilities (hereinafter sometimes referred to as a "PDC") generated based on information acquired from the printing device. This makes it possible to specify the printing function for each printing device with one standard driver. The standard driver can be associated with a function extension application (hereinafter sometimes referred to as an "extension application") that extends the functions. The extension application is provided by each vendor.
[0004] Patent Document 1 discloses a support program that expands the printing function of a printer that is communicably connected to an information processing device. When a print instruction is given to a general-purpose printing program that is pre-installed in the operating system of the information processing device, this support program can be expanded to execute a compositing process that combines a specific object with an image to be printed. This compositing process is a function that is not included in the general-purpose printing program, but can be executed by the support program. In addition, if the printed matter (output) output from the printer is, for example, an important document, the compositing process can be used to combine and print a mark such as a watermark indicating that it is an important document on the printed matter. [Prior art documents] [Patent documents]
[0005] [Patent Document 1] JP 2020-166433 A Summary of the Invention [Problem to be solved by the invention]
[0006] However, even if a watermark is printed on a printed matter, it is not possible to restrict copying of the printed matter.
[0007] The present invention has been made in consideration of the above problems, and has an object to provide a mechanism for restricting copying of printed matter printed based on print data generated by a general-purpose program that can be used commonly for printing on printing devices of multiple manufacturers. [Means for solving the problem]
[0008] In order to achieve the above-mentioned object, the program of the present invention is a program capable of expanding the functions of a general-purpose program that can be used for common printing on printing devices of multiple manufacturers, and is characterized in having an execution step of causing the printing device to execute an image data generation process that generates image data for a watermark image that is added to a printed material printed based on print data generated by the general-purpose program and that appears when the printed material is copied. Effect of the Invention
[0009] According to the present invention, it is possible to restrict copying of a printed matter printed based on print data generated by a general-purpose program that can be commonly used for printing on printing devices of multiple manufacturers. [Brief description of the drawings]
[0010] [Figure 1] 1 is a block diagram showing a hardware configuration of a printing system according to a first embodiment. [Diagram 2] FIG. 2 is a block diagram showing the software configuration of the printing system. [Diagram 3] 13 is a diagram showing an example of a screen displayed on a display unit of the printing system by a print setting screen expansion unit. FIG. [Figure 4] 11 is a flowchart showing a process in which a print function extension unit edits print function information. [Diagram 5] FIG. 11 illustrates an example of a list of capability information of a printing device. [Figure 6] 11 is a diagram illustrating an example of a list of print functions supported by an extension application. [Figure 7] FIG. 11 is a diagram illustrating an example of a list of capability information of general-purpose printing software. [Figure 8] 11 is a sequence diagram showing processes executed between the drawing application, the general-purpose printing software, the extension application, and the printing device after the drawing application accepts print settings. FIG. [Figure 9] FIG. 13 is a diagram showing an example of a tint block image. [Figure 10] 10 is a flowchart showing an image data generating process for generating image data of a tint block image. [Figure 11] 1 is a conceptual diagram showing an example of a latent image portion and a background portion. [Figure 12] FIG. 13 is an image diagram showing an example of a sample relating to a background pattern. [Figure 13] 13 is a flowchart showing a calibration process of a tint block. [Figure 14] FIG. 11 is a block diagram showing the software configuration of a printing system according to a second embodiment. [Figure 15] 11 is a flowchart showing a process in which a print function extension unit edits print function information. [Figure 16] FIG. 11 illustrates an example of a list of capability information of a printing device. [Figure 17] 11 is a sequence diagram showing processes executed between the drawing application, the general-purpose printing software, the extension application, and the printing device after the drawing application accepts print settings. FIG. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
[0011] Each embodiment of the present invention will be described in detail below with reference to the drawings. However, the configurations described in each of the following embodiments are merely examples, and the scope of the present invention is not limited by the configurations described in each embodiment. For example, each part constituting the present invention can be replaced with any configuration that can exert a similar function. In addition, any configuration may be added. In addition, any two or more configurations (features) of each embodiment can be combined.
[0012] <<First embodiment>> The first embodiment will be described below with reference to FIGS.
[0013] <Printing system hardware configuration> Fig. 1 is a block diagram showing a hardware configuration of a printing system according to a first embodiment. As shown in Fig. 1, the printing system 1000 includes a host computer 101, a printing device 102, a pointing device 117, a keyboard 118, and a display unit 119, which are connected to each other so as to be able to communicate with each other. The host computer 101 is an information processing device, and includes an input interface 110, a CPU 111, a ROM 112, a RAM 113, an external storage device (recording medium) 114, an output interface 115, an input / output interface 116, and a NETIF 120. Note that, for example, a desktop personal computer can be used as the host computer 101, but is not limited thereto, and for example, a notebook personal computer, a tablet terminal, a smartphone, etc. can also be used.
[0014] The CPU 111 executes programs stored in the ROM 112 and the external storage device 114. The ROM 112 stores an initialization program. The external storage device 114 stores application programs, an operating system (OS), print data generation software, and various other data. In this embodiment, the host computer 101 is equipped with Windows 11 by Microsoft (registered trademark) as the OS. The RAM 113 is used as a work memory or the like when various programs stored in the external storage device 114 are executed, and the various programs are operable within the host computer 101. The input interface 110 is connected to a pointing device 117 and a keyboard 118 as input devices. The output interface 115 is connected to a display unit 119 as a display device. The display unit 119 displays, for example, a print setting screen and a detailed setting screen, which will be described later. The NETIF 120 is a network interface, and controls data transfer between the external device and the network. The input / output interface 116 is connected to the printing device 102. This allows the host computer 101 to communicate with printing devices 102 from a plurality of manufacturers, regardless of the manufacturer of the printing device 102, that is, to process information between the host computer 101 and printing devices 102 from a plurality of manufacturers.
[0015] The printing device 102 may be, but is not limited to, a multi-function peripheral (MFP) having multiple functions such as copying, printing, and faxing. In the present embodiment, the printing performed by the printing device 102 is electrophotographic printing, but is not limited to this, and may be, for example, inkjet printing. In the present embodiment, the host computer 101 and the printing device 102 are configured as separate devices, but are not limited to this. For example, the host computer 101 and the printing device 102 may be configured as an integrated device.
[0016] <Software-centric printing system configuration> FIG. 2 is a block diagram showing the software configuration of the printing system. FIG. 2(a) is a diagram showing a general configuration when the extension application (program) 204 is not associated with the general-purpose printing software (general-purpose program) 202 and the printing device 102. FIG. 2(b) is a diagram showing a configuration when the extension application 204 is associated with the general-purpose printing software 202 and the printing device 102. The general-purpose printing software 202 is a program that can be used in common for printing on the printing devices 102 of multiple manufacturers, and is pre-installed in the OS. A program that operates based on IPP (Internet Printing Protocol) is used as this general-purpose printing software 202. The extension application 204 is an extension program (a program that executes a control method) that can extend the functions of the general-purpose printing software 202, and is sometimes called "printing software". The extension application 204 is stored in the external storage device 114 together with the OS (general-purpose printing software 202), for example. As a result, the host computer 101 has the general-purpose printing software 202 and the extension application 204.
[0017] <If no extension application is associated> With reference to FIG. 2(a), a case where the extended application 204 is not associated with the general-purpose printing software 202 and the printing device 102 will be described. The drawing application 201 is software that creates content (print data) to be printed by the printing device 102. The drawing application 201 is not particularly limited, and examples thereof include a word processing application and a spreadsheet application. The drawing application 201 issues a print instruction to the OS by receiving a print request from a user via, for example, the keyboard 118. The print instruction includes print setting information for instructing the operation of the general-purpose printing software 202 and the printing device 102. The print setting information is also called a "Print Ticket (PT)". In order to output the print setting information, the drawing application 201 can display a print setting screen 300A (see FIG. 3(a)) provided by any one of the general-purpose printing software 202, the OS, and the drawing application 201 on the display unit 119. In addition, by operating (pressing) a control 305 in the print setting screen 300A, the general-purpose printing software 202 can display a detailed setting screen 300B (see FIG. 3(b)) or a detailed setting screen 300C (see FIG. 3(c)) on the display unit 119. The print setting screens 300A to 300C will be described later. The print setting screen 300A includes setting items indicating print functions that can be set and control items indicating their setting values according to capability information acquired from the general-purpose printing software 202, that is, information that can be set as print settings. The capability information is information regarding the capability of the printing device 102 to perform printing, and is also called Print Capabilities (hereinafter sometimes referred to as "PC"). In addition, based on this capability information, it is also possible to determine whether the printing device 102 is capable of executing a tint block image data generation process (determination step). The "tint block image data generation process" refers to a process of generating image data of a tint block image that stands out when copied.
[0018] The general-purpose printing software 202 determines the PC based on the printing capability information 203. The printing capability information 203 is data indicating printing capabilities that describes all configurable printing functions, their setting values, and the exclusive relationships between the setting values. The printing capability information 203 is also called PDC (Print Device Capabilities). The printing capability information 203 is included in a configuration file of the general-purpose printing software 202 and is arranged in the external storage device 114 as an unchangeable file. Alternatively, the printing capability information 203 is dynamically generated by the general-purpose printing software 202. Specifically, the general-purpose printing software 202 acquires attribute data of the printing device 102 from the printing device 102. The general-purpose printing software 202 generates the printing capability information 203 according to the attribute information in the attribute data. When the printing capability information 203 is dynamically generated in this way, the printing capability information 203 can be edited. The attribute data of the printing device 102 is a response acquired by issuing an IPP "Get-Printer-Attributes" operation to the printing device 102. The response includes functions that can be specified by the printing device 102, that is, attribute information indicating the capabilities of the printing device 102, and setting values related to the attribute information. The response is also stored in the RAM 113.
[0019] With this configuration, the general-purpose printing software 202 allows the user to specify print functions available on the printing device 102 according to the printing device 102 connected to the general-purpose printing software 202. This allows the user to specify print functions available on the printing device regardless of the printing device 102 connected to the general-purpose printing software 202, that is, even if a printing device with different functions or a printing device developed by a different printer manufacturer is connected. In this embodiment, the general-purpose printing software 202 is configured to use the "IPP Class Driver" installed in Windows (registered trademark) 11. The "IPP Class Driver" is a printer driver that executes print processing according to the specifications of a standard printing protocol called IPP, and is included in the OS package. The "IPP Class Driver" is not a specific printer driver according to the model of the printing device 102, but a standard class driver that can be commonly used by the printing devices 102 of each printer manufacturer regardless of the printer manufacturer. The "IPP Class Driver" also acquires capability information of the printing device 102 and generates print capability information 203 based on the acquired information. In addition, the general-purpose printing software 202 can be associated with an extension application 204. This allows the general-purpose printing software 202 to execute functions that are not available in the general-purpose printing software 202. The IPP ClassDriver (general-purpose printing software 202) cannot execute a background pattern image data generation process (image data generation process) for generating image data of a background pattern image, that is, it does not support the execution of the background pattern image data generation process. This is because the background pattern image data generation process is a function that is executed independently by the printing device 102 manufactured by the printer manufacturer. The extension application 204 can extend the background pattern image data generation process that the IPP ClassDriver cannot execute so that it can be executed. In this embodiment, the IPP ClassDriver cannot execute the background pattern image data generation process, and the extension application 204 can extend the background pattern image data generation process so that it can be executed, but this is not limited to this.For example, the IPP ClassDriver may execute a part of the processing for generating background pattern image data, and the extension application 204 may supplement the deficiencies of the processing for generating background pattern image data, thereby further expanding the scope of execution.
[0020] <Texture feature> Here, the background pattern function will be described. A background pattern image (sometimes simply called a background pattern) is an image that emerges when copied, that is, an image that is hidden and becomes visible. In this embodiment, the background pattern image has a background portion that disappears after copying, and a latent image portion that remains after copying. The latent image portion is made up of relatively large dots, and the background portion is made up of dots smaller than the dots in the latent image portion. Then, the latent image portion and the background portion can be added to the document so that each area has the same density. Even if the characters "No copying" are drawn with large dots in the latent image portion, the output printed by the printing device 102 and outputted has the same density as the small dots in the background portion, and the characters "No copying" cannot be read. Then, when this outputted object is copied, due to the dot reproduction limit of the copying machine and the influence of background removal processing, etc., the background portion made up of small dots disappears in the copy, and only the latent image portion made up of large dots remains. As a result, only the characters "No copying" emerge in the copy. The "watermark function" is a function that prevents unauthorized copying.
[0021] FIG. 9 is a diagram showing an example of a tint block image. FIG. 9(a) shows a sample image 1301 of the tint block image. FIG. 9(b) is a diagram showing an enlarged portion of FIG. 9(a). As shown in FIG. 9(b), the sample image 1301 has a latent image portion 1304 constituting the character "COPY" and a background portion 1305 which is the background of the character "COPY". The latent image portion 1304 is composed of a plurality of large dots 1302 which are relatively large in size. The background portion 1305 is composed of a plurality of small dots 1303 which are smaller than the large dots 1302. Both the large dots 1302 and the small dots 1303 are given as isolated full dots (8 bits of data out of 8 bits). When adjusting the density of the latent image portion 1304, the size of the large dots 1302 is changed. For example, when adjusting the density of the latent image portion 1304 to be higher, the size of the large dots 1302 is enlarged, that is, made larger. On the other hand, when adjusting the density of the latent image portion 1304 to be lower, the size of the large dots 1302 is reduced, that is, made smaller. In this embodiment, when adjusting the density of the latent image portion 1304, for example, in a unit of 10×10 pixels, the size of one large dot 1302 can be changed from 0 to 36 (a square of 6 pixels×6 pixels). When adjusting the density of the background portion 1305, the number of small dots 1303 is changed. For example, when adjusting the density of the small dots 1303 to be higher, the number of small dots 1303 per unit area is increased, that is, made larger. On the other hand, when adjusting the density of the small dots 1303 to be lower, the number of small dots 1303 per unit area is decreased, that is, made smaller. Note that, in adjusting the density of the background portion 1305, for example, in a unit of 16×16 pixels, it is preferable to arrange 0 to 64 small dots 1303 of 1 pixel×2 pixels so as to prevent them from contacting each other. Moreover, "0" in FIG. 9(a) is a fine adjustment value for the density of the background portion (see FIGS. 12(c) and 12(d)).
[0022] FIG. 10 is a flowchart showing an image data generation process for generating image data of a tint block image. A program based on the flowchart shown in FIG. 10 is executed, for example, by the CPU 111 of the host computer 101 or the CPU of the printing device 102. Here, the CPU 111 of the host computer 101 and the CPU of the printing device 102 are simply referred to as the "CPU". FIG. 11 is an image diagram showing an example of a latent image portion and a background portion. As shown in FIG. 10, in step S1401, the CPU rasterizes the font of a character string included in the tint block image. For example, the "C" in "COPY" is generated as an image 1501 shown in FIG. 11(a).
[0023] In step S1402, the CPU generates a pattern of the latent image portion. In this generation, for example, data is generated in which full dots of 3×3=9 pixels are added to a white background of a unit of 10×10. Then, by repeatedly arranging this pattern, the pattern of the image 1502 shown in FIG. 11(b) is generated.
[0024] In step S1403, the CPU composites the image 1501 generated in step S1401 and the image 1502 generated in step S1402. This composite generates the image 1503 shown in Fig. 11(c). In the image 1503, for example, the letter "C" is generated with large dots.
[0025] In step S1404, the CPU rasterizes the font of the character string included in the tint block image. For example, the "C" in "COPY" is generated as image 1504 shown in FIG. 11(d). Note that in step S1404, the "C" may be made bold. This creates a gap between the latent image portion and the background portion.
[0026] In step S1405, the CPU generates a pattern for the background. In this generation, data is generated in which 10 groups of 1 pixel x 2 pixel full dots are distributed and arranged on a white background of, for example, 16 x 16 units. Then, by repeatedly arranging this pattern, the pattern of the image 1505 shown in Fig. 11(e) is generated.
[0027] In step S1406, the CPU composites the image 1504 generated in step S1404 and the image 1505 generated in step S1405. This composite generates the image 1506 shown in Fig. 11(f). In the image 1506, for example, only the "C" is white, and the rest is generated with small dots as the background.
[0028] In step S1407, the CPU composites the image 1503 generated in step S1403 and the image 1506 generated in step S1406. Through this composite, an image 1507 shown in Fig. 11(g) is generated as image data of the tint block image.
[0029] <Density adjustment to achieve the effect of a background pattern image> The calibration function of the tint block image will be described. By implementing the calibration function, the effect of the tint block image is enhanced. As described above, the tint block image is effective by outputting large dots and small dots at a constant density. However, small dots may not be output at a constant density due to, for example, the printing performance of a copier (printer) or the quality of the paper medium on which the tint block image is printed. In addition, when outputting the tint block image, it is necessary to perform density adjustment so that the latent image portion and the background portion are output at the same density. Therefore, the calibration function of the tint block image prints a sample for density adjustment, and it is possible to reset the density of the latent image portion and the background portion that is considered to be optimal from the output product. The calibration function of the tint block will be described in detail later.
[0030] Returning to the description with reference to FIG. 2(a), the OS generates intermediate data (sometimes called "input data") based on a print instruction output from the drawing application 201, and transmits the intermediate data to the general-purpose printing software 202. The data output from the drawing application 201 for printing is not particularly limited, and is preferably, for example, data in an XML Paper Specification format (XPS format). The data output from the drawing application 201 for printing may be data in a Graphic Device Interface format (GDI format). When an IPP Class Driver is used as the general-purpose printing software 202, if the data output from the drawing application 201 is GDI format data, the OS converts the GDI format data into XPS format data. Then, the OS transmits the converted XPS format data to the general-purpose printing software 202 as intermediate data. If the data output from the drawing application 201 is XPS format data, the OS transmits the XPS format data to the general-purpose printing software 202 as intermediate data. The intermediate data includes drawing data, which is information on characters, figures, and the like to be formed on a print medium, and print setting information set by the user.
[0031] The general-purpose printing software 202 converts the intermediate data into print data (image data) that can be processed by the printing device 102, i.e., printable (conversion process), and transmits the data to the printing device 102. Here, the "print data" in this embodiment is Page Description Language (PDL) data conforming to IPP. The PDL data is, for example, data in a Portable Document Format (PDF) or PWG-Raster format. The print data includes drawing data, which is information such as characters and figures to be formed on a print medium, and print setting attribute information that is generated based on print setting information set by a user and specifies print settings. The print setting attribute information includes functions that can be specified by the printing device 102, i.e., attribute information indicating the capabilities of the printing device 102, and setting values related to the attribute information.
[0032] The printing device 102 prints on a print medium based on the print data sent from the general-purpose printing software 202. At this time, the printing device 102 can form the drawing data included in the print data on the print medium by performing an operation according to the print setting attribute information included in the print data. Note that the print setting attribute information includes, for example, print quality such as image quality priority or speed priority, attribute information for specifying double-sided printing or single-sided printing, and the setting value of the attribute information. For example, if the print setting attribute information includes attribute information specifying double-sided printing, the printing device 102 can execute double-sided printing.
[0033] <If an extension application is associated> With reference to FIG. 2(b), a case where the extension application 204 is associated with the general-purpose printing software 202 and the printing device 102 will be described. As shown in FIG. 2(b), unlike FIG. 2(a), the extension application 204 is added. That is, the host computer 101 has the drawing application 201, the general-purpose printing software 202, the print function information 203, and further has the extension application 204. The extension application 204 is software for extending the function of the general-purpose printing software 202. Note that the extension application 204 is software that is not included (bundled) in the OS in advance. Therefore, the extension application 204 is downloaded from a server (not shown) via the Internet by the user operating the host computer 101, and is installed in the host computer 101. Alternatively, when the printing device 102 is connected to the host computer 101, the extension application 204 may be automatically installed in the host computer 101 based on this connection. Specifically, when the printing device 102 is connected to the host computer 101, the OS acquires device identification information from the printing device 102. The OS may download the extension application 204 corresponding to the device identification information from a server via the Internet and install it. As a result, the general-purpose printing software 202 and the extension application 204 are held as separate control programs in the host computer 101. The general-purpose printing software 202 and the extension application 204 may be updated and upgraded. In this case, the general-purpose printing software 202 update process and the extension application 204 update process may be performed at the same time or at different times. The trigger for the host computer 101 to acquire the general-purpose printing software 202 and the trigger for the host computer 101 to acquire the extension application 204 may be the same trigger or different triggers.Furthermore, when the extension application 204 is installed, the OS associates the extension application 204 with the general-purpose printing software 202 and the printing device 102 .
[0034] As shown in FIG. 2B, the extension application 204 can exchange information (send and receive information) with the general-purpose printing software 202 and the printing device 102. That is, the extension application 204 is associated with the general-purpose printing software 202 and the printing device 102. In this embodiment, the extension application 204 has a print setting screen extension unit 205, a print function extension unit 206, an intermediate data editing unit 207, and a notification unit 209. The extension application 204 also has shared information 208 that can be accessed from each of the print setting screen extension unit 205, the print function extension unit 206, the intermediate data editing unit 207, and the notification unit 209. The shared information 208 is a file saved in the external storage device 114 or information stored in the RAM 113. The extension application 204 can write and read the shared information 208 by using an API (Application Program Interface) provided by the OS.
[0035] The extension application 204 may terminate the operation of the entire extension application 204 with the end of the processing of each unit from the print setting screen extension unit 205 to the notification unit 209. In this case, the OS will start the extension application 204 every time it receives a processing execution request of each unit. Also, the OS terminates the operation of the entire extension application 204 when, for example, the processing of the print setting screen extension unit 205 ends. Also, the extension application 204 may cancel the processing of each unit from the print setting screen extension unit 205 to the notification unit 209 during the processing of the unit. In this case, the job being processed on the print queue is deleted by the OS. As described above, the drawing application 201 issues a print instruction to the OS by receiving a print request from the user. Also, the drawing application 201 can display a print setting screen. In the configuration shown in FIG. 2(b), the drawing application 201 can display a print setting screen 300A (detailed setting screen 300C) provided by the print setting screen extension unit 205 (extension application 204). Furthermore, the print setting screen expansion unit 205 can store detailed settings set by the user in the shared information 208. The print setting screen expansion unit 205 will be described in detail later.
[0036] The intermediate data editing unit 207 acquires intermediate data from the general-purpose printing software 202. The intermediate data editing unit 207 converts the intermediate data into print data, and then transmits the print data to the printing device 102. The intermediate data editing unit 207 also acquires detailed setting information from the shared information 208 and adds detailed settings to the print data. The printing device 102 performs printing on paper based on the print data from the intermediate data editing unit 207. The extension application 204 may be configured to acquire print data generated by the general-purpose printing software 202 and add detailed settings to the print data. Even in the configuration of FIG. 2B, there are cases where the background pattern and the calibration of the background pattern are not performed. In this case, the general-purpose printing software 202 may transmit the print data to the printing device 102 without going through the extension application 204.
[0037] The print function extension unit 206 can edit the print function information 203 (PDC) generated by the general-purpose printing software 202 or the OS. This allows the addition of functions provided by the extension application 204. In addition, it is also possible to add a function (such as a functional pattern or pattern calibration function) that can be executed by the printing device 102 but not by the general-purpose printing software 202, and to add an exclusive relationship between the setting values of the print functions. The OS starts the print function extension unit 206 when the extension application 204 is first associated with the printing device 102 and the general-purpose printing software 202. The OS may also start the print function extension unit 206 at other times (such as when the OS is started). Even if a function related to printing is expanded later by such an activation, the print function extension unit 206 can detect the expanded function and add it to the print function information 203. An example of a function related to printing being expanded later is adding an optional device (such as a finisher) to the printing device 102 later.
[0038] When an error occurs in the printing device 102, the notification unit 209 can notify that fact. For example, when an out-of-paper error occurs in the printing device 102, the general-purpose printing software 202 detects the occurrence of this error. The OS uses a notification function called a toast notification, which is one of the functions of the OS, to display the occurrence of the out-of-paper error, which is the detection result of the general-purpose printing software 202, as a message on the display unit 119. When the user operates the toast notification, the notification unit 209 is called by the OS, and a user interface screen of the notification unit 209 is displayed. On the user interface screen (UI screen), for example, a detailed message regarding the out-of-paper error, a method for loading paper, etc. can be displayed.
[0039] As described above, in this embodiment, the extended application 204 can be said to have the following four functions. The first function is a function to display a setting screen. This function is executed by the print setting screen extension unit 205. The second function is a function to edit intermediate data, convert it into print data, and add detailed settings to the print data. This function is executed by the intermediate data editing unit 207. The third function is a function to extend functions that can be specified by the print data generation software. This function is executed by the print function extension unit 206. The fourth function is a function to display a screen in response to an error occurrence in the printing device 102. This function is executed by the notification unit 209. Note that the configuration of the extended application 204 is not limited to a configuration having these four functions, and it is preferable to have at least one function, and may also be a configuration having other functions. In addition, once the extended application 204 transmits print data to the printing device 102, it cannot display a screen such as a guide linked to the print data during the processing of each unit.
[0040] <An example of the print settings screen / detailed settings screen> FIG. 3 is a diagram showing an example of a screen displayed on the display unit of the printing system. FIG. 3(a) is a print setting screen displayed by the drawing application 201. FIG. 3(b) is a detailed setting screen displayed in the case of a configuration in which the extended application 204 is not associated. FIG. 3(c) is a detailed setting screen displayed in the case of a configuration in which the extended application 204 is associated. FIG. 3(d) is a tint block calibration screen displayed when the control 314 of the detailed setting screen 300C shown in FIG. 3(c) is operated. FIG. 3(e) is a latent image portion density adjustment screen displayed when the control 318 of the detailed setting screen 300C shown in FIG. 3(c) is operated. FIG. 3(f) is a reference value setting screen displayed when the control 319 of the tint block calibration screen 300D shown in FIG. 3(d) is operated. Note that the units and modules that display each screen are not particularly limited. For example, the print setting screen extension unit 205 may be configured to only generate a display screen. In this case, the print setting screen extension unit 205 transmits the generated display screen to the drawing application 201 via the general-purpose printing software 202. The drawing application 201 may be configured to display the acquired display screen.
[0041] The print setting screen 300A shown in FIG. 3(a) includes controls (buttons) 301, 302, 303, 304, and 305. In the control 301, the printing device 102 used for printing, the print orientation in the printing device 102, and the number of copies to be printed in the printing device 102 can be set. In FIG. 3(a), as an example, the printing device 102 used for printing is set to "printer 200a", the print orientation in the printing device 102 is set to "portrait", and the number of copies to be printed in the printing device 102 is set to "1". In the control 302, a preview screen is displayed. In the control 303, the start of printing in the printing device 102 can be instructed. In the control 304, the cancellation of printing in the printing device 102 can be instructed. In the control 305, detailed settings can be made. By operating the control 305, an additional print screen is displayed by the general-purpose printing software 202 or the print setting screen extension unit 205.
[0042] The detailed setting screen 300B shown in FIG. 3(b) includes controls 306, 307, 308, and 309. In the control 306, the type of paper used in printing on the printing device 102 can be selected and set. In FIG. 3(b), "plain paper" is selected as an example. In the control 307, the paper size used in printing on the printing device 102 can be selected and set. In FIG. 3(b), "A4" is selected as an example. In the control 308, the paper feed slot for the paper used in printing on the printing device 102 can be selected. In FIG. 3(b), "automatic" is selected as an example. In the control 309, the settings in the controls 306 to 308 can be ended. In addition, by operating the control 309, the print setting screen 300A shown in FIG. 3(a) can be returned to.
[0043] The detailed setting screen (setting screen) 300C shown in FIG. 3(c) includes controls 306, 307, 308, and 309, similar to the detailed setting screen 300B. In addition, the detailed setting screen 300C includes additional controls 310, 312, and 314. In the control 310, it is possible to select whether or not to execute background pattern printing (background pattern image data generation processing). By operating the control 310, a list 311 is displayed. The list 311 includes ON (printing background pattern) and OFF (not printing background pattern), and one of these can be selected. In FIG. 3(c), "OFF" is selected as an example. In this way, the control 310 functions as a selection section for selecting whether or not to execute background pattern printing. In the control 312, it is possible to select the color of the background pattern. By operating the control 312, a list 313 is displayed. The list 313 includes black, cyan, and magenta, and one of these can be selected. In FIG. 3(c), "black" is selected as an example. In this way, the control 312 functions as a color determination unit that determines the color of the background pattern. The control 314 can be used to calibrate the background pattern. By operating the control 314, a background pattern calibration screen 300D shown in FIG. 3(d) is displayed.
[0044] Here, the reason why the items included in the detailed setting screen 300B shown in FIG. 3B are different from the items included in the detailed setting screen 300C shown in FIG. 3C will be described. The detailed setting screen 300B and the detailed setting screen 300C are generated based on the printing function information (capability information). As described above, the general-purpose printing software 202 does not support the background pattern or the calibration function of the background pattern. Therefore, the general-purpose printing software 202 alone cannot add the background pattern or the calibration function of the background pattern to the printing function information. Also, even if the printing function information originally includes the background pattern or the calibration function of the background pattern, the general-purpose printing software 202 cannot interpret the background pattern or the calibration function of the background pattern included in the printing function information. Therefore, the general-purpose printing software 202 alone cannot display the background pattern or the calibration setting of the background pattern on the detailed setting screen 300B. Therefore, the printing function extension unit 206 adds the background pattern or the calibration function of the background pattern to the printing function information 203. Then, the printing setting screen extension unit 205 refers to the capability information and displays the detailed setting screen 300C. This allows the extension application 204 to display the background pattern and the calibration settings for the background pattern on the detailed setting screen.
[0045] A background pattern calibration screen 300D shown in FIG. 3(d) includes a control 316, a control 318, a control 319, a control 320, a control 321, a control 322, a control 323, and a thumbnail 324. The control 316 allows the user to specify the color of the background pattern to be adjusted. By operating the control 316, a list 317 is displayed. The list 317 includes black, cyan, and magenta, any one of which can be specified as the color to be adjusted. In FIG. 3(d), "black" is selected as an example.
[0046] The control 318 allows the user to adjust the density of the latent image portion. By operating the control 318, a latent image portion density adjustment screen 300E shown in FIG. 3(e) is displayed. The latent image portion density adjustment screen 300E includes a control 325. By operating the control 325, the user can specify the density value of the latent image portion at intervals of 1 value from 0 to 36. In this way, the control 318 and the latent image portion density adjustment screen 300E function as a density adjustment section that adjusts the density of the latent image portion. The control 319 allows the user to set a reference value. By operating the control 319, a reference value setting screen 300F shown in FIG. 3(f) is displayed. The reference value setting screen 300F includes a control 326, a control 327, and sample data 328. In the control 326, the user can specify the reference value of the density of the background portion at intervals of 4 values from 0 to 64. In the control 327, sample data 328 is generated and printed out based on the values in the control 325 and the values in the control 326. The control 320 can finely adjust the density of the background portion by accepting a numerical value from -7 to +7. In this manner, the control 319, the control 320 and the reference value setting screen 300F function as a density adjustment section that adjusts the density of the background portion.
[0047] In the control 321, sample data is generated based on the values set in the controls 316, 318, 319, and 320, and a print is output. The control 321 functions as a print instruction unit that instructs printing of a sample (sample) of the background pattern. Note that a thumbnail (sample image of the background pattern) 324 is displayed as sample data. In this way, the background pattern calibration screen 300D includes the control 321 that functions as a print instruction unit and the thumbnail 324 as a sample image of the background pattern as an information screen including information about the background pattern. Note that the information screen preferably includes both the print instruction unit and the sample image of the background pattern, but is not limited to this, and it is sufficient if at least one of them is included. In addition, by operating the control 322, the values set in the controls 316, 318, 319, and 320 are saved and the process ends. By operating the control 323, the values set in the controls 316, 318, 319, and 320 are canceled and the process ends. In this way, the execution conditions of the tint block printing can be set on the detailed setting screen 300C (setting process). In this embodiment, the detailed setting screen 300C includes, as the execution conditions of the tint block printing, a selection section for selecting whether or not to execute the tint block printing, a color determination section for determining the color of the tint block, and a density adjustment section for adjusting the density of the latent image section and background section, but is not limited to these. It is preferable that the execution conditions of the tint block printing include at least one of these. Then, the intermediate data generated by the general-purpose printing software 202 is converted into image data that can be printed by the printing device 102 for the tint block image based on each execution condition.
[0048] FIG. 12 is an image diagram showing an example of a sample related to a tint block. FIG. 12(a) is an image diagram of a reference sample. FIG. 12(b) is an enlarged view of a patch 1602 of a reference sample 1601 shown in FIG. 12(a). FIG. 12(c) is a sample for finely adjusting the density of a background portion. FIG. 12(d) is an enlarged view of a sample 1607 shown in FIG. 12(c). FIG. 13 is a flowchart showing a tint block calibration process. As shown in FIG. 13, in step S1701, the extension application 204 accepts the density of the latent image portion from the latent image portion density adjustment screen 300E. As described above, a latent image portion made up of large dots is made up of large dots. Large dots are more stable than small dots with respect to the durability of the printing device 102 and the type of paper medium. However, when the latent image portion is faint or too dark compared to the small dots of the background portion, a value between 0 and 36 is input to the control 325 of the latent image portion density adjustment screen 300E as the density value of the latent image portion. In this way, the density of the latent image portion is adjusted.
[0049] In step S1702, the extended application 204 instructs the printing device 102 to generate and output a reference sample for adjusting the density of the background portion. For example, when the density of the background portion and the density of the latent image portion are clearly different, a reference sample 1601 shown in FIG. 12A is generated and output in which patches of the background portion are arranged with a density interval. A patch 1603 shown in FIG. 12B is composed of a background portion 1604 and a latent image portion 1605. The latent image portion 1605 is common to all patches in the reference sample 1601, and is output with the density of the latent image portion set in step S1701. The background portion 1604 is a 16×16 pixel unit in which 16 background dots of 1 pixel×2 pixels (see the portion indicated by the reference symbol 1606) are discretely arranged so that they are not adjacent to each other, and the pattern is repeatedly arranged. Similarly, other patches in the reference sample 1601 also indicate that background dots are added by the number below the patch. In this single chart, patches are arranged in which the number of dots in the background portion is changed every four, from 0, 4, ..., to 64. Since the density of the background portion of this reference sample 1601 is changed over a relatively wide range, it is believed that a patch of the background portion close to the latent image portion exists somewhere. Therefore, by outputting one of these reference samples 1601, it is possible to grasp roughly what the density of the background portion should be. Also, the reference sample 1601 is output by operating the control 327 on the latent image portion density adjustment screen 300E.
[0050] In step S1703, the extension application 204 accepts the reference value from the latent image portion density adjustment screen 300E as the density of the background portion. Here, the number "16 (see the part indicated by the reference symbol 1606)" which selects a patch whose latent image portion and background portion are close to each other from the output of the reference sample 1601 is input to the control 326 of the latent image portion density adjustment screen 300E.
[0051] In step S1704, the extension application 204 instructs the printing device 102 to generate and output a sample for fine-tuning the density of the background part. Here, for example, a sample 1607 shown in FIG. 12C is generated and output as a sample for fine-tuning the density of the background part to make the density of the background part and the latent image part closer to each other. This sample 1607 is composed of 15 patches from -7 to +7 in which the density of the background part is changed by 1 for a patch 1608 consisting of the density of the latent image part selected in step S1701 and the density of the background part selected in step S1703. Note that the density of the latent image part of the patches on the sample 1607 is all the same density. Therefore, the density of the background part can be adjusted more finely than the reference value. In the patch 1609 shown in FIG. 12D, "COPY" is a latent image part, and the effect of the tint block can be actually imagined. Also, the sample 1607 is output by operating the control 321 on the tint block calibration screen 300D.
[0052] In step S1705, the extension application 204 accepts the numerical value obtained by adjusting the density of the background portion as a relative value. Here, based on the output of the sample 1607, the numbers -7 to +7, which are selected patches whose latent image portion and background portion are similar, are input to the control 320 of the tint block calibration screen 300D. Note that in this embodiment, the printing device 102 generates the reference sample 1601 and the sample 1607, but this is not limiting. For example, the extension application 204 may instruct the general-purpose printing software 202 to generate them, or the extension application 204 may generate them.
[0053] <Flowchart of the Print Function Extension Unit for editing print function information> FIG. 4 is a flowchart showing a process in which the print function extension unit edits the print function information. The program based on the flowchart shown in FIG. 4 is executed by the CPU 111 controlling the print function extension unit 206. FIG. 5 is a diagram showing an example of a list of capability information of the printing device. FIG. 6 is a diagram showing an example of a list of print functions supported by an extension application. FIG. 7 is a diagram showing an example of a list of capability information of general-purpose printing software. As shown in FIG. 4, in step S401, the print function extension unit 206 acquires capability information from the printing device 102 (acquisition step). The capability information is a setting value included in a response acquired by issuing an IPP "Get-Printer-Attributes" operation to the printing device 102. The setting value is attribute information indicating a function that can be specified in the printing device 102 and is related to the attribute information. A table 501 shown in FIG. 5 shows a list of capability information of the printing device 102. The capability information includes, for example, information on the size of paper used in printing in the printing device 102. Other information includes information regarding the type of paper (media) used for printing by the printing device 102, information regarding the paper feed slot for the paper used for printing by the printing device 102, and information regarding tint block printing that can be performed by the printing device 102.
[0054] In step S402, the print function extension unit 206 acquires the print functions supported by the extension application 204 from the shared information 208. The shared information 208 stores a list of print functions supported by the extension application 204. This list includes all print functions that the extension application 204 can process and their setting values. Table 601 shown in FIG. 6 includes information on paper sizes supported by the extension application 204 as print functions. Other information includes information on paper types (media) supported by the extension application 204, information on paper feed slots supported by the extension application 204, and information on tint block printing supported by the extension application 204. The print functions supported by the extension application 204 may be updated by updating the extension application 204, etc.
[0055] In step S403, the print function extension unit 206 acquires the print function information 203 created by the general-purpose printing software 202 from the OS. The print function information 203 is created based on the capability information 501 acquired by the general-purpose printing software 202 from the printing device 102. The print function information 203 (PDC) created by the general-purpose printing software 202 includes only the print functions supported by the general-purpose printing software 202 from the capability information acquired from the printing device 102. For example, the table 601 shown in FIG. 6 includes "7x10 inches" and "Regular size 6" as paper sizes, but the general-purpose printing software 202 does not support the corresponding paper sizes. Therefore, the print function information 203 does not include the corresponding paper sizes. The print function extension unit 206 adds functions and options to the print function information 203, which enables the extension application 204 to compensate for the lack of functions of the general-purpose printing software 202. Furthermore, the print function extension unit 206 can also delete unnecessary functions and options from the print function information 203 created by the general-purpose printing software 202 .
[0056] Steps S404, S405, and S406 are processes that are repeatedly performed for the list of functions included in the capability information acquired in step S401 from the printing device 102. In this embodiment, steps S404, S405, and S406 are repeatedly performed for all 13 options included in table 501.
[0057] In step S404, the print function extension unit 206 judges whether the currently processed function or option exists in the print function information 203 generated by the general-purpose printing software 202. If it is judged in step S404 that the function or option exists in the print function information 203, the process is terminated if the last item in the options is being processed. Alternatively, if the last item in the options is not being processed, the next item in the options is selected and step S404 is executed again. On the other hand, if it is judged in step S404 that the function or option does not exist in the print function information 203, the process proceeds to step S405. For example, in this embodiment, the table 501 includes the paper size "A4", and the table 701 also includes the paper size "A4". In this case, in step S404, it is judged that the currently processed function or option exists in the print function information 203. In contrast, the table 501 includes the watermark printing "OFF", but the table 701 does not include the watermark printing "OFF". In this case, in step S 404 , it is determined that the function or option currently being processed does not exist in the print function information 203 .
[0058] In step S405, the print function extension unit 206 judges whether or not the currently processed function (option) is present among the functions (options) supported by the extension application 204. If it is judged in step S405 that the currently processed function is present, the process proceeds to step S406. On the other hand, if it is judged in step S405 that the currently processed function is not present, the process ends if the last item in the options is being processed, as in the case of "Yes" being judged in step S404. Alternatively, if the last item in the options is not being processed, the next item in the options is selected and step S404 is executed again. For example, in this embodiment, if the currently processed function is "off" for background printing, the background printing "off" also exists in table 601. Therefore, in step S405, it is judged that the currently processed function is present.
[0059] In step S406, the print function extension unit 206 adds the function (option) currently being processed to the print function information 203. After step S406 is executed, the process ends if the last item among the options is being processed, just as in the case where "Yes" is determined in step S404. Alternatively, if the last item among the options is not being processed, the next item among the options is selected and step S404 is executed again.
[0060] As described above, the extension application 204 can add functions (options) that are not supported by the general-purpose printing software 202, are supported by the printing device 102, and are compatible with the extension application 204 to the printing function information 203. Then, based on the printing function information 203 edited by this adding process, capability information (PC) is generated. Furthermore, the print setting screen extension unit 205 generates a display screen based on this capability information, thereby extending the functions that are not supported by the general-purpose printing software 202 and displaying the detailed setting screen 300C shown in FIG. 3(c).
[0061] <Processing after the drawing application accepts print settings> FIG. 8 is a sequence diagram showing the process executed between the drawing application, the general-purpose printing software, the extension application, and the printing device after the drawing application accepts the print setting. Note that, here, a series of processes for calibrating the tint block, adjusting the density, and then printing the tint block will be described. The processes in the drawing application, the general-purpose printing software, and the extension application are executed by the CPU 111 of the host computer 101. This processing program is stored in the external storage device 114. Then, the CPU 111 reads the processing program from the external storage device 114 to the RAM 113 and executes it. Also, the processes in the printing device 102 are executed by the CPU (not shown) of the printing device 102. Here, for ease of understanding, a case where the sample 1607 out of the reference sample 1601 and the sample 1607 is output will be described. Also, the software configuration of the printing system 1000 is the software configuration shown in FIG. 2(b).
[0062] 8, in step S801, the drawing application 201 accepts print settings from the user. The user can instruct the drawing application 201 to set print settings by operating the pointing device 117 or the keyboard 118, for example.
[0063] In step S802, the drawing application 201 displays the print setting screen 300A shown in FIG.
[0064] In step S803, the drawing application 201 accepts a detailed setting instruction from the user. The user can instruct the detailed setting by, for example, operating the pointing device 117 or the keyboard 118 to select the control 305 on the print setting screen 300A.
[0065] In step S804, the drawing application 201 requests the general-purpose printing software 202 to display detailed settings.
[0066] In step S805, the general-purpose printing software 202 requests the extension application 204 to display detailed settings.
[0067] In step S806, the print setting screen extension unit 205 of the extension application 204 displays the detailed setting screen 300C of Fig. 3(c). As described above, the print function extension unit 206 adds the tint block print setting to the print function information 203 (PDC). The print setting screen extension unit 205 can display the detailed setting screen 300C by referring to the capability information (PC) generated based on the added print function information 203.
[0068] In step S807, the print setting screen expansion unit 205 accepts the detailed settings on the detailed setting screen 300C by the user. Here, as an example, in the detailed setting screen 300C, the paper type "plain paper" is selected in the control 306, the paper size "A4" is selected in the control 307, and the paper feed port "automatic" is selected in the control 308 (see FIG. 3(c)). In this setting state, the print setting screen expansion unit 205 accepts that the user has operated the control 314 on the detailed setting screen 300C. As a result, the tint block calibration screen 300D shown in FIG. 3(d) is displayed. And, as an example, in the tint block calibration screen 300D, "black" is selected from the list 317 in the control 316 (see FIG. 3(d)). Also, in the tint block calibration screen 300D, the density of the latent image portion is adjusted as desired in the control 318, the reference value is set as desired in the control 319, and the density of the background portion is finely adjusted as desired in the control 320. In this setting state, the print setting screen expansion unit 205 accepts that the user has operated the control 321 on the tint block calibration screen 300D.
[0069] In step S808, the print setting screen expansion unit 205 requests the printing device 102 to print the sample 1607 shown in Fig. 12C. In addition to this request, the print setting screen expansion unit 205 transmits to the printing device 102 information related to the various settings on the tint block calibration screen 300D received in step S807.
[0070] In step S809, the printing device 102 receives the information transmitted in step S808. The printing device 102 generates data of the sample 1607 based on the information and outputs it. In this example, it is assumed that the reference sample 1601 (see FIG. 12(a)) or the sample 1607 is output.
[0071] In step S810, the print setting screen expansion unit 205 accepts the optimal values set by the user on the latent image portion density adjustment screen 300E (see FIG. 3(e)) and the reference value setting screen 300F (see FIG. 3(f)) based on the output produced in step S809.
[0072] In step S811, the print setting screen expansion unit 205 accepts the user's operation of the control 322 on the tint block calibration screen 300D and the operation of the control 309 on the detailed setting screen 300C in that order, and ends the detailed setting. The user can operate the control 322 and the control 309 by operating the pointing device 117 or the keyboard 118.
[0073] In step S812, the extension application 204 transmits detailed setting end information indicating that the detailed setting in step S811 has been ended to the general-purpose printing software 202.
[0074] In step S813, the general-purpose printing software 202 receives the detailed setting end information transmitted in step S812 from the extension application 204. The general-purpose printing software 202 transmits this detailed setting end information to the drawing application 201.
[0075] In step S814, the drawing application 201 accepts a print instruction from the user. The user can issue a print instruction by, for example, operating the pointing device 117 or the keyboard 118 to select a control 303 on the print setting screen 300A (see FIG. 3(a)).
[0076] In step S815, the drawing application 201 issues the print instruction received in step S814 to the general-purpose printing software 202.
[0077] In step S816, the general-purpose printing software 202 uses an OS module to generate intermediate data based on the print instruction in step S815.
[0078] In step S817, the general-purpose printing software 202 stores in the shared information 208 the print setting information (PT) based on the print instruction in step S815.
[0079] In step S818, the general-purpose printing software 202 transmits the drawing data of the intermediate data generated in step S816 to the extension application 204.
[0080] In step S819, the intermediate data editing unit 207 of the extension application 204 obtains the print setting information saved in step S817 from the shared information 208.
[0081] In step S820, the intermediate data editing unit 207 of the extension application 204 generates print data using the drawing data transmitted in step S818 and the print setting information acquired in step S819.
[0082] In step S821, the intermediate data editing unit 207 of the extension application 204 transmits the print data generated in step S820 to the printing device 102.
[0083] In step S822, the printing device 102 receives the print data transmitted in step S821. The printing device 102 interprets the print data and performs necessary image processing on the print data. The image processing here adds a tint block, the density of which has been adjusted in accordance with the settings in step S810, to the input data.
[0084] In step S823, the printing device 102 prints the print data that has been subjected to image processing in step S822, thereby outputting an image to which a tint block has been added.
[0085] As described above, in the printing system 1000, even if the general-purpose printing software 202 cannot select a background pattern or a calibration of the background pattern, the extension application 204 can select the background pattern and the calibration of the background pattern. The extension application 204 can cause the printing device 102 to execute background pattern printing (background pattern image data generation process) together with the general-purpose printing software 202 (execution step). As a result, the printing device 102 prints a printed matter in which unauthorized copying is prevented by the background pattern. In the description with reference to FIG. 8, the software configuration of the printing system 1000 is assumed to be the software configuration shown in FIG. 2(b), and the detailed setting screen 300C shown in FIG. 3(c) is displayed, but this is not limited thereto. For example, when a display request for detailed settings is made to the general-purpose printing software 202 in step S804, the general-purpose printing software 202 displays the detailed setting screen 300B shown in FIG. 3(b). In this case, after the control 309 on the detail setting screen 300B is operated, the general-purpose printing software 202 requests the extension application 204 to display an additional detail setting screen. Next, the extension application 204 may display an additional detail setting screen that allows the user to set a background pattern and a calibration of the background pattern. In addition, in this embodiment, the extension application 204 generates print data from the intermediate data generated by the general-purpose printing software 202, but this is not limited thereto, and for example, the extension application 204 itself may generate intermediate data.
[0086] <<Second embodiment>> Hereinafter, the second embodiment will be described with reference to Figs. 14 to 17, but the differences from the above-mentioned embodiment will be mainly described, and the description of the similar matters will be omitted. In the first embodiment, the extension application 204 generates print data including the settings of the background pattern and the calibration of the background pattern together with the general-purpose printing software 202. That is, the extension application 204 generates print data including the settings of the background pattern and the calibration of the background pattern together with the general-purpose printing software 202. This print data is transmitted to the printing device 102. The printing device 102 interprets the print data including the settings of the background pattern and the calibration of the background pattern, and generates and outputs sample print data for the composition of the background pattern and the calibration of the background pattern. Thus, in the first embodiment, the extension application 204 causes the printing device 102 to execute an image data generation process for generating image data of the background pattern together with the general-purpose printing software 202.
[0087] However, depending on the printing device 102, there may be cases where a generation unit for a sample for the background pattern or the calibration of the background pattern (hereinafter referred to as a "background pattern / sample generation unit") is not installed, that is, the background pattern image data generation process cannot be executed. In this case, it is preferable to generate print data after generating sample print data for the composition of the background pattern or the calibration of the background pattern, and transmit the print data to the printing device 102. Therefore, in this embodiment, based on the capability information of the printing device 102, it is determined whether or not the background pattern / sample generation unit is installed. If it is determined that the background pattern / sample generation unit is installed as a result of this determination, the extension application 204 generates print data reflecting the settings of the background pattern or the calibration of the background pattern, and transmits the print data to the printing device 102. On the other hand, if it is determined that the background pattern / sample generation unit is not installed, the extension application 204 generates sample print data for the composition of the background pattern or the calibration of the background pattern for the drawing data, and generates print data, and transmits the print data to the printing device 102. As a result, even if the printing device 102 does not have a background pattern / sample generation unit, it is possible to provide the user with a background pattern or a calibration function of the background pattern. This embodiment is similar to the first embodiment, except for the configuration of the printing system 1000 when the extension application 204 is associated, the PDC editing process, and the process after the drawing application 201 accepts the print settings.
[0088] <Software-centric printing system configuration> FIG. 14 is a block diagram showing the software configuration of the printing system according to the second embodiment. The block diagram shown in FIG. 14 shows the configuration when the extension application 902 is associated with the general-purpose printing software 202 and the printing device 102. As shown in FIG. 14, the host computer 101 has a drawing application 201, a general-purpose printing software 202, printing function information 203, and an extension application 902. The extension application 902 is communicably connected to the printing device 901. The printing device 901 is a printing device that does not have a background pattern and sample generation unit, unlike the printing device 102 in the first embodiment. The extension application 902 has a print setting screen extension unit 205, an intermediate data editing unit 207, a notification unit 209, a printing function extension unit 903, and a background pattern and sample processing unit 904. The printing function extension unit 903 generates a background pattern and a sample for the calibration of the background pattern in the extension application 204, even if it is determined that the printing device 901 does not have a background pattern or a calibration function for the background pattern based on the capability information acquired from the printing device 901. A background pattern and a background pattern calibration function are added to the printing function information 203. A background pattern / sample processing unit 904 performs background pattern synthesis and background pattern calibration for intermediate data (drawing data) from the general-purpose printing software 202 based on the background pattern and background pattern calibration settings.
[0089] <Flowchart of the Print Function Extension Unit for editing print function information> Fig. 15 is a flowchart showing a process in which the print function extension unit edits print function information. The program based on the flowchart shown in Fig. 15 is executed by the CPU 111 controlling the print function extension unit 903. The flowchart shown in Fig. 15 is a flowchart in which steps S1001 and S1002 are added to the flowchart shown in Fig. 14. Fig. 16 is a diagram showing an example of a list of capability information of a printing device.
[0090] As shown in FIG. 15, when the repeated processing of steps S404 to S406 is completed, the process proceeds to step S1001. Table 1101 shown in FIG. 16 shows a list of capability information of the printing device 901. This table 1101 includes, as capability information, information on the paper size, information on the paper type, and information on the paper feed slot, but unlike table 501 shown in FIG. 5, does not include information on background printing. Therefore, it is understood that the printing device 901 is not equipped with a background pattern / sample generation unit. Therefore, the background pattern and background pattern calibration function are not added to the printing function information 203 after the processing of steps S404 to S406 is completed.
[0091] In step S1001, the print function extension unit 903 determines whether or not the extension application 902 has a background pattern and sample processing unit 904, i.e., whether or not the background pattern and sample processing unit 904 is present. If it is determined in step S1001 that the background pattern and sample processing unit 904 is present, processing proceeds to step S1002. On the other hand, if it is determined in step S1001 that the background pattern and sample processing unit 904 is not present, processing ends. As described above, since the extension application 902 has the background pattern and sample processing unit 904, processing proceeds to step S1002.
[0092] In step S1002, the print function extension unit 903 adds information (options: off, on, sample print, reference sample print) about tint block printing supported by the extension application 902 in the table 601 shown in FIG.
[0093] As described above, the extension application 902 can add a function (option) that is not supported by the general-purpose printing software 202, is supported by the printing device 102, and is supported by the extension application 204 to the printing function information 203. The extension application 902 then judges whether or not the background pattern and sample processing unit 904 is present. If it is judged that the background pattern and sample processing unit 904 is present as a result of this judgment, a background pattern and a background pattern calibration function are added to the printing function information 203. By this addition process, even if the printing device 901 does not have a background pattern and sample generation unit, capability information is generated based on the printing function information 203 to which the background pattern and background pattern calibration function have been added. The extension application 902 can display the detailed setting screen 300C shown in FIG. 3C by generating a display screen based on this capability information.
[0094] <Processing after the drawing application accepts print settings> Fig. 17 is a sequence diagram showing the processing executed between the drawing application, the general-purpose printing software, the extension application, and the printing device after the drawing application accepts the print settings. The sequence diagram shown in Fig. 17 is a sequence diagram in which mainly steps S1201 to S1215 are added to the sequence diagram shown in Fig. 8. As shown in Fig. 17, in step S808 after execution of step S807, the print setting screen extension unit 205 accepts the end of the detailed settings in step S807.
[0095] After step S808 is executed, the process proceeds to step S1201. In step S1201, the tint block / sample processing unit 904 of the extension application 902 transmits detailed setting end information indicating the end of the detailed setting in step S808 to the general-purpose printing software 202. Note that this information includes the setting information in the controls 316, 318, 319, 320, and 312 of the tint block calibration screen 300D.
[0096] In step S1202, the general-purpose printing software 202 generates intermediate data using a module of the OS. For example, the general-purpose printing software 202 generates a blank image as drawing data, and generates the settings notified in step S1201 as intermediate data.
[0097] In step S 1203 , the general-purpose printing software 202 stores the print setting information (PT) in the shared information 208 .
[0098] In step S1204, the general-purpose printing software 202 transmits the drawing data of the intermediate data generated in step S1202 to the extension application 902.
[0099] In step S1205, the background pattern / sample processing unit 904 of the extension application 902 acquires the print setting information saved in step S1203 from the shared information 208. In addition, the background pattern / sample processing unit 904 acquires setting information for each control included in the detailed setting completion information transmitted in step S1201.
[0100] In step S1206, the tint block / sample processing unit 904 acquires the capability information of the printing device 901 from the shared information 208. If the shared information 208 does not include the capability information of the printing device 901, the print function extension unit 903 may request the capability information from the printing device 901. In this case as well, the capability information is stored in the shared information 208.
[0101] In step S1207, the background pattern and sample processing unit 904 determines whether or not the printing device 901 has a background pattern and sample generation unit based on the capability information acquired in step S1206. As described above, in this embodiment, the printing device 901 is not equipped with a background pattern and sample generation unit. Therefore, the determination result in step S1207 is that the printing device 901 does not have a background pattern and sample generation unit. Note that, if the determination result in step S1207 is that the printing device 901 has a background pattern and sample generation unit, the process skips step S1208 and proceeds to step S1209. This is because the background pattern and sample generation unit in the printing device 901 can generate samples faster than the background pattern and sample processing unit 904 by using an ASIC (Application Specific Integrated Circuit).
[0102] In step S1208, the background pattern / sample processing unit 904 adds a sample of the background pattern to the drawing data based on the setting information for calibration of the background pattern included in the print setting information acquired in step S1205. This additional information is saved in the shared information 208. In addition, the background pattern / sample processing unit 904 edits the setting value of the background pattern calibration in the print setting information to "0", or deletes the setting information for calibration of the background pattern from the print setting information.
[0103] In step S1209, the intermediate data editing unit 207 of the extension application 902 generates print data using the drawing data transmitted in step S1204 and the print setting information acquired in step S1205.
[0104] In step S1210, the intermediate data editing unit 207 transmits the print data generated in step S1209 to the printing device .
[0105] In step S1211, the printing device 901 receives the print data sent in step S1210. The printing device 901 interprets the print data, performs necessary image processing on the print data, and executes printing. After executing step S1211, the process proceeds in order from step S810 to step S819.
[0106] After step S819 is executed, the process proceeds to step S1212. In step S1212, the background pattern / sample processing unit 904 of the extension application 902 adds a background pattern to the drawing data based on the background pattern calibration setting information included in the print setting information acquired in step S1205. This additional information is saved in the shared information 208. In addition, the background pattern / sample processing unit 904 edits the background pattern setting value in the print setting information to "0", or deletes the background pattern setting information from the print setting information.
[0107] In step S1213, the intermediate data editing unit 207 of the extension application 902 generates print data using the drawing data and print setting information stored in the shared information 208. Note that in step S1213, a preview of the print data may be performed.
[0108] In step S1214, the intermediate data editing unit 207 transmits the print data generated in step S1213 to the printing device 102.
[0109] In step S1215, the printing device 901 receives the print data sent in step S1214. The printing device 901 interprets this print data, performs necessary image processing on the print data, and executes printing.
[0110] As described above, in this embodiment, even if the printing device 109 does not have a background pattern and sample generation unit, the extension application 902 can execute the background pattern image data generation process together with the general-purpose printing software 202 instead of the background pattern and sample generation unit. This allows the printing device 102 to print a printed matter in which unauthorized copying is prevented by the background pattern. In this manner, in this embodiment, if it is determined that the printing device 109 does not have a background pattern and sample generation unit, the background pattern image data generation process can be executed together with the general-purpose printing software 202. On the other hand, if it is determined that the printing device 109 has a background pattern and sample generation unit, the printing device 102 can be caused to execute the background pattern image data generation process together with the general-purpose printing software 202, as in the first embodiment.
[0111] Although the preferred embodiments of the present invention have been described above, the present invention is not limited to the above-mentioned embodiments, and various modifications and changes are possible within the scope of the gist of the present invention. The present invention can also be realized by supplying a program that realizes one or more functions of the above-mentioned embodiments to a system or device via a network or storage medium, and having one or more processors of a computer in the system or device read and execute the program. The present invention can also be realized by a circuit (e.g., ASIC) that realizes one or more functions.
[0112] The disclosure of each embodiment includes the following programs, recording media, methods, and configurations. (Program 1) A program that can expand the functions of a general-purpose program that can be used when printing on printing devices from multiple manufacturers, The program includes an execution step of causing the printing device to execute an image data generation process for generating image data for a tint block image that is to be added to a printed matter printed based on the print data generated by the general-purpose program and that appears when the printed matter is copied. (Program 2) an acquisition step of acquiring, prior to the execution step, capability information relating to the printing capability of the printing device from the printing device; a determination step of determining whether or not the printing device is capable of executing the image data generation process based on the capability information acquired in the acquisition step, The program described in Program 1, characterized in that in the execution process, if it is determined as a result of the judgment in the judgment process that the printing device is capable of executing the image data generation process, the printing device is caused to execute the image data generation process, and if it is determined that the printing device is not capable of executing the image data generation process, the image data generation process is executable. (Program 3) A program that can expand the functions of a general-purpose program that can be used when printing on printing devices from multiple manufacturers, A program characterized by having an execution step of executing an image data generation process that generates image data to be added to a printed material printed based on the print data generated by the general-purpose program, the image data being a tint block image that appears when the printed material is copied. (Program 4) A setting step for setting an execution condition for executing the image data generation process prior to the execution step, A program described in any one of programs 1 to 3, characterized in that the execution process includes a conversion process for converting intermediate data generated by the general-purpose program into the printing data that can be printed by the printing device using the tint block image based on the execution conditions set in the setting process. (Program 5) The program according to Program 4, wherein the setting step displays a setting screen on which the execution conditions can be set. (Program 6) The tint block image has a background portion that disappears after copying and a latent image portion that remains after copying, The program described in program 5, characterized in that the setting screen includes at least one of the following execution conditions: a selection section for selecting whether or not to execute the image data generation process, a color determination section for determining the color of the tint block image, a density adjustment section for adjusting the density of the background portion, and a density adjustment section for adjusting the density of the latent image portion. (Program 7) The program according to any one of Programs 4 to 6, wherein the setting step displays an information screen including information related to the tint block image. (Program 8) The program described in Program 7, characterized in that the information screen includes, as information regarding the tint block image, at least one of a print instruction section that instructs printing a sample of the tint block image and a sample image of the tint block image. (Program 9) The program according to any one of Programs 1 to 8, wherein a program incapable of executing the image data generation process is used as the general-purpose program. (Program 10) The program according to any one of Programs 1 to 9, wherein the general-purpose program is a program that operates based on IPP (Internet Printing Protocol). (Recording medium 1) A recording medium having stored thereon any one of the programs described in Programs 1 to 10. (Method 1) A method for extensibly controlling functions of a general-purpose program that can be used commonly during printing on printing devices of multiple manufacturers, comprising the steps of: A control method characterized by having an execution step of causing the printing device to execute a generation process for generating image data of a tint block image that is to be added to a printed matter printed based on the print data generated by the general-purpose program and that will stand out after the printed matter is copied. (Method 2) A method for extensibly controlling a function of a general-purpose program that can be used commonly during printing on printing devices of multiple manufacturers, comprising the steps of: A control method comprising: an execution step of executing a generation process for generating image data of a tint block image that will stand out after copying. (Configuration 1) An information processing device that is communicably connected to printing devices of multiple manufacturers and is capable of processing information between the printing devices, a general-purpose program that can be used in common for printing devices of the plurality of manufacturers; a program capable of expanding the function of the general-purpose program, The information processing device is characterized in that the program has an execution step of causing the printing device to execute a generation process to generate image data of a tint block image that is added to a printed material printed based on print data generated by the general-purpose program and that appears after the printed material is copied. (Configuration 2) An information processing device that is communicably connected to printing devices of a plurality of manufacturers and is capable of processing information between the printing devices, a general-purpose program that can be used in common for printing devices of the plurality of manufacturers; a program capable of expanding the function of the general-purpose program, The information processing device is characterized in that the program has an execution step of executing a generation process to generate image data of a tint block image that is added to a printed material printed based on print data generated by the general-purpose program and that appears after the printed material is copied. [Explanation of symbols]
[0113] 102 Printing device 114 External storage device (recording medium) 202 General-purpose printing software (general-purpose programs) 204 Extension Application (Program) 300C detailed setting screen (setting screen) 300D background pattern calibration screen 300E Latent image density adjustment screen 300F Reference value setting screen
Claims
1. A program capable of expanding the functions of a general-purpose program that can be used commonly when printing on printing devices of multiple manufacturers, The program includes an execution step of causing the printing device to execute an image data generation process for generating image data for a tint block image that is to be added to a printed matter printed based on the print data generated by the general-purpose program and that appears when the printed matter is copied.
2. an acquisition step of acquiring, prior to the execution step, capability information relating to the capability of the printing device to perform printing from the printing device; a determination step of determining whether or not the printing device is capable of executing the image data generation process based on the capability information acquired in the acquisition step, The program described in claim 1, characterized in that in the execution step, if it is determined as a result of the judgment in the judgment step that the printing device is capable of executing the image data generation process, the printing device is caused to execute the image data generation process, and if it is determined that the printing device is not capable of executing the image data generation process, the image data generation process is executable.
3. A program capable of expanding the functions of a general-purpose program that can be used commonly when printing on printing devices of multiple manufacturers, A program characterized by having an execution step of executing an image data generation process that generates image data to be added to a printed matter printed based on the print data generated by the general-purpose program, the image data being a tint block image that appears when the printed matter is copied.
4. a setting step of setting execution conditions for executing the image data generation process prior to the execution step; The program according to claim 1 or 3, characterized in that the execution process includes a conversion process for converting intermediate data generated by the general-purpose program into the print data that can be printed by the printing device using the tint block image based on the execution conditions set in the setting process.
5. 5. The program according to claim 4, wherein the setting step displays a setting screen on which the execution conditions can be set.
6. The tint block image has a background portion that disappears after copying and a latent image portion that remains after copying, The program according to claim 5, characterized in that the setting screen includes at least one of a selection section for selecting whether or not to execute the image data generation process, a color determination section for determining the color of the tint block image, a density adjustment section for adjusting the density of the background portion, and a density adjustment section for adjusting the density of the latent image portion, as the execution conditions.
7. 5. The program according to claim 4, wherein the setting step displays an information screen including information related to the tint block image.
8. 8. The program according to claim 7, wherein the information screen includes, as information about the tint block image, at least one of a print instruction section for instructing printing of a sample of the tint block image and a sample image of the tint block image.
9. 4. The program according to claim 1, wherein the general-purpose program is a program incapable of executing the image data generation process.
10. 4. The program according to claim 1, wherein the general-purpose program is a program that operates based on IPP (Internet Printing Protocol).
11. 4. A recording medium storing the program according to claim 1 or 3.
12. A method for controlling a function of a general-purpose program that can be commonly used during printing on printing devices of multiple manufacturers in an extensible manner, comprising: A control method characterized by having an execution step of causing the printing device to execute a generation process for generating image data of a tint block image that is to be added to a printed matter printed based on the print data generated by the general-purpose program and that will stand out after the printed matter is copied.
13. A method for controlling a function of a general-purpose program that can be commonly used during printing on printing devices of multiple manufacturers in an extensible manner, comprising: A control method comprising: an execution step of executing a generation process for generating image data of a tint block image that will stand out after copying.
14. An information processing device that is communicably connected to printing devices of a plurality of manufacturers and is capable of processing information between the printing devices, a general-purpose program that can be used in common for printing devices of the plurality of manufacturers; a program capable of expanding the function of the general-purpose program, The information processing device is characterized in that the program has an execution step of causing the printing device to execute a generation process to generate image data of a tint block image that is added to a printed material printed based on print data generated by the general-purpose program and that appears after the printed material is copied.
15. An information processing device that is communicably connected to printing devices of a plurality of manufacturers and is capable of processing information between the printing devices, a general-purpose program that can be used in common for printing devices of the plurality of manufacturers; a program capable of expanding the function of the general-purpose program, The information processing device is characterized in that the program has an execution step of executing a generation process to generate image data of a tint block image that is added to a printed material printed based on print data generated by the general-purpose program and that appears after the printed material is copied.
Citation Information
Patent Citations
Print processing system and method
JP2008271563A
Printing device, control method of the same, and program
JP2012083485A
Support program, information processing apparatus, and printing method
JP2020166433A
Printing system, information processing apparatus, printer, control method of printing system, information processing method, and program
JP2023111155A