Program, information processing device, and control method thereof

By developing an extended application associated with the print data generation software in the printing system, checking and updating the printing function information, the problem of the processing speed decrease caused by the function expansion is solved, and the balance between function expansion and stable processing speed is achieved.

JP2025070065APending Publication Date: 2025-05-02CANON KK
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
JP2023180111
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Filing Date
2023-10-19
Publication Date
2025-05-02

AI Technical Summary

Technical Problem

The prior art may cause a decrease in processing speed of standard drivers and operating systems when expanding the functions of printing equipment, thereby affecting printing settings and printing speed.

Method used

By developing an extension application, which is associated with the print data generation software, checks whether a specific printing application is installed, determines whether printing function information needs to be updated, and updates if necessary, so that the functionality is extended without slowing down processing speed.

Benefits of technology

The function is expanded while maintaining the stability of processing speed, avoiding the decline in printing settings and printing speed.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2025070065000001_ABST
    Figure 2025070065000001_ABST
Patent Text Reader

Abstract

To expand a function while suppressing degrading of processing speed.SOLUTION: A printing function expansion unit 206 checks whether a specific printing application 201 needing unique printing related information is installed in a host computer 101, and on the basis of the presence or absence of the installation, determines necessity or un-necessity of update of printing function information (PDC 203) to be used by printing data generation software 202. In response to determination of necessity of the update, the printing function expansion unit 206 updates the PDC 203 by adding or deleting expansion information to or from the PDC 203.SELECTED DRAWING: Figure 6
Need to check novelty before this filing date? Find Prior Art

Description

[Technical field]

[0001] The present invention relates to a program, an information processing device, and a control method thereof. [Background technology]

[0002] There is a known technology that uses a printer driver installed on a host computer as software for controlling the printing device to send print instructions to a printing device connected to the host computer. An operating system (OS), which is the basic software, is installed on the host computer. The printer driver is configured according to the specifications defined by the OS, and runs when called by the OS. By providing a printer driver that conforms to the OS specifications, a manufacturer that provides a printing device can provide a means of issuing print instructions to the printing device using the OS.

[0003] In recent years, Windows (registered trademark) has been provided with standard class drivers (hereinafter also referred to as "standard drivers") that can be commonly used by printing devices provided by multiple manufacturers. Such standard drivers are included in the OS package and can be easily used by connecting any printing device to the host computer. This makes it unnecessary to separately install a model-specific printer driver suitable for the printing device, which is highly convenient. In addition, the standard driver is configured to be able to specify printing functions according to PrintDeviceCapabilities (hereinafter "PDC") generated based on information obtained from the connected printing device. This allows a user who uses the standard driver to specify printing functions according to the capabilities of the connected printing device, even though the user is using one standard driver.

[0004] A standard driver can be associated with an application for function extension (hereinafter, also referred to as an "extension application"). The extension application is provided by the manufacturer of the printing device, and by editing the PDC generated by the standard driver, it is possible to execute functions (extension functions) that cannot be realized by the standard driver alone. Patent Document 1 discloses a technology for extending a PDC by an extension application. [Prior art documents] [Patent documents]

[0005] [Patent Document 1] JP 2020-126364 A Summary of the Invention [Problem to be solved by the invention]

[0006] Some printing applications have their own printing functions, which are obtained from the printer driver provided by the manufacturer and are equipped with device-specific print information in order to fully utilize the functions of the printing device. The manufacturer can make these printing applications work with the standard driver by extending the standard driver using an extension application.

[0007] However, if PDC extensions increase unnecessarily, the processing speed of the standard driver and the OS will slow down, which can lead to problems such as slower print setting operations and reduced printing speed.

[0008] An object of the present invention is to expand functionality while preventing a decrease in processing speed. [Means for solving the problem]

[0009] In order to achieve the above-mentioned object, the program of the present invention is an extension application program that extends the functions of print data generation software by being associated with print data generation software that can be operated on an information processing device, and is characterized in that it causes a computer to execute a confirmation step of confirming whether a specific print application that can execute unique print functions is installed, a determination step of determining whether printing function information used in the print data generation software needs to be updated based on the confirmed presence or absence of the installation, and an update step of updating the printing function information depending on whether an update is determined to be necessary. Effect of the Invention

[0010] According to the present invention, it is possible to expand functions while suppressing a decrease in processing speed. [Brief description of the drawings]

[0011] [Figure 1] FIG. 2 is a block diagram showing a hardware configuration of the printing system. [Diagram 2] FIG. 2 is a diagram illustrating a software configuration of a printing system using a standard driver. [Diagram 3] FIG. 11 is a diagram showing an example of a screen of a printing application. [Figure 4] FIG. 2 is a diagram illustrating an example of an input image. [Diagram 5] FIG. 11 is a diagram showing an example of another print layout designation screen. [Figure 6] 13 is a flowchart of a PDC processing process. [Figure 7] FIG. 13 is a diagram illustrating an example of a PDC before updating. [Figure 8] FIG. 13 is a diagram showing an example of an updated PDC. [Figure 9] FIG. 13 is a diagram illustrating an example of a PC (capability information). [Figure 10] 13 is a flowchart of a screen construction process. [Figure 11] 13 is a flowchart of a PC return process. [Figure 12]FIG. 13 is a diagram showing an example of a PT including a dedicated tag. [Figure 13] FIG. 13 is a diagram showing an example of a PT after processing of a dedicated tag. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

[0012] Hereinafter, preferred embodiments of the present invention will be described in detail with reference to the accompanying drawings. Note that the following embodiments do not limit the scope of the present invention, and not all of the combinations of features described in the embodiments are essential to the solution of the present invention. Note that the same components are given the same reference numbers and descriptions are omitted.

[0013] (First embodiment) <Printing system hardware configuration> 1 is a block diagram showing a hardware configuration of a printing system including an information processing apparatus according to a first embodiment of the present invention. A host computer 101 is an example of an information processing apparatus. The host computer 101 has an input interface 110, a CPU 111, a ROM 112, a RAM 113, a NETIF 120, an external storage device 114, an output interface 115, and an input / output interface 116. Input devices such as a keyboard 118 and a pointing device 117 are connected to the input interface 110. Display devices such as a display unit 119 are connected to the output interface 115. The NETIF 120 is a network interface, and performs control for transferring data between the host computer 100 and an external device via a network.

[0014] An initialization program is stored in the ROM 112. Application programs, an operating system (OS), print data generation software, and various other data are stored in the external storage device 114. The RAM 113 is used as a work memory or the like when the various programs stored in the external storage device 114 are executed, and the various programs can run within the host computer 101.

[0015] In this embodiment, the CPU 111 executes processes according to the procedures of a program stored in the ROM 112, thereby executing functions described below in the host computer 101 and processes related to flowcharts described below. The printing device 102, which is a device, is connected to the host computer 101 via an input / output interface 116.

[0016] Note that a plurality of printing devices 102 may be connected to the host computer 101, and two printing devices 102 are connected in the example of Fig. 1. In Fig. 1, the host computer 101 and the printing device 102 are configured separately, but they may be configured as a single information processing device.

[0017] Although an inkjet printer that prints by ejecting ink onto a paper surface will be described as an example of the printing device 102, printing may be performed by other methods (for example, electrophotography). Also, the host computer 101 may be a desktop personal computer, a smartphone, or a notebook computer.

[0018] <Software-centric printing system configuration> 2(a) and (b) are diagrams showing a schematic software configuration of a printing system using a standard driver. Here, a host computer 101 equipped with Microsoft (registered trademark) Windows 11 (registered trademark) as the OS is shown as an example. The explanation is also based on the premise that the configuration uses an "IPP Class Driver" as the standard driver. The "IPP Class Driver" is a printer driver that executes printing processing according to the specifications of a standard printing protocol called IPP (Internet Printing Protocol), and is included in the OS package. This is not a printer driver specific to the model of the printing device 102, but a standard driver that can be commonly used by multiple printing devices regardless of the manufacturer or model.

[0019] FIG. 2A is a diagram showing a typical printing system configuration using a standard driver, an “IPP Class Driver” (hereinafter, “print data generation software 202”), and a printing device 102. As shown in FIG.

[0020] The print application 201 is software that creates content (drawing data) to be printed, such as a word processing application or a spreadsheet application. When the print application 201 receives a print request from a user, it issues a print instruction to the OS. The print instruction includes print setting information for instructing the operation of the print data generation software 202 and the printing device 102. The print setting information is also called a Print Ticket (hereinafter, "PT").

[0021] To output print setting information, the print application 201 can display a print setting screen provided by the print data generation software 202, the OS, or the print application 201. The print setting screen includes setting items indicating configurable print functions and their setting value information according to capability information (information that can be set as print settings) acquired from the print data generation software 202. The capability information is also called PrintCapabilities (hereinafter, "PC").

[0022] The print data generation software 202 determines the PC based on the print capability information 203. The print capability information 203 is data indicating all print functions that can be set, their setting values, and the exclusive relationship between the setting values. The print capability information 203 is also called PDC (Print Device Capabilities). Hereinafter, the print capability information 203 may be abbreviated as PDC203. The PDC203 is included in a configuration file of the print data generation software 202, and is arranged in the external storage device 114 as a file that cannot be changed without the permission of the OS. The PDC203 can also be dynamically generated by the print data generation software 202 or the OS. Specifically, the print data generation software 202 or the OS acquires attribute data of the printing device 102 from the printing device 102, and generates the PDC203 according to the attribute information in the acquired attribute data. The attribute data is response information that can be acquired by issuing a Get-Printer-Attributes operation of IPP to the printing device 102. The response includes attribute information indicating functions (capabilities of the printing device) that can be specified in the printing device 102 and setting values ​​related to that attribute information. This response is stored in the RAM 113.

[0023] By configuring in this way, the print data generation software 202 can be configured to allow the user to specify the print functions available on each printing device according to the connected printing device. In other words, even when printing devices with different functions or printing devices developed by different manufacturers are connected, the print data generation software 202 can be configured to allow the user to specify the print functions available on the connected printing device.

[0024] It is also possible to use the "UP Class Driver" installed in Windows 11 (registered trademark) as the print data generation software 202. The "UP Class Driver" is a printer driver used in "Universal Print," a form of cloud printing that performs printing via a server.

[0025] The OS generates intermediate data (also called input data) based on the print instruction output from the print application 201, and passes it to the print data generation software 202. The data output by the print application 201 for printing includes data in the "Graphic Device Interface" format (GDI format data) and data in the "XML Paper Specification" format (XPS format data).

[0026] When an "IPP Class Driver" is used as the print data generation software 202, the OS processes as follows. If the data output by the print application 201 is GDI format data, the OS converts the GDI format data output from the print application 201 into XPS format data. Then, the OS passes the converted XPS format data to the print data generation software 202 as intermediate data. If the data output by the print application 201 is XPS format data, the OS passes the XPS format data to the print data generation software 202 as intermediate data. The intermediate data includes drawing data, which is information about a picture (image) to be formed on paper, and print setting information set by the user.

[0027] The print data generation software 202 converts the acquired intermediate data into print data that can be interpreted by the printing device 102, and transmits it to the printing device 102. The print data includes drawing data, which is information about a picture (image) to be formed on paper, and print setting attribute information (attribute information that specifies print settings) generated based on print setting information set by the user. The print setting attribute information includes attribute information that indicates functions that can be specified by the printing device 102 (capabilities of the printing device) and setting values ​​related to that attribute information.

[0028] The printing device 102 prints on paper based on the print data sent from the print data generation software 202. At this time, the printing device 102 forms the drawing data included in the print data on paper by operating according to the print setting attribute information included in the print data. The print setting attribute information includes attribute information and its setting value for specifying the print quality (priority of image quality, priority of speed, etc.) and double-sided printing, etc. For example, if the print setting attribute information includes attribute information specifying double-sided printing and a setting value indicating that it is to be performed, the printing device 102 executes double-sided printing.

[0029] 2(b) is a diagram showing a configuration in which an extension application 204 provided by a manufacturer is associated with print data generation software 202 and the printing device 102. Note that configurations and processes not specifically mentioned below are the same as those described in FIG. 2(a).

[0030] The extension application 204 is software for extending the function of the print data generation software 202, and is a software program that is not included (bundled) in advance in the OS. Therefore, the user needs to operate the host computer 101, download the extension application 204 from a server via the Internet, and install it. Alternatively, the extension application 204 may be automatically installed based on the connection of the printing device 102 to the host computer 101. 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 downloads the extension application 204 corresponding to the acquired device identification information from the server via the Internet and installs it. Therefore, the print data generation software 202 and the extension application 204 are held in the host computer 101 as separate files. Note that when the extension application 204 is installed, the OS associates the extension application 204 with the print data generation software 202 and the printing device 102.

[0031] The extension application 204 described in this embodiment includes a print setting screen extension unit 205, a print function extension unit 206, and a print data editing unit 207. The extension application 204 also holds shared information 208 that can be commonly accessed by each unit. The shared information 208 is actually a file saved in the external storage device 114, or information stored in the RAM 113. The extension application 204 writes and reads information to and from the shared information 208 by using an API (Application Program Interface) provided by the OS.

[0032] When the print application 201 receives a print request from a user, it issues a print instruction to the OS. In the configuration of Fig. 2(b), the print application 201 can display a print setting screen, as in the configuration of Fig. 2(a). In the configuration of Fig. 2(b), a print setting screen provided by a print setting screen extension unit 205 included in the extension application 204 is displayed. The print setting screen extension unit 205 can perform extensions such as displaying items that cannot be displayed on the standard print setting screen, making it easier to understand in appearance.

[0033] The print function extension unit 206 can edit the PDC 203 generated by the print data generation software 202 or the OS. This allows the print function extension unit 206 to add functions not supported by the print data generation software 202, add exclusive relationships between setting values ​​of print functions, and the like. The OS starts the print function extension unit 206 when the extension application 204 is first associated with the printing device 102 and the print data generation software 202. Furthermore, the OS may start the print function extension unit 206 at other times, such as when the OS is started or when printing is performed. In this way, in a case where an optional device (e.g., a finisher, etc.) is added later to the printing device 102 and functions related to printing are extended, the print function extension unit 206 can detect the extended function and add the function to the PDC 203.

[0034] The print data editing unit 207 receives print data from the print data generation software 202 and can perform any editing on the print data. The print data is then passed to the printing device 102, which then prints the data on paper.

[0035] The configuration of the extension application 204 for realizing this embodiment is not limited to having all of the above-mentioned functions (units), and may have only some of the functions or other functions. Also, the extension application 204 may be simply called printing software.

[0036] <Example of a printing application> Fig. 3 shows an example of a screen of a print application 201 that can use a print function unique to a printer manufacturer. Fig. 4 shows an example of an input image.

[0037] In order to fully utilize the functions of the printing device, the print application 201 obtains its own (unique) print-related information (such as roll paper width information) from the printer driver provided by the manufacturer, and uses this information for displaying its own print settings and print preview.

[0038] Although the method of inputting an image is not particularly shown, for example, the user can open Explorer from the file menu of the print application 201 and input the image. Another method is to input the image by dragging and dropping it directly onto the print application 201. The image may be in any format that can be interpreted by the print application 201, and image formats such as Bitmap and Tiff are possible. Vector formats such as XPS (XML Paper Specification) and EMF (Enhanced Metafile) are also acceptable.

[0039] The preview area 301 is an area that displays a print image to be printed by the printing device 102. In the example of Fig. 3, the input image in Fig. 4 is arranged so that it will be printed borderless on the roll paper surface. Note that the user may be able to directly adjust the size, position, etc. of the image using a pointing device or the like while checking the preview.

[0040] The printer setting 302 is a combo box that accepts the designation of the print queue of the printer driver to be used for printing. Here, the description will be given assuming that a manufacturer's printer driver supported by the print application 201 is designated.

[0041] Paper type setting 303 is a combo box that accepts the specification of the type of paper to use for printing. Roll paper width setting 304 is a combo box that accepts the specification of the roll paper width to use for printing. The roll paper width specified here affects not only printing, but also the representation of the roll paper width displayed in the preview area 301. The user can check the width of the roll paper used for printing and the size of the image on the preview using a ruler or the like displayed in the preview area 301. Note that because roll paper width information is manufacturer-specific print setting information, standard printing applications cannot generally use the roll paper width setting 304.

[0042] Borderless print setting 305 is a combo box that accepts whether to perform printing without margins (borders) by printing the image at a size larger than the printing paper. In the example of Fig. 3, borderless print setting 305 is set to on, so the image is placed on the paper at a size slightly larger than the roll paper. By setting the amount of overflow of the image in this way, printing is reliably performed without margins even if the paper is printed out of alignment.

[0043] The print application 201 can obtain the borderless overhang amount from the printer driver as manufacturer-specific print information. For example, if the borderless overhang amount is 3 mm, the overhang amount in the preview area 301 can be expressed as the actual 3 mm, allowing the user to accurately check on the preview where the image will be cut off before printing. Although borderless printing can be specified with a standard print application, the extent to which the image will overhang when printed is left to the printer driver or printing device, making it difficult to accurately show the overhang position of the image on the preview.

[0044] The fluorescent print setting 306 is a combo box that accepts a designation for printing using fluorescent ink that is uniquely installed in the printing device 102. In printing using fluorescent ink, for example, by printing a specific RGB value using only fluorescent ink, it becomes possible to print in a color that cannot normally be expressed. In addition, it is also possible to mix fluorescent ink with CMYK ink to perform printing with a wider color gamut. Note that when the fluorescent print setting 306 is on, the print result may be displayed in a pseudo manner in the preview area 301. The fluorescent print setting is also one of the manufacturer's unique print settings, and the fluorescent print setting 306 cannot be used in a standard print application.

[0045] The print application 201 can obtain the capability information required for the settings 303 to 306 by using an OS function such as PrintCapabilities (PC) for the print queue of the printer driver selected in the printer settings 302 (FIG. 3). Whether the capability information required for the settings 303 to 306 can be returned correctly depends on the printer driver. If the print application 201 does not return this capability information correctly, it can take measures such as not including the printer driver as a printing target or graying out functions for which capability information is insufficient.

[0046] The print button 307 is a button for transmitting the print setting information set in the settings 303 to 306 and the layout information (drawing information) edited by the user in the preview area 301 to the print queue of the printer driver specified in the printer settings 302.

[0047] 5 is a diagram showing an example of another print layout designation screen of the print application 201. This example shows a screen for label printing on disc media such as CDs. The user can perform any data processing on the disc image displayed in the preview area 301, and then execute printing to the print queue of the printer driver specified in the printer settings 302. In order to obtain accurate information on the media to be printed, the print application 201 obtains radius information of the disc media and the like as manufacturer-specific print-related information. This makes it possible to dynamically switch radius information and the like for various disc media and perform accurate display in the preview area 301 (FIG. 3).

[0048] As described above, the print application 201 uses the manufacturer's unique print-related information as printer driver capability information to display unique print settings and print previews. This allows the user to fully utilize the functions of the printing device 102 and to check the accurate print layout even in a preview before printing. On the other hand, the print application 201 can fully utilize its functions when targeting a manufacturer's printer driver that can provide unique print-related information, but cannot fully utilize its capabilities when targeting a standard driver that can only provide standard print-related information.

[0049] Regarding the above problem, by expanding the functions of the standard driver using the extended application 204, even when the standard driver is targeted, the printing application 201 can exhibit its full functions. However, when the amount of function expansion is large, there may be demerits such as the operation of printing settings becoming cumbersome and the printing speed decreasing. If all the printing-related information required in each printing application is uniformly incorporated into the standard driver, the demerits will become significant.

[0050] Therefore, in this embodiment, as will be described in detail later, by minimizing the expansion of the standard driver as much as possible, while suppressing demerits such as speed reduction due to expansion, even in combination with the standard driver, a specific printing application 201 can use its full functions.

[0051] Hereinafter, when distinguishing a printing application that can utilize a manufacturer-specific printing function from a standard printing application that can only execute general-purpose printing functions, it is referred to as a "specific printing application".

[0052] <PDC processing method> FIG. 6 is a flowchart of the PDC processing. This process is mainly a process in which the printing function expansion unit 206 mounted on the extended application 204 processes the PDC 203. The printing function expansion unit 206 will be described as the main body of this process. Actually, the corresponding function is realized by the CPU 111 executing the corresponding program. That is, this process is realized by the CPU 111 expanding and executing the program stored in the ROM 112 in the RAM 113. This process is started by the OS at an arbitrary timing. For example, this process is executed when linked with the printing device 102, at the time of OS startup, at the startup of the printing setting screen expansion unit 205, etc.

[0053] This process is performed on the assumption that a basic PDC 203 (a PDC that has undergone manufacturer-specific processing, excluding processing for a specific print application) has already been created by a separate process.

[0054] First, in S601, the print function extension unit 206 checks whether or not a print application 201 (i.e., a specific print application) that requires unique print-related information is installed in the host computer 101. The presence or absence of the installation is checked as follows.

[0055] For example, the presence or absence of installation can be confirmed by referring to a registry or a specific file that has been created in advance by a specific print application 201. If the extension application 204 cannot directly access the registry or the specific file for security reasons, it can indirectly access them using the API of "Full Trust Process Launcher."

[0056] Also, if the print application supports URI (Uniform Resource Identifier) ​​launch, you can use the "Query Uri Support Async" API to check whether the application is installed. For example, you can determine whether the print application is installed by checking whether the print application can be launched using a URI.

[0057] In S602, the print function extension unit 206 determines whether or not the print function information (PDC 203) used by the print data generation software 202 needs to be updated based on the confirmed presence or absence of installation.

[0058] For example, the print function extension unit 206 determines that an update is necessary when it is determined that a specific print application is installed and that extension information required to execute the specific print application is not described in the PDC 203. In other words, when a specific installed print application is newly found, it is confirmed whether the corresponding necessary extension information is already described in the PDC 203, and if not, it is determined that an update is necessary.

[0059] The print function extension unit 206 can quickly determine whether the PDC 203 needs to be updated from the history information by storing installation information of a specific print application and the processing history of the PDC 203 in the shared information 208 each time.

[0060] For example, the print function extension unit 206 determines that an update is necessary when it determines that a specific print application has been uninstalled and that extension information required to execute the specific print application has been written in the PDC 203. In this case, it is necessary to delete unnecessary extension information from the PDC 203.

[0061] If the print function extension unit 206 determines in step S602 that an update is necessary, the process proceeds to step S603. If the print function extension unit 206 determines that an update is not necessary, the process ends.

[0062] In S603, the print function extension unit 206 updates the PDC 203 by adding or deleting extension information to the PDC 203 depending on the situation in which it is determined that an update is necessary. That is, if it is determined that an update is necessary because a specific print application is installed and extension information required for the execution of the application is not written in the PDC 203, the extension information is added to the PDC 203. This appropriately extends the necessary functions while avoiding the addition of unnecessary functions, thereby suppressing a decrease in processing speed.

[0063] On the other hand, if it is determined that an update is necessary because a specific print application has been uninstalled and the extension information required for the execution of the application has already been written in the PDC 203, the print function extension unit 206 deletes the already written extension information from the PDC 203. After S603, the print function extension unit 206 ends this process.

[0064] Fig. 7 is a diagram showing an example of the PDC 203 before being processed in S603 (before updating), and Fig. 8 is a diagram showing an example of the PDC 203 after being processed in S603 (after updating).

[0065] Standard print-related information supported by the standard driver is described in the pre-update PDC 203 (FIG. 7) shown in example 701. The pre-update PDC 203 also contains information added in advance by the extension application 204 (namespace 702 and paper type 703: AAA_Special defined by the manufacturer). In contrast, the post-update PDC 203 shown in example 801 has information 802-806 added for new proprietary print applications.

[0066] In information 802, AAA_Special2 to AAA_Special99 have been added as new paper types that the printing device 102 can handle. For example, such information is added when it is desired to support many of these print papers for a specific print application 201, even though they are not required for general applications. If the specific print application 201 is not installed, these additions are not made. This makes it possible to prevent inconveniences such as unnecessary paper types being visible in general applications, making it difficult for the user to select a paper type.

[0067] Information 803 has been added that relates to the width of roll paper that can be handled by the printing device 102. This type of addition is made when, for example, a specific printing application 201 sets the roll paper width or performs a preview display. Information 804 has been added that relates to the borderless overflow amount of the printing device 102. This type of addition is made when, for example, a specific printing application 201 wants to perform a correct preview display based on the borderless overflow amount information.

[0068] Information 805 has been added with information relating to fluorescent printing that can be handled by the printer 102. Such addition is made when, for example, a specific print application 201 performs fluorescent printing. Information 806 has been added with information relating to disc media that can be handled by the printer 102. Here, as an example, disc radius information (6 mm) is described, and such addition is made when, for example, a specific print application 201 performs printing on disc media.

[0069] In S603, the print function extension unit 206 can finely control the addition of the information 802-806 or other information depending on the correspondence between the specific print application 201 and the unique function. If the specific print application is not installed or if there is no unique function, the print function extension unit 206 does not add the descriptions of the information 802-806. This makes it possible to suppress a decrease in performance when operating the standard driver. In particular, in cases where a large amount of information needs to be added, such as when adding many paper types in the information 802, the effect on the decrease in performance is large, so it is effective not to add the descriptions of the unnecessary information 802-806.

[0070] 9 is a diagram showing an example of a PC (capability information) generated by the OS based on the updated PDC 203 shown in example 801. Information 902 to 906 in the PC shown in example 901 corresponds to information 802 to 806, respectively. The specific print application 201 executes its own print function based on the updated PDC 203. Therefore, the specific print application 201 can perform its own print preview display and print control even for the standard driver based on the PC information 902 to 906 shown in example 901.

[0071] According to this embodiment, whether or not the print function information (PDC203) used in the print data generation software needs to be updated is determined based on whether or not a specific print application is installed. Then, if it is determined that an update is necessary, the print function information is updated. The update adds necessary extension information, thereby expanding the functionality. Furthermore, by not adding unnecessary extension information, it is possible to avoid the print setting operation becoming heavy and the printing speed decreasing. This makes it possible to expand the functionality while suppressing a decrease in processing speed.

[0072] In addition, uninstallation can delete unnecessary extension information, thereby preventing degradation of the standard driver's performance.

[0073] Furthermore, when it is determined that an update is not necessary and the extension information is not written in the PDC 203, or when the extension information is deleted by an update, it is possible to prevent unnecessary information from being seen by the user.

[0074] Second embodiment In the first embodiment, an example was described in which the processing of the PDC 203 was switched depending on whether or not a specific print application was installed. In contrast, in the second embodiment of the present invention, an example will be described in which a specific print application directly instructs a change to the PDC 203. Note that the following description will focus on differences from the first embodiment, and parts that are not specifically mentioned will be considered to be the same as the configuration of the first embodiment.

[0075] <PDC Processing Method> Figure 10 is a flowchart of the screen construction process executed by the printing application 201. Figure 11 is a flowchart of the PC return process executed by the extended application 204.

[0076] The screen construction process in Figure 10 is a process in which the printing application 201 requests the necessary information from the extended application 204 associated with the standard driver and constructs the screen. Although the printing application 201 is described as the main body of this process, in reality, the corresponding functions are realized by the CPU 111 executing the corresponding program. This process is executed at the timing of application startup or screen display.

[0077] The PC return process in Figure 11 is executed in response to receiving the PT. Although the printing function extension unit 206 is described as the main body of this process, in reality, the corresponding functions are realized by the CPU 111 executing the corresponding program.

[0078] First, the screen construction process will be described. In S1001 of Figure 10, the printing application 201 obtains the default PT (print setting information) for the print queue of the printer driver specified in the printer settings 302 and transfers the process to S1002.

[0079] In S1002, the printing application 201 determines whether there is a dedicated tag for requesting its own print-related information in the PT. Here, the PT including the dedicated tag will be described.

[0080] FIG. 12 is a diagram showing an example 1201 of a PT including a dedicated tag. In the example 1201 (FIG. 12), the extension application 204 processes the PDC 203 in advance to add dedicated tags 1202 and 1203.<PrintApp Category> is a tag for conveying the name of the print application or category name for which unique print-related information is to be requested. That is, the dedicated tag 1202 includes the name of the print application that issued the PDC extension request, or a name indicating the classification of the extension information to be added. The initial value of the dedicated tag 1202 is set to "undefined."

[0081] Special tag 1203 <addcapabilitiyinfo>The dedicated tag 1203 is a tag for specifying the print-related information to be requested in detail. That is, the dedicated tag 1203 includes detailed values ​​of the extended information. The dedicated tag 1203 is set to "0" as an initial value.

[0082] As a result of the determination in S1002, if the dedicated tags 1202 and 1203 exist in the PT, the print application 201 proceeds to S1003. On the other hand, if the dedicated tags 1202 and 1203 do not exist in the PT, the print application 201 determines that it cannot request unique print-related information and proceeds to S1004.

[0083] In S1003, the print application 201 inputs necessary information into the dedicated tags 1202 and 1203 of the PT. That is, the contents of the extension request are specified by the dedicated tags 1202 and 1203 included in the PT. For example, when the print application 201 wants to include an extension request, it describes the information to be added (the print application name, category name, and detailed values ​​of the extension information) into the dedicated tags 1202 and 1203.

[0084] Note that a print application that does not require unique print-related information (a non-specific print application) can skip all processing related to unique print-related information by processing the initial values ​​without processing the dedicated tags. In other words, the fact that the dedicated tags 1202 and 1203 remain at their initial values ​​means that there is no request for extension.

[0085] Fig. 13 is a diagram showing an example of a PT after processing of the dedicated tag. In an example 1301 shown in Fig. 13, by the processing of S1003, "Category01" is written in a dedicated tag 1302 as the category name of the print application, and "10" is written in a dedicated tag 1303 as the designated value of the requested print-related information.

[0086] Note that there are no particular limitations on the specifications or usage of the dedicated tag, but for example, by specifying the dedicated tag 1302, it is possible to roughly specify the print-related information that is to be added to the extension application 204. For example, when "Category01" is specified, it means that it is a specific print application that requires roll paper width information and borderless overflow amount information. Note that it may be in a format that conveys the application name as is. By determining in advance what these specified values ​​mean, it is possible to specify detailed content.

[0087] For example, in the dedicated tag 1303, the required requested information can be specified in detail by previously arranging that the information 902 (FIG. 9) is requested with the hexadecimal number 0x1. Alternatively, it may be arranged that the information 903 is requested with the hexadecimal number 0x2, the information 904 with 0x4, the information 905 with 0x8, and the information 906 with 0x10.

[0088] 13, "10" is specified in decimal, which specifies 0x02 and 0x08, and therefore it is possible to request information 903 and information 905. Note that there are no particular limitations on the specifications of the dedicated tags, and it is possible to use only one of dedicated tags 1302 and 1303, or to specify the required requested information by the total value of both.

[0089] After S1003, the print application 201 proceeds to S1004. In S1004, the print application 201 executes a PC acquisition process using the PT processed in S1003, and moves the process to S1005. Here, acquisition of the PC is requested from the standard driver and the extension application 204 via the OS. In response to this, the PC is returned to the print application 201 with, for example, information extended by the extension application 204 added (details will be described later with reference to FIG. 11).

[0090] In S1005, the print application 201 uses the PC acquired in S1004 to update the preview area 301 taking into account the unique information, displays various print setting items, and ends this process. This enables the specific print application 201 to execute its own print function based on the extended print function information.

[0091] Next, a PC return process will be described with reference to Fig. 11. This process is carried out when the print function extension unit 206 of the extension application 204 receives a request from the PC via the OS or a standard driver.

[0092] First, in S1101, the print function extension unit 206 determines whether or not the PT passed as an argument from the print application 201 in S1004 contains a request instruction for additional information using a dedicated tag, i.e., an extension request. If the PT contains an extension request, the print function extension unit 206 proceeds to S1102, and if the PT does not contain an extension request, the print function extension unit 206 proceeds to S1103. When the print function extension unit 206 receives a PT in which an extension request is described in a dedicated tag, it is considered to have received an extension request.

[0093] In this way, the extension request of the PDC 203 is accepted in the form of being included in the PT received from the specific print application 201. The fact that values ​​are set in the dedicated tags 1202 and 1203 (setting items) means that there is an extension request.

[0094] In S1102, the print function extension unit 206 processes the PDC 203 or directly processes the PC according to the contents of the dedicated tag. If the PDC 203 is processed, the OS then creates a PC based on the processed PDC 203. The method of processing the PDC 203 is the same as that described in the first embodiment (FIGS. 8 and 9).

[0095] In S1103, the print function extension unit 206 returns the PC to the print application that issued the PDC extension request via the OS, and the process proceeds to S1104. The PC returned here is received by the print application 201 in S1004. If the received PT does not include an extension request, the process proceeds from S1101 to S1103, and the unexpanded PC is returned to the print application that sent the PT.

[0096] In S1104, if the PDC 203 has been processed in S1102, the print function extension unit 206 performs processing to return the PDC 203 to its pre-processing state, and ends this processing. By returning the PDC 203 to its original state in S1104, the pre-processing PC is returned even if, for example, another standard (non-specific) print application requests the PC after that.

[0097] According to this embodiment, the PDC 203 is expanded in response to an expansion request for the PDC 203 being received from a specific print application (S1102). Then, the PC processed based on the expanded PDC 203 is returned to the print application that issued the expansion request (S1103). This makes it possible to achieve the same effect as the first embodiment in terms of expanding functions while suppressing a decrease in processing speed.

[0098] In particular, since PC processing is performed only when the print application specifies a PT dedicated tag, the disadvantages of expansion can be further reduced.

[0099] In addition, when the PDC is expanded and the PC based on the expanded PDC is returned to the print application that issued the expansion request, the PDC is returned to the state before expansion (S1104). This prevents the PC after processing from being returned to the non-specific print application, thereby preventing the processing from affecting the print application. Therefore, the non-specific print application can execute print control using the non-expanded PC, thereby preventing performance degradation.

[0100] Although the present invention has been described in detail based on the preferred embodiments, the present invention is not limited to these specific embodiments, and various forms within the scope of the gist of the present invention are also included in the present invention. Parts of the above-described embodiments may be combined as appropriate.

[0101] (Other Examples) The present invention can also be realized by supplying a program that realizes one or more of the functions of the above-mentioned embodiments to a system or device via a network or a non-transitory storage medium, and having one or more processors of a computer in the system or device read and execute the program. The above program and the storage medium that stores the above program constitute the present invention. The present invention can also be realized by a circuit (e.g., ASIC) that realizes one or more of the functions.

[0102] The disclosure of this embodiment includes the following configurations and methods. (Configuration 1) An extension application program that is associated with print data generation software operable on an information processing device to extend a function of the print data generation software, On the computer, A confirmation step to check for the installation of a specific printing application that can perform custom printing functions; a determination step of determining whether or not printing function information used in the print data generating software needs to be updated based on the confirmed presence or absence of the installation; an updating step of updating the printing capability information in response to a determination that an update is necessary. (Configuration 2) In the determination step, when it is determined that the specific print application is installed and that the extension information required for executing the specific print application is not described in the print function information, it is determined that an update is necessary; 2. The program according to claim 1, wherein in the updating step, the extension information is added to the printing function information in response to a determination that an update is necessary. (Configuration 3) In the determination step, when it is determined that the specific print application has been uninstalled and that extension information required for executing the specific print application has been described in the print function information, it is determined that an update is necessary; 3. The program according to claim 1, wherein in the updating step, the extension information is deleted from the printing function information in response to a determination that an update is necessary. (Configuration 4) The program described in any one of configurations 1 to 3, characterized in that in the confirmation step, it is confirmed whether the specific printing application is installed by checking whether the specific printing application can be launched using a URI (Uniform Resource Identifier). (Configuration 5) 5. The program according to any one of configurations 1 to 4, wherein the specific print application executes the unique print function based on the updated print function information. (Configuration 6) An extension application program that is associated with print data generation software operable on an information processing device to extend a function of the print data generation software, On the computer, an extension step of extending the print function information in response to receiving an extension request for the print function information used in the print data generation software from a specific print application capable of executing a unique print function; a returning step of returning the extended printing function information to a printing application that has issued the extension request. (Configuration 7) The program according to configuration 6, wherein in the returning step, capability information processed based on the extended print function information is transmitted to a print application that has issued the extension request. (Configuration 8) The program according to configuration 6 or 7, characterized in that when the printing function information is expanded and the expanded printing function information is returned to the printing application that issued the expansion request, the program further causes the computer to execute a return step of returning the printing function information to its state before expansion. (Configuration 9) The extension request is accepted in a form included in print setting information received from the specific print application; 9. The program according to any one of configurations 6 to 8, wherein the content of the extension request is specified by a setting item included in the print setting information. (Configuration 10) 10. The program according to claim 9, wherein the setting item includes a name of a print application that has issued the extension request, or a name indicating a classification of the extension information to be added. (Configuration 11) 11. The program according to claim 10, wherein the setting item further includes detailed values ​​of the extended information. (Configuration 12) A program described in any one of configurations 9 to 11, characterized in that if the received printing setting information does not include the extension request, in the return step, the printing function information is returned unextended to the printing application that sent the printing setting information. (Configuration 13) 13. The program according to any one of configurations 6 to 12, wherein the print application that has issued the extension request executes the unique print function based on the extended print function information. (Configuration 14) An information processing apparatus having an extension application that is associated with print data generation software to extend a function of the print data generation software, A means for checking whether a specific printing application capable of executing a unique printing function is installed; a determination unit that determines whether or not printing function information used in the print data generating software needs to be updated based on the confirmed presence or absence of the installation; and updating means for updating the printing capability information in response to a determination that an update is necessary. (Configuration 15) An information processing apparatus having an extension application program that is associated with print data generation software to extend the function of the print data generation software, an extension means for extending the printing function information used in the print data generation software in response to receiving an extension request for the printing function information from a specific printing application capable of executing a unique printing function; a return unit that returns the extended printing function information to a printing application that has issued the extension request. (Method 1) 1. A method for controlling an information processing apparatus having an extension application that is associated with print data generation software to extend a function of the print data generation software, comprising: On the computer, A confirmation step to check for the installation of a specific printing application that can perform custom printing functions; a determination step of determining whether or not printing function information used in the print data generating software needs to be updated based on the confirmed presence or absence of the installation; an updating step of updating the printing capability information in response to a determination that an update is necessary, the control method for an information processing apparatus comprising the steps of: (Method 2) 1. A method for controlling an information processing apparatus having an extension application that is associated with print data generation software to extend a function of the print data generation software, comprising: On the computer, an extension step of extending the print function information in response to receiving an extension request for the print function information used in the print data generation software from a specific print application capable of executing a unique print function; a returning step of returning the extended printing function information to the printing application that issued the extension request. [Explanation of symbols]

[0103] 101 Host Computer 102 Printing device 201 Printing Application 202 Printing data generation software 203 Printer Data Format (PDC) 204 Extended Applications 206 Printing function expansion unit< / addcapabilitiyinfo>

Claims

1. An extension application program that is associated with print data generation software operable on an information processing device to extend a function of the print data generation software, On the computer, A confirmation step to check for the installation of a specific printing application that can perform custom printing functions; a determination step of determining whether or not printing function information used in the print data generating software needs to be updated based on the confirmed presence or absence of the installation; an updating step of updating the printing capability information in response to a determination that an update is necessary.

2. In the determination step, when it is determined that the specific print application is installed and that the extension information required for executing the specific print application is not described in the print function information, it is determined that an update is necessary; 2. The program according to claim 1, wherein in the updating step, the extension information is added to the printing function information in response to a determination that an update is necessary.

3. In the determination step, when it is determined that the specific print application has been uninstalled and that extension information required for executing the specific print application has been described in the print function information, it is determined that an update is necessary; 2. The program according to claim 1, wherein in the updating step, the extension information is deleted from the printing function information in response to a determination that an update is necessary.

4. 2. The program according to claim 1, wherein in the confirmation step, it is confirmed whether the specific print application is installed by checking whether the specific print application can be started using a URI (Uniform Resource Identifier).

5. 2. The program according to claim 1, wherein the specific print application executes the unique print function based on the updated print function information.

6. An extension application program that is associated with print data generation software operable on an information processing device to extend a function of the print data generation software, On the computer, an extension step of extending the print function information in response to receiving an extension request for the print function information used in the print data generation software from a specific print application capable of executing a unique print function; a returning step of returning the extended printing function information to a printing application that has issued the extension request.

7. 7. The program according to claim 6, wherein in the returning step, capability information processed based on the extended print function information is transmitted to a print application that has issued the extension request.

8. The program according to claim 6, further comprising causing the computer to execute a return step of returning the printing function information to a state before the expansion when the printing function information is expanded and the expanded printing function information is returned to the printing application that issued the expansion request.

9. The extension request is accepted in a form included in print setting information received from the specific print application; 7. The program according to claim 6, wherein the content of the extension request is specified by a setting item included in the print setting information.

10. 10. The program according to claim 9, wherein the setting items include a name of a print application that has issued the extension request, or a name indicating a category of the extension information to be added.

11. 11. The program according to claim 10, wherein the setting items further include detailed values ​​of the extended information.

12. The program according to claim 9, characterized in that if the received printing setting information does not include the extension request, in the return step, the printing function information is returned without being extended to the printing application that sent the printing setting information.

13. 7. The program according to claim 6, wherein the print application that has issued the extension request executes the unique print function based on the extended print function information.

14. An information processing apparatus having an extension application that is associated with print data generation software to extend a function of the print data generation software, A means for checking whether a specific printing application capable of executing a unique printing function is installed; a determination unit that determines whether or not printing function information used in the print data generating software needs to be updated based on the confirmed presence or absence of the installation; and updating means for updating the printing capability information in response to a determination that an update is necessary.

15. An information processing apparatus having an extension application program that is associated with print data generation software to extend the function of the print data generation software, an extension means for extending the printing function information used in the print data generation software in response to receiving an extension request for the printing function information from a specific printing application capable of executing a unique printing function; a return unit that returns the extended printing function information to a printing application that has issued the extension request.

16. 1. A method for controlling an information processing apparatus having an extension application that is associated with print data generation software to extend a function of the print data generation software, comprising: On the computer, A confirmation step to check for the installation of a specific printing application that can perform custom printing functions; a determination step of determining whether or not printing function information used in the print data generating software needs to be updated based on the confirmed presence or absence of the installation; an updating step of updating the printing capability information in response to a determination that an update is necessary, the control method for an information processing apparatus comprising the steps of:

17. 1. A method for controlling an information processing apparatus having an extension application that is associated with print data generation software to extend a function of the print data generation software, comprising: On the computer, an extension step of extending the print function information in response to receiving an extension request for the print function information used in the print data generation software from a specific print application capable of executing a unique print function; a returning step of returning the extended printing function information to the printing application that issued the extension request.

Citation Information

Patent Citations

  • Support program, information processor, and printing method

    JP2020126364A