Application, and control method and information processing device to be implemented by application
The print setting application addresses the issue of not being able to control the printing of annotations and forms in PDF files by extending the general-purpose printer driver to allow for selective printing without file format conversion.
Patent Information
- Application Number
- JP2023201642
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2023-11-29
- Publication Date
- 2025-06-10
AI Technical Summary
The setting value for selecting whether to print annotations and forms in PDF files is not communicated to the printing device, preventing the use of this function when directly sending PDF format files from an application to a printing device.
A print setting application that extends the functionality of a general-purpose printer driver, allowing users to set whether to print annotations and forms without converting the file format, by controlling the transmission of print data based on these settings.
Enables control over printing annotations and forms in PDF files even when transmitting files in their original format, ensuring that users can selectively print these elements as needed.
Smart Images

Figure 2025087174000001_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to an application, a control method executed by the application, and an information processing apparatus.
Background Art
[0002] In recent years, "general-purpose printer drivers (local printer drivers)" that perform print communication using industry-standard protocols such as IPP (Internet Printing Protocol) have been proposed. Also, "general-purpose printer drivers (cloud printer drivers)" that communicate with a cloud print server have been proposed. "General-purpose printer drivers" can communicate with printers of multiple printer vendors. A user can send print data to a printer or a cloud print server connected to a PC or the like and execute printing without installing a vendor-specific printer driver.
[0003] Conventionally, in printing using a "general-purpose printer driver", a file output by an application is once converted to the "XPS (XML Paper Specification) format" by XPS (registered trademark) conversion. Next, the converted XPS format is converted to the "PDF (Portable Document Format)" format and sent to the printer (see Patent Document 1).
[0004] On the other hand, there are applications that output PDF format files among applications operating on a PC. When such an application is used and a general-purpose printer driver is utilized, it has been considered to directly send a PDF format file or the like output by the application to the printer.
[0005] On the other hand, in a predetermined application that outputs a file in PDF format, when printing a file in PDF format, a function is provided that allows the user to select whether to print the annotations and forms in the PDF. As an application for printing a file in PDF format, for example, there is Acrobat DC from Adobe. In the print dialog displayed by Acrobat DC, it is possible to select whether to print only the "document" in the PDF, or "document and annotations", or "document and forms". This function is used, for example, when there are text annotations in the PDF as memos and the user does not want to print those memos during printing.
[0006] The function of generating data with annotations and forms added to a document for printing is provided by an application that handles files in PDF format, such as Acrobat DC. The application converts the data for printing the document, annotations, and forms generated by the application using GDI (Graphics Device Interface) and sends the drawing commands to a general-purpose printer driver. Based on the received drawing commands, the general-purpose printer driver creates an XPS format file containing the document, annotations, and forms using the functions of the OS (Operating System).
Prior Art Documents
Patent Documents
[0007]
Patent Document 1
Summary of the Invention
Problems to be Solved by the Invention
[0008] The setting value of the function that allows selection of whether to print the annotations and forms in the PDF is not notified to the printing device, and in a system where a PDF format file output by an application is directly sent to the printing device for printing, this function cannot be used.
[0009] An object of the present invention is to control whether to print an annotation in a file of a predetermined format without changing the format when transmitting the file of the predetermined format output by an application to a printing device.
Means for Solving the Problems
[0010] The application described in the present application is a print setting application that extends the function of a general-purpose printer driver stored in an information processing device, and sets a setting value of a first function for transmitting a file of a predetermined format output by a document generation application to a printing device without converting the format, a second setting step of setting a setting value of a second function for printing information added using a predetermined function provided by the document generation application when the first function is set to be effective, and a control step of causing the computer to transmit print data generated based on the setting value set in the second setting step when the first function is set to be effective in the first setting step.
Effects of the Invention
[0011] According to the present invention, even when transmitting a file of a predetermined format output by an application to a printing device without changing the format, it is possible to control whether to print an annotation in the file of the predetermined format.
Brief Description of the Drawings
[0012]
Figure 1
Figure 2
Figure 3
Figure 4
Figure 5
Figure 6
Figure 7
Figure 8
Figure 9
Figure 10
Figure 11
Figure 12
Figure 13
Figure 14
Figure 15
Figure 16
Figure 17
Figure 18
Figure 19
Figure 20
Figure 21
Modes for Carrying Out the Invention
[0013] <First Embodiment> Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings. However, the configurations described in the following embodiments are merely examples, and the scope of the present invention is not limited by the configurations described in the embodiments. In this specification, a print settings application that extends the print settings function of the standard driver installed in the OS of the client terminal 101 is referred to as a "print settings extension application". Also, the "general-purpose printer driver" may be referred to as the "standard driver".
[0014] <Figure 1: System Configuration> Figure 1 is a configuration diagram of a print system 1 according to an embodiment of the present invention. The print system 1 is a system capable of cloud printing. The print system 1 includes a client terminal 101, a cloud print server 102, and a cloud print-compatible printer 104. These are connected to each other via a network 107 so as to be able to communicate required information.
[0015] In FIG. 1, only one client terminal 101 and one cloud-print-compatible printer 104 are shown, but there may be multiple client terminals 101 and multiple cloud-print-compatible printers 104. Also, the cloud print server 102 may be composed of multiple information processing devices. Further, load distribution may be performed such that each server (102, 103, 105) is a server system composed of multiple information processing devices.
[0016] Also, the cloud print server 102 may be virtually configured inside a single physical information processing device. The network 107 assumes a WAN such as the Internet that enables the provision of cloud services, but all of it may be in a closed communication environment such as an in-house LAN.
[0017] In the client terminal 101, a cloud printer driver 311, a print setting extension application 312, and a local printer driver 314 are installed in an OS (not shown in FIG. 1). The client terminal 101 is an information processing device such as a PC, a tablet, or a smartphone, and is a terminal that can be directly operated by a user. In the client terminal 101, required application software can be executed on the OS and middleware. The cloud printer driver 311 is a printer driver manufactured by the provider of the cloud print service and is a driver pre-installed in the OS.
[0018] The cloud-print-compatible printer 104 is a printing device that actually performs printing on a recording medium such as paper. For example, it is an image forming apparatus (MFP) having a plurality of functions including a printing function of converting received print data into image data and printing it via the network 107, a fax function, and a copy function. The cloud-print-compatible printer 104 can receive print data from the client terminal 101 via the cloud print server 102. At the same time, it can receive print data directly from the client terminal 101 without going through the cloud print server 102.
[0019] The cloud-print-compatible printer 104 receives print data generated by the cloud printer driver 311 installed in the client terminal 101 via the cloud print server 102. Also, the cloud-print-compatible printer 104 can receive print data generated by the local printer driver 314 installed in the client terminal 101 without going through the cloud print server 102 and execute printing. The local printer driver 314 is a printer driver provided by a vendor (manufacturer) that provides an OS (Operating System), and is a printer driver pre-installed in the OS.
[0020] The cloud print server 102 includes a cloud print service 321. The cloud print service 321 receives a print instruction and print data from the outside. Then, the cloud print server 102 transmits the received print data to the cloud-print-compatible printer 104 specified by the print data. In this embodiment, image data and print setting information are collectively referred to as "print data".
[0021] Next, with reference to FIG. 2, the configurations of each of the servers 102, 103, 105, the client terminal 101, and the cloud-print-compatible printer 104 in the printing system 1 of this embodiment will be described.
[0022] FIG. 2(a) is a configuration diagram of the client terminal 101. The client terminal 101 includes a display unit 216, an operation unit 217, a storage unit 214, a control unit 211, and a network communication unit 215. The display unit 216 is a display device such as a liquid crystal display, and displays information visible to the user. The operation unit 217 is an input device for receiving input from the user such as a keyboard and a mouse. The storage unit 214 is a storage device that rewritably and non-volatilely stores data such as a hard disk, an SSD, and a flash memory. Note that a device having both functions of the display unit 216 and the operation unit 217, such as a touch panel, may be employed.
[0023] The control unit 211 includes a CPU 212 and a memory 213, and controls the overall operation of the client terminal 101. The CPU 212 expands the program stored in the storage unit 214 onto the memory 213 and executes the expanded program. The memory 213 is the main memory of the CPU 212 and has a work area and a temporary storage area for expanding various programs. The network communication unit 215 performs transmission and reception of digital data with external servers (102, 103, 105) and the cloud print-compatible printer 104 via the network 107.
[0024] FIG. 2(b) is a configuration diagram of the cloud print server 102. The cloud print server 102 includes a storage unit 224, a control unit 221, and a network communication unit 225. Since the storage unit 224, the control unit 221, and the network communication unit 225 are equivalent to the corresponding ones of the client terminal 101, the description thereof is omitted.
[0025] As shown in FIG. 2(b), in the present embodiment, the cloud print server 102 is configured as a single information processing apparatus. However, the cloud print server 102 may be a server system configured by a plurality of information processing apparatuses. Programs for various services provided by the cloud print server 102 are non-volatilely stored in the storage unit 224 of the cloud print server 102. These programs are expanded onto the memory 223 when the cloud print server 102 is started, and the expanded programs are executed by the CPU 222 to realize the cloud print service 321.
[0026] Figure 2(c) is a configuration diagram of the cloud print-compatible printer 104. The cloud print-compatible printer 104 includes a display unit 246, an operation unit 247, a storage unit 244, a control unit 241, a network communication unit 245, and a printing unit 248. The display unit 246 is a display device such as a touch panel or an LED provided in the cloud print-compatible printer 104 that displays information in a visible manner to the user. The operation unit 247 is an input device for receiving input from the user, and may have a hard key such as a numeric keypad in addition to the touch-operable touch panel. Since the storage unit 244 and the control unit 241 are equivalent to the corresponding ones of the client terminal 101, the description thereof is omitted.
[0027] The network communication unit 245 communicates with an external network 107. The network communication unit 245 mainly receives print data, but also has a function of transmitting information indicating its own state such as error information to an external server. The printing unit 248 executes a printing process by performing a series of operations of feeding paper, printing, and discharging paper on the paper, which is a printing medium prepared in a cassette or a tray. The printing method is not particularly limited, such as an electrophotographic method or an inkjet method. The printing unit 248 also includes a duplex unit used at the time of paper discharge, a finishing device such as a stapler and a punching process. In this embodiment, as an example of the cloud print-compatible printer 104, a single-function printer that performs only a printing function is described, but a multifunction device (MFP, etc.) having a plurality of functions may also be used.
[0028] Next, with reference to FIG. 3, the processing from "print settings" to "print data transmission" in the print settings extension application 312 will be described.
[0029] The document generation application 315 displays a print settings screen (FIG. 4) for selecting a print queue on the display unit 216 as an initial print settings screen. The document generation application 315 is an application for generating a document file, such as an application for creating document data, an application for creating presentation materials, and an application for displaying photo or image data.
[0030] In this embodiment, the document generation application 315 displays a print setting initial screen on the display unit 216. As shown in FIG. 4, an object 401 for selecting a printer, an object 402 for print settings, and a print preview 403 are displayed on the print setting initial screen. Further, an object 404 for other settings and a print button 405 are also displayed on the print setting initial screen.
[0031] Furthermore, on the print setting initial screen, an "annotation printing" 406 for setting whether to print annotations in the PDF and a "form printing" 407 for setting whether to print forms in the PDF are also displayed. An annotation in the PDF is something that associates an object such as a memo with a page in the PDF. The PDF has various annotation types such as text annotations. Also, a form in the PDF is a collection of fields. A field is something that collects information through interaction with the user. For example, there are button fields such as check boxes, text fields for entering text, and selection fields such as list boxes.
[0032] In this embodiment, the document generation application 315 displays the print setting initial screen, but the OS 313 may display the print setting initial screen.
[0033] First, in S301, the document generation application 315 notifies the OS 313 of the print queue information selected by the user via the object 401. Specifically, the document generation application 315 sends the print queue selection information to the OS 313. Note that it is described that the print queue of the default printer is selected at the timing when the display of the print setting initial screen is started.
[0034] Next, in S302, the OS 313 sends a "Capability Information Acquisition Request" to the Cloud Print Service 321 to acquire the "capability information" of the printer. The OS 313 sends the "Capability Information Acquisition Request" to the Cloud Print Service 321 by specifying the printer name selected in the object 401 of the print setting initial screen.
[0035] Regarding the inquiry, it is made to the Cloud Print Service 321 that registers the Cloud Print-compatible Printer 104 using a standard protocol defined by "IPP" such as "Get-printer-Attributes". When using "Get-printer-Attributes", the "capability information" set by the OS 313 is inquired in a list format.
[0036] Next, in S303, the Cloud Print Service 321 refers to the list of "capability information" sent by "Get-printer-Attributes" to the OS 313 and returns the "capability information" of the Cloud Print-compatible Printer 104. In FIG. 3, this is described as "Capability Information Response". For example, assume that the "attribute value" of the media size is specified by "Get-printer-Attributes(IPP)". Then, if the Cloud Print Service 321 has the "attribute value" of the media size, it returns the value ("A4", "B5", "Letter", etc.) associated with the "attribute value". On the other hand, if the "attribute value" specified by "Get-printer-Attributes" does not exist in the queue of the Cloud Print-compatible Printer 104 of the Cloud Print Service 321, no response of the associated value is made.
[0037] Here, the capability information acquired by the processes of S302 and S303 will be described with reference to FIG. 5. FIG. 5 shows the capability information of the Cloud Print-compatible Printer 104 registered in the Cloud Print Server 102.
[0038] In this embodiment, for the communication of "capability information", "IPP" is used as the communication protocol, so that the cloud printing service 321 obtains the "item name", "attribute value", and "default value" as shown in FIG. 5 from the cloud printing-compatible printer 104. The "item name" corresponds to the setting item of the print setting information, the "attribute value" corresponds to the options and setting value ranges in each setting item, and the "default value" corresponds to the setting value. In addition, the "item name" and "attribute value" stored in the cloud printing-compatible printer 104 include information defined as an industry standard specification by "IPP" and information uniquely defined by the printer vendor.
[0039] Among the capability information described in FIG. 5, "PDF pass-through" 501, "PDF annotation" 502, and "PDF form" 503 are vendor-specific setting items.
[0040] "PDF pass-through" 501 is the capability information of the function for setting whether to use the function (PDF pass-through) of printing the "PDF" generated by the document generation application 315 without converting it to "XPS (registered trademark)" at the time of print execution. "ON" indicates valid, and "OFF" indicates invalid. When "PDF pass-through" is set to invalid, the application calls the "API (Application Programming Interface)" prepared by the OS 313. Then, the OS 313 converts the PDF file to be printed into the XPS file format and passes the XPS data to the cloud printer driver 311.
[0041] "PDF annotation" 502 is the capability information of the function for switching whether to print the annotations in the PDF by the cloud printing-compatible printer 104. Similarly, "PDF form" 503 is the capability information of the function for switching whether to print the forms in the PDF by the cloud printing-compatible printer 104.
[0042] Here, a method for setting default values of vendor - specific capability information registered in the cloud print server 102 will be described with reference to FIG. 9. FIG. 9 is a setting screen displayed on the display unit 246 of the cloud - print - compatible printer 104.
[0043] Screen 901 is a screen for setting the default value of the PDF pass - through printing function when using the printer driver standard - installed in the OS 311. When the "Do" button is selected, the cloud - print - compatible printer 104 sets the default of PDF pass - through printing to "ON". When the "Don't" button is selected, the cloud - print - compatible printer 104 sets the default of PDF pass - through printing to "OFF". The set default value of the "PDF pass - through setting" 501 is notified to the client terminal 101 via the cloud print server 102. Note that the printer driver standard - installed in the OS refers to the local printer driver 314 and the cloud printer driver 311.
[0044] Screen 902 is a screen for setting the default value of the annotation printing function during PDF pass - through printing. When "Do" is selected, the cloud - print - compatible printer 104 sets the default of the PDF annotation printing function when using PDF pass - through to "Print". When "Don't" is selected, the cloud - print - compatible printer 104 sets the default of the PDF annotation printing function when using PDF pass - through to "Don't print".
[0045] Screen 903 is a screen for setting the default value of the form printing during PDF pass - through printing. When "Do" is selected, the cloud - print - compatible printer 104 sets the default of the PDF form printing function when using PDF pass - through to "Print". When "Don't" is selected, the cloud - print - compatible printer 104 sets the default of the PDF form printing function when using PDF pass - through to "Don't print".
[0046] In addition, in this embodiment, an example of performing settings using the setting screen displayed on the printer main body has been shown. However, it may be possible to perform settings on the client terminal 101 via, for example, the network 107 without operating the printer main body. Note that, as the "attribute value" corresponding to the "item name" defined as an industry standard specification, a printer vendor - unique "attribute value" may be defined. Furthermore, the "capability information" is information indicating the functions installed in the printer regardless of whether the "item name" and "attribute value" are defined in IPP.
[0047] In S303, among the capability information shown in FIG. 5, the capability information defined in IPP is acquired.
[0048] Next, in S304, the OS 313 updates the "device capability information" based on the "capability information" acquired from the cloud print service 321. When the "device capability information" is updated, by executing the update process in S304, the "device capability information" managed by the client terminal 101 can be updated.
[0049] Next, in S305, the OS 313 notifies the print setting extension application 312 of an "event" and an "API" used for editing the device capability information.
[0050] In response to receiving the "event", the print setting extension application 312 sends a request to the cloud print service 321 to acquire the "capability information". This is described as "acquire capability information" in FIG. 3. The acquisition of the "capability information" executed here is for writing the "setting items" and "attribute values" uniquely defined by the printer vendor into the "device capability information".
[0051] Next, in S306, when the print settings extension app 312 receives an edit event of "device capability information" from the OS 313, it queries the cloud print service 321 for the capability information of the cloud print-compatible printer 104. This is described as "acquire capability information" in FIG. 3. At this time, the print settings extension app 312 queries the cloud print service 321 to read the "capability information" including the "PDF pass-through setting" 501 (see FIG. 5) stored in the cloud print-compatible printer 104.
[0052] The query is performed using "Get-printer-Attributes" in the same way as the process in S302 of FIG. 3, and the "capability information" is acquired by specifying the "item name" of the setting item to be queried. Note that the acquisition target of the "capability information" in S306 is not limited to only the "setting items" and "attribute values" defined uniquely by the printer vendor, and may be the "setting items" already acquired by the OS 313.
[0053] Next, in S307, the cloud print service 321 responds to the print settings extension app 312. This is described as "capability information response" in FIG. 3. In this embodiment, the "capability information" responded in S307 is the "capability information" of the cloud print-compatible printer 104 stored and saved by the cloud print service 321 in the storage unit 324 (see FIG. 2).
[0054] In this way, by executing S306 and S307, the client terminal 101 can acquire the vendor-specific capability information described in 501 to 503 of FIG. 5.
[0055] Next, in S308, the print settings extension app 312 edits the "device capability information" via the "configuration information object", which is a data group necessary for editing the "device capability information". For example, the "capability information" described in 501 to 503 of FIG. 5 obtained in S307 of FIG. 3 is converted into "device capability information" and added to the "configuration information object". In this way, the "device capability information" is edited. As a result of the editing, "capability information" regarding standard "setting items" obtained by the inquiry of the OS 313 is added to the "device capability information". Thereby, vendor-specific "setting items" and "attribute values" including "PDF pass-through settings" 501, "PDF annotations" 502, and "PDF forms" 503 are stored in the storage unit 214.
[0056] Next, in S309, the print settings extension app 312 sends the edited "device capability information" to the OS 313. The OS 313 associates the "device capability information" obtained from the print settings extension app 312 with the print queue and stores it in the storage unit 214. Next, in S310, when the OS 313 updates the "device capability information", an object that triggers the display of the UI of the print settings extension app 312 such as the object 404 (FIG. 4) becomes selectable. Note that the object 404 is grayed out until the process in S310 is completed.
[0057] Then, in S311, when the user selects the object 404, the OS 313 starts the print settings extension app 312 and displays a print settings screen as shown in FIG. 8 on the display unit 216. In S311, a UI corresponding to the "capability information" is started. As a result, a UI reflecting the device settings is displayed. That is, it includes a UI unit that displays, on the display screen of the display unit 216, information reflecting information indicating whether file conversion included in the read print settings information is valid or invalid. This print settings screen does not depend on the type of document generation app 315 to be used.
[0058] If the print queue and the print settings extension app 312 are not associated, the "standard print settings screen" pre-installed in the OS 313 is displayed as shown in Fig. 7(a). By pressing the detailed settings button 701 on the "standard print screen", the detailed print screen in Fig. 7(b) is displayed. A detailed print screen is displayed to show the setting items that cannot be fully displayed in Fig. 7(a). Note that the detailed print screen shown in Fig. 7(b) corresponds to the vertical movement operation of the scroll bar (SB), and as shown in Fig. 7(c) and Fig. 7(d), the screen is moved up and down to display the setting contents of a plurality of setting items supported by the OS 313.
[0059] Also, in Fig. 7(a), the apply button 703 is a button for saving the print settings, the cancel button 704 is a button for returning to the screen in Fig. 4 without saving the print settings, and the OK button 905 is a button for saving the print settings and returning to the screen in Fig. 4. Note that although the OK button is also displayed in Figs. 7(b) to 7(d), the OK button in Fig. 7(b) is indicated by the symbol "702". Note that the print settings screen provided by the OS 313 does not display the setting items related to PDF pass-through.
[0060] Now, let's return to the print settings extension app 312. The print settings extension app 312 receives the print settings information generated based on the print settings capability information generated by the OS 313 based on the "device capability information" and displays Fig. 8(a), which is an extended print settings screen, on the display unit 216. The screens in Figs. 8(a) to 8(e) are displayed by scrolling the scroll bar (SB). The print settings extension app 312 displays the content indicated by the "device capability information" as a setting value (attribute value) on the extended print settings screen.
[0061] The print setting extension app 312 provides a function for the user to arbitrarily change print settings. When the print settings are changed, the set values are configured to be savable. When the user selects and operates the OK button 802 displayed on the print setting extension screen in Fig. 8(a), the print settings are confirmed. For example, assume that the user changes the output paper size from "A4" to "Letter" on the UI. In this case, the print setting information held by the print setting extension app 312 is changed from the output paper size "A4" to "Letter".
[0062] The list box 803 shown in Fig. 8(d) is a box for setting the enable / disable of the "PDF pass-through function". The list box 803 can reflect the "capability information" acquired by the print setting extension app 312 from the cloud print-compatible printer 104 in S306. When "PDF pass-through setting: 501 in Fig. 5" is set to "ON" in the cloud print-compatible printer 104, a setting screen with the default setting of "PDF pass-through" shown in the list box 803 set to "ON" is presented to the user. On the other hand, when the PDF pass-through setting 501 is set to "OFF" in the cloud print-compatible printer 104, a setting screen with the default setting of "PDF pass-through" shown in the list box 803 set to "OFF" is presented to the user.
[0063] When PDF pass-through is "disabled: OFF", the PDF format data created by the document generation app 315 is temporarily converted to XPS format data by the OS 313 (conversion section), converted to PDF format by the print setting extension app, and sent to the cloud print server 102.
[0064] On the one hand, when the PDF pass-through is "enabled", the document generation application 315 transmits the PDF-formatted data it generates to the cloud print server 102 without converting it to XPS-formatted data. FIG. 8(f) is a setting screen regarding annotation printing and form printing when using the PDF pass-through function. 804 is displayed based on 502 in FIG. 5. 805 is displayed based on 503 in FIG. 5. Note that these two setting items are grayed out and cannot be set when 803 is set to invalid. In this embodiment, 804 and 805 in FIG. 8(f) are assumed to be setting items set independently of 406 and 407 in FIG. 4.
[0065] In S312, when the OK button 802 is selected and operated by the user, the print setting extension application 312 acquires the "print setting information" set on the print setting screen from the print setting screen, passes the print setting information to the OS 313, and closes the extended print setting screen shown in FIG. 8. Then, when the process in S312 is completed, the initial print setting screen in FIG. 4 reflecting the setting values set in the print setting extension application 312 is displayed.
[0066] Next, in S313, when the user presses the print button 405 on the initial print setting screen shown in FIG. 4, a print instruction is input to the OS 313. The OS 313 executes a print process based on the input instruction (print execution).
[0067] In the print settings initial screen shown in Fig. 4, the following "three patterns" are assumed for the processing when the user selects and operates the print button 405. "The first pattern" is the case where the print settings extension app 312 associated with the selected print queue is installed on the client terminal 101 and the setting of the PDF pass-through function is set to "invalid". "The second pattern" is the case where the print settings extension app 312 associated with the selected print queue is not installed. And "the third pattern" is the case where the print settings extension app 312 associated with the selected print queue is installed and the PDF pass-through function is set to "valid". Each will be described below one by one.
[0068] The first pattern is the case where the print settings extension app 312 corresponding to the print queue is installed on the client terminal 101 and the "PDF pass-through function" is set to "invalid". In S314, the OS 313 generates intermediate data from the image data output by the document generation app 315. The OS 313 sends the intermediate data and the print settings information to the print settings extension app 312 via the cloud printer driver 311.
[0069] The "intermediate data" is, for example, data in the XPS format, and the "printing ability information" specifically indicates the "attribute value" defined by the print settings information in IPP.
[0070] Also, in the print settings initial screen displayed by the document generation app 315 in Fig. 4, if the "annotation printing" 406 for setting whether to print the annotations in the PDF is set to "print", the document generation app 315 also outputs the annotations. If it is set to "do not print", the annotations are not output.
[0071] Similarly, if the "form printing" 407 for setting whether to print the forms in the PDF is set to "print", the document generation app 315 also outputs the forms. If it is set to "do not print", the forms are not output.
[0072] Next, in S315, the print setting extension app 312 generates "print data" and "printing ability information" based on the "intermediate data" and "print setting information" received from the OS 313. Note that in FIG. 8, only the generation of "print data" is described.
[0073] Then, in S316, the print setting extension app 312 sends the generated "print data" and "printing ability information" to the print queue of the OS 313.
[0074] The above is the processing content of the first pattern.
[0075] Next, a case where the print setting extension app 312 associated with the selected print queue, which is the second pattern, is not installed will be described.
[0076] In S317, the OS 313 sends the intermediate data and the print setting information to the cloud printer driver 311. In S318, the cloud printer driver 311 converts the data output by the document generation app 315 into "intermediate data", and generates print data and "printing ability information" based on the "intermediate data" and the "print setting information". Note that in S318 of FIG. 3, although it is described that print data is generated, "printing ability information" is also generated.
[0077] On the print setting initial screen displayed by the document generation app 315 in FIG. 4, when "annotation printing" 406 for setting whether to print the annotations in the PDF is set to "print", the document generation app 315 also outputs the annotations. When it is set to "do not print", the annotations are not output.
[0078] Similarly, when "form printing" 407 for setting whether to print the forms in the PDF is set to "print", the document generation app 315 also outputs the forms. When it is set to "do not print", the forms are not output.
[0079] The third pattern is the case where the print setting extension app 312 corresponding to the selected print queue is installed on the client terminal 101, and the "PDF pass-through" setting is set to "enabled". Note that the "PDF pass-through" can be set to "enabled" only when the document generation app 315 can output a PDF file.
[0080] The OS 313 receives a PDF file and print specification information from the document generation app 315. In S319, the OS 313 sends the received PDF file and print specification information to the print setting extension app 312. Note that in S319 of FIG. 3, it is described as "pass PDF". Next, in S320, the print setting extension app 312 generates "printing ability information" based on the received print setting information while leaving the received PDF file as it is. The print setting extension app 312 transmits the PDF file and the generated "printing ability information" to the OS 313. This "printing ability information" also includes information on "annotation printing" 804 indicating whether to print annotations and "form printing" 805 indicating whether to print forms. Note that in S319 of FIG. 3, it is only described as "pass PDF to the OS".
[0081] As described above, in the first pattern, the processes of S314, S315, and S316 are executed and rendered by the print setting extension app 312. Also, in the second pattern, the processes of S317 and S318 are executed and rendered by the cloud printer driver 311. And in the third pattern, the processes of S319 and S320 are executed and the PDF pass-through is executed.
[0082] Next, in S321, the OS 313 transmits the print data and the "printing ability information" received from the print setting extension app 312 or the cloud printer driver 311 to the cloud print service 321. And in S321, the cloud print service 321 transmits the print data and the "printing ability information" received from the client terminal 101 to the cloud print-compatible printer 104.
[0083] Then, in the cloud print-compatible printer 104, when a PDF is passed through, it controls whether to draw annotations and forms based on the information included in the "printing ability information".
[0084] Note that the cloud print-compatible printer 104 may periodically inquire of the cloud print service 321 to obtain the unprinted print data held on the cloud print service 321 and the "printing ability information" corresponding to the print data. Also, in the process of S301 in FIG. 3, the "ability information" is acquired and the display of the print settings screen is performed at the timing when the printer name is selected in the document generation application 315, but the above-described process may be started at other timings. For example, the above-described process may be started at the timing when the object 404 displayed on the document generation application 315 is selected.
[0085] The processes up to this point are the entire print processing using the print settings extension application 312 or the print settings extension application 312. Hereinafter, a detailed description of "PDF pass-through" will be given.
[0086] In the first embodiment, when performing "PDF pass-through", the cloud print-compatible printer 104 side performs an additional process for annotations and forms.
[0087] First, in the print settings screen displayed by the print settings extension application 312, a setting is made as to whether to print annotations and forms. The setting information and the PDF created by the document generation application 315 are sent to the cloud print-compatible printer 104 without conversion. Then, according to the setting information, the cloud print-compatible printer 104 side controls whether to print annotations and forms.
[0088] FIG. 10 and FIG. 11 are flowcharts showing the processes executed by the client terminal 101 in the first embodiment. FIG. 10 is a flowchart showing the process when the print setting extension app 312 displays a print setting screen and accepts print settings. This process is realized by loading the program stored in the memory 213 of FIG. 2 and the CPU 212 executing this loaded program. Specifically, the process is realized by the CPU 212 executing the print setting extension app 312.
[0089] In accordance with the selection of the print queue corresponding to the print setting extension app 312 on the print setting screen (FIG. 4) of the document generation app 315, the process described in FIG. 10 is started.
[0090] In S1001, the CPU 212 transmits a request to acquire capability information to the cloud print service 321 via the network 107. The request is made using the Get-Printer-Attributes operation defined in IPP, and capability information is acquired for all the setting items shown in FIG. 5.
[0091] In S1002, the CPU 212 determines whether the "capability information" has been acquired.
[0092] In S1002, when the print setting extension app 312 determines that the "capability information" of the printer has been acquired, the CPU 212 executes the process described in S1003. In S1003, the CPU 212 saves the "capability information" of the printer associated with the print queue selected by the user in the storage unit 214.
[0093] On the other hand, when the print setting extension app 312 determines that the "capability information" of the printer has not been acquired, the CPU 212 proceeds to S1004.
[0094] Next, in S1004, the CPU 212 determines whether "Other Settings" 404 on the print settings screen shown in FIG. 4 is selected. The CPU 212 performs the process described in S1004 until "Other Settings" 404 is selected.
[0095] On the other hand, if it is determined that "Other Settings" 404 is selected, the CPU 212 proceeds to S1005.
[0096] When "Other Settings" 404 is selected, a notification is sent from the document generation app 315 to the OS 313. Upon receiving the notification, the OS 313 selects the print settings extension app 312 associated with the print queue of the selected printer name and instructs the selected print settings extension app 312 to display the extended print settings screen.
[0097] In S1005, the CPU 212 determines whether the printer of the selected printer name can execute printing based on a PDF file based on the device capability information associated with the print queue. Specifically, the CPU 212 refers to the device capability information and determines whether the cloud print-compatible printer 104 supports PDF files.
[0098] If the cloud print-compatible printer 104 can perform printing based on a PDF file, the CPU 212 executes the process described in S1006. On the other hand, if the cloud print-compatible printer 104 cannot perform printing based on a PDF file, the CPU 212 executes the process described in S1007.
[0099] In S1006, the CPU 212 determines whether the file output by the document generation application 315 is a PDF file. In S1006, the print setting extension application 312 determines, for example, based on whether there is the "string" of "%PDF" at the head of the print file generated by the document generation application 315. Note that the process described in S1006 may be as follows. The print setting extension application 312 acquires the "identifier" of the document generation application 315. The print setting extension application 312 determines whether the "identifier" of the document generation application 315 it acquired matches the "identifier" of a predetermined application. When the identifier of the document generation application 315 is a predetermined identifier, the CPU 212 may determine that the document generation application 315 outputs a PDF file and proceed with the process to S1008. Note that the "identifier" of the application that instructed the print setting extension application 312 to display the print setting screen is acquired by using the "API (Application Programming Interface)" provided by the OS 313.
[0100] In S1007, the CPU 212 displays a print setting screen in which the list box for setting "enabled" or "disabled" for PDF pass-through is grayed out. By executing the process of S1007, a print setting screen 600 as shown in FIG. 6 is displayed. Reference numeral 602 is an OK button. 601 is grayed out and the setting value cannot be changed from "disabled" to "enabled". Also, the settings that cannot be used when the PDF pass-through setting is "enabled" are displayed operably. In S1307, the setting items related to PDF pass-through may be made non-displayed.
[0101] In S1008, the CPU 212 determines whether the setting of "PDF pass-through" is invalid. The CPU 212 acquires the current print setting information from the OS 313. The default value of the PDF pass-through setting is the value specified by the capability information in FIG. 5. When the PDF pass-through setting is invalid, the CPU 212 proceeds with the process to S1010.
[0102] In S1010, the CPU 212 displays a print settings screen where the "PDF pass-through" setting is "invalid" and a predetermined function can be set. In S1010, the print settings screen shown in Fig. 8(d) is displayed.
[0103] On the other hand, in S1008, when the PDF pass-through is set to "enabled", the CPU 212 executes the process described in S1009. In S1009, the CPU 212 displays a print settings screen where the "PDF pass-through" setting is "enabled" and a predetermined function is grayed out. In S1009, the print settings screen 603 shown in Fig. 6 is displayed. Reference numeral 606 indicates the OK button. In Fig. 6, "PDF pass-through" is displayed as "enabled" in the print settings screen 603 (reference numeral "604"), while the driver background pattern is grayed out (reference numeral "605").
[0104] Next, in S1011, the print settings extension app 312 determines whether the OK button 802 has been selected. If it is determined that the OK button 802 has not been selected (No), the print settings extension app 312 returns the process to S1008. In the subsequent processes of S1008 to S1011, if the "PDF pass-through" setting has not been changed, the display related to the PDF pass-through is not changed. When the user changes the "PDF pass-through" setting, the process of S1010 or S1008 is executed according to the change.
[0105] If it is determined in S1011 that the OK button 802 has been selected by the print settings extension app 312, the print settings extension app 312 transmits the current print settings information to the OS 313 and ends the display of the print settings screen. As a result, the screen shown in Fig. 4 is displayed. Here, a print settings initial screen reflecting the print settings set through the print settings screen provided by the print settings extension app 312 is displayed.
[0106] FIG. 11 is a flowchart showing the processing executed when an instruction to start printing is given on the initial printing settings screen. The processing described in each block of FIG. 11 is realized by the CPU 212 executing any one of the programs of the OS 313, the document generation application 315, and the printing settings extension application 312.
[0107] In S1013, the OS 313 acquires the printing settings and determines whether the setting of "PDF pass-through" is "valid". If the OS 313 determines that the setting of "PDF pass-through" is "valid" (Yes), the OS 313 advances the processing to S1014. If the OS 313 determines that the setting of "PDF pass-through" is invalid (No: in the case of "invalid"), the OS 313 advances the processing to S1015.
[0108] In S1014, the OS 313 sends the PDF file output by the document generation application 315 and the printing settings to the printing settings extension application 312. More specifically, the OS 313 writes the PDF file output by the document generation application 315 and the printing settings in an area where the printing settings extension application 312 can read them. At this time, the OS 313 sends the PDF file received from the document generation application 315 to the printing settings extension application 312 as it is without changing the content of the PDF file.
[0109] In S1025, the CPU 212 determines whether annotation printing is set to be valid on the initial printing settings screen according to the program of the printing settings extension application 312. In S1026, the CPU 212 determines whether "Annotation Printing" 406 in FIG. 4 is set to "Do". If annotation printing is set to be valid, the CPU 212 enables the setting of annotation printing to be notified to the cloud printing service according to the program of the printing settings extension application 312.
[0110] In S1027, if annotation printing is set to be invalid, the CPU 212 disables the setting of annotation printing to be notified to the cloud printing service according to the program of the printing settings extension application 312.
[0111] In S1028, the CPU 212 determines whether form printing is set to be enabled on the print setting initial screen according to the program of the print setting extension app 312. The CPU 212 determines whether "Do" is set at 407 in FIG. 4. In S1029, the CPU 212 effectively sets the setting of form printing to be notified to the cloud print service according to the program of the print setting extension app 312. If form printing is set to be disabled, the CPU 212 invalidates the setting of form printing to be notified to the cloud print service according to the program of the print setting extension app 312.
[0112] Note that in the "PDF pass-through" system, on the side of the cloud print-compatible printer 104, it controls whether to print the annotations and forms in the PDF. This will be described later with reference to FIG. 12.
[0113] As also described in the problems of this specification, in the system that does not perform "PDF pass-through", that is, in printing using the "general-purpose printer driver", the document generation app 315 can control whether to print the annotations and forms. When the document generation app 315 creates an XPS via the OS 313, it can control whether to include the annotations and forms in the XPS. The details will be described after S1015.
[0114] However, in the "PDF pass-through" system, without converting the original PDF format data into XPS format data, it is directly sent to the cloud print-compatible printer 104. That is, the document generation app 315 cannot control whether to print the annotations and forms. Therefore, on the side of the cloud print-compatible printer 104 rather than the document generation app 315, it controls whether to print the annotations and forms in the PDF.
[0115] Next, the operation when "PDF pass-through" is set to "invalid" will be described.
[0116] In S1015, the CPU 212 determines whether "annotation printing" 406 indicating whether to print annotations is set to "print" according to the program of the document generation application 315. The CPU 212 determines whether to perform annotation printing according to the set value set in "annotation printing" 406 in FIG. 4.
[0117] If it is determined in S1015 that "print" is selected (YES), in S1016, the CPU 212 generates XPS data with annotations according to the program of the document generation application 315. When the document generation application 315 converts PDF format data into XPS format data via the OS 313, it includes the annotations in the XPS format data.
[0118] On the other hand, if it is determined in S1015 that "do not print" is selected (NO), the CPU 212 proceeds to S1017.
[0119] Next, in S1017, the CPU 212 determines whether "form printing" 407 indicating whether to print the form is set to "print" according to the program of the document generation application 315. The CPU 212 refers to the value set in "form printing" 407 in FIG. 4 and determines whether to print the form.
[0120] If it is determined in S1017 that "print" is selected (YES), in S1018, the CPU 212 generates XPS data with the form added according to the program of the document generation application 315. That is, when converting PDF format data into XPS format data via the OS 313, it includes the form in the XPS format data.
[0121] On the other hand, if it is determined in S1017 that "do not print" is selected (NO), the document generation application 315 does not generate XPS data with the form added. That is, when converting the original PDF format data into XPS format data via the OS 313, it does not include the form in the XPS format data.
[0122] In S1019, the CPU 212 sets the setting values for the annotation printing and form printing of the print settings to be transmitted to the cloud print service according to the program of the print setting extension app 312. In S1019, it is set to print both the annotation and the form. However, when not using PDF pass-through, the PDF data transmitted to the cloud print-compatible printer 104 does not include annotations or forms, so the value set in S1019 may be either to print or not to print.
[0123] Next, in S1020, the CPU 212 receives and acquires the converted XPS data and the print setting information from the OS 313 according to the program of the print setting extension app 312. At this time, the CPU 212 also receives the print setting information from the document generation app 315 according to the program of the OS 313.
[0124] In S1021, the CPU 212 edits the XPS data using the received print setting information according to the program of the print setting extension app 312. The data editing includes processing for converting the data, such as adding a background pattern.
[0125] In S1022, the CPU 212 refers to the capability information corresponding to the selected print queue according to the program of the print setting extension app 312 and determines whether PDF printing is included in the "capability information". And when it is determined that PDF printing is included in the "capability information" (YES), in S1023, the CPU 212 generates a PDF file based on the XPS file according to the program of the print setting extension app 312. On the other hand, in S1022, when it is determined that PDF printing is not included in the "capability information" (NO), the CPU 212 executes the process described in S1024 according to the program of the print setting extension app 312.
[0126] In S1023, the CPU 212 converts the "XPS file" into a PDF file by using the "API" provided by the OS 313 according to the program of the print setting extension app 312. Also, the print setting information is converted into "attribute values" defined by "IPP". When the print setting information includes "attribute values" not defined by "IPP", no conversion is performed for such "attribute values".
[0127] In S1022, when it is determined that PDF printing is not included in the "capability information" (NO), the CPU 212 generates "PWG - Raster" according to the program of the print setting extension app 312. The CPU 212 converts the "XPS file" into "PWG - Raster" by using the API of the OS 313 according to the program of the print setting extension app 312. Also, in S1024, similar to S1023, the CPU 212 converts the print setting information into "attribute values" defined by "IPP".
[0128] Then, in S1031, the CPU 212 registers the generated image data and the print settings in the print queue according to the program of the print setting extension app 312. The OS 313 sends the registered image data and print settings to the cloud print service 321 according to "IPP". That is, the OS 313 sends the print data obtained from the print setting extension app 312 to the cloud print service 321.
[0129] The print data registered in the print queue is sent to the cloud - print - compatible printer 104 via the cloud print service 321.
[0130] The cloud - print - compatible printer 104 controls whether to print annotations and forms. The details are described below.
[0131] FIG. 12 is a flowchart showing an example of the process executed when the cloud - print - compatible printer 104 receives print data. The process described in FIG. 12 is realized by the CPU 242 executing the program stored in the storage unit 244.
[0132] In S1201, the CPU 242 receives print data by the cloud print-compatible printer 104.
[0133] Next, in S1202, the CPU 242 determines whether the print data is PDF. If it is determined that the print data is PDF (YES), the CPU 242 executes the process described in S1502. On the other hand, if it is determined that the print data is not PDF (NO), the CPU 242 executes the process described in S1203.
[0134] In S1204, the CPU 242 determines whether to print the annotations in the PDF. The CPU 242 refers to the value set in any of S1026, S1207, and S1019 in FIG. 11.
[0135] If it is determined that the annotations in the PDF are to be printed (YES), the CPU 242 executes the process described in S1205. If it is determined that the annotations in the PDF are not to be printed (NO), the CPU 242 does not perform S1205 and proceeds to S1206. The CPU 242 reads the setting in the print settings within the print data as to whether to print the annotations, and determines whether to print the annotations in the PDF.
[0136] In S1205, the CPU 242 generates drawing data for printing the annotations in the PDF. For example, the CPU 242 converts the character string described as an annotation in the PDF into a text object to generate drawing data. The drawing data is, for example, bitmap data. By doing so, drawing data for printing the annotations is generated. Note that in S1205, if it is determined that there are no annotations in the PDF even though printing of the annotations is instructed, the process related to printing of the annotations is not performed.
[0137] In S1206, the CPU 242 determines whether to print the form in the PDF. The CPU 242 refers to the value set in any of S1029, S1030, and S1019 in FIG. 11.
[0138] If it is determined that the form in the PDF is to be printed (YES), the CPU 242 executes the process described in S1207. If it is determined that the form in the PDF is not to be printed (NO), the CPU 242 does not perform the process described in S1207 and executes the process described in S1208. The CPU 242 reads the setting in the print settings within the print data as to whether to print the form, and determines whether to print the annotations in the PDF.
[0139] In S1207, the CPU 242 generates rendering data for printing the form in the PDF. The CPU 242 generates data for rendering an object corresponding to the form according to the information of the form included in the PDF. Note that even if the CPU 242 determines to print the form, if there is no data related to the form in the PDF, the process related to printing the form is not executed.
[0140] Next, in S1208, the CPU 242 outputs the parts other than the annotations and forms (such as text) in the PDF.
[0141] The above is the process when the CPU 242 determines that the print data is a PDF.
[0142] On the other hand, if it is determined that the print data is not a PDF, in S1203, the CPU 242 outputs the print data.
[0143] As described above, the series of processes shown in FIGS. 10, 11, and 12 are completed. Thereby, when "PDF pass-through" is not performed (printing using the "general printer driver"), the document generation application 315 controls whether to print annotations and forms according to the prior art.
[0144] On the other hand, when performing "PDF pass-through", the document generation app 315 does not control whether to print annotations or forms. It sends the PDF-formatted data to the cloud print-compatible printer 104 without conversion. Then, on the side of the cloud print-compatible printer 104, it controls whether to print annotations or forms. That is, even when performing "PDF pass-through", it is possible to finally control whether to print annotations or forms.
[0145] In the first embodiment, the case of sending print data to the cloud print-compatible printer 104 via the cloud print service 321 was described as an example. It is also possible that the client terminal 101 is directly connected to the printer, and the local printer driver provided by the OS of the client terminal 101 performs the processing instead of the cloud printer driver 311. In this case, the operations performed by the cloud print service 321 in FIG. 3 will be executed by the printer.
[0146] Also, in the first embodiment, an example was described in which the setting values set in 406 and 407 of the print setting initial screen are used with priority over the 804 and 805 of the print setting screen provided by the print setting extension app 312. It is also possible to prioritize the setting values set in 804 and 805 of the print setting screen provided by the print setting extension app 312 over the setting values set in 406 and 407 of the print setting initial screen. In that case, refer to the setting values shown in FIG. 8 in S1025, S1028, S1015, and S1017 of FIG. 11.
[0147] <Second Embodiment> In the first embodiment, when performing "PDF pass-through", it was described that the print setting screen displayed by the print setting extension app 312 is used to set whether to print annotations or forms. Furthermore, a system was described in which the setting information is sent to the cloud print-compatible printer 104, and the cloud print-compatible printer 104 switches whether to print annotations or forms.
[0148] In the second embodiment, when it is set not to print annotations and forms, a PDF with the non-printed annotations and forms deleted is generated by the document generation application 315. Thereby, even when the function of controlling whether to print annotations and forms is not installed in the cloud print-compatible printer 104, it becomes possible to control the printing of annotations and forms during "PDF pass-through".
[0149] Referring to FIG. 13, the processing of the second embodiment will be described. The processing from S301 to S317 shown in FIG. 3 is the same as that of the first embodiment. Therefore, the description thereof will be omitted.
[0150] In S1301, when the document generation application 315 is set not to print annotations and forms, it creates a PDF that does not include annotations and forms. Specifically, when the "annotation printing" 406 for setting whether to print the annotations in the PDF is set to "not print", the document generation application 315 creates a PDF with the annotations deleted. Similarly, when 407 for setting whether to print the forms in the PDF is set to "not print", the document generation application 315 creates a PDF with the forms deleted.
[0151] In S320, the OS 313 passes the PDF without annotations and forms recreated in S1301 to the print setting extension application 312.
[0152] Next, referring to FIG. 14, a processing example in the second embodiment will be described. The processing described in each block of FIG. 14 is realized by the CPU 212 executing any program of the OS 313, the document generation application 315, and the print setting extension application 312.
[0153] In S1013, the CPU 212 determines whether the PDF pass-through is set to be valid according to the program of the document generation application 315. If the PDF pass-through is set to be invalid, the CPU 212 proceeds to S1015 in FIG. 11. The subsequent processing is the same as that in FIG. 11.
[0154] When it is determined in S1013 that PDF pass-through is valid (YES), in S1401, the CPU 212 determines whether the setting is to print annotations according to the program of the document generation application 315. The CPU 212 refers to the value set in "Annotation Printing" 406 and executes this determination. In the case of the setting to print annotations, since it is not necessary to recreate the PDF, the CPU 212 proceeds to S1403. When it is determined that annotations are not to be printed, the CPU 212 proceeds to S1402.
[0155] When annotations are not printed (NO), in S1402, the CPU 212 creates a PDF with annotations removed from the PDF to be printed according to the program of the document generation application 315. That is, when the setting is not to print annotations, the document generation application 315 creates a PDF with annotations removed. The PDF with annotations removed is sent to the cloud print-compatible printer 104 according to the PDF pass-through system. The cloud print-compatible printer 104 prints the sent PDF with annotations removed. Thereby, even when there is no function to control whether to print annotations on the cloud print-compatible printer 104 side, and also in the PDF pass-through system, it becomes possible to control whether to print annotations.
[0156] Next, in S1403, the CPU 212 determines whether the setting is to print forms according to the program of the document generation application 315. The CPU 212 determines whether the setting is to print forms based on the value set in "Form Printing" 407.
[0157] When forms are not printed (NO), in S1404, the CPU 212 creates a PDF with forms removed from the PDF to be printed according to the program of the document generation application 315. The reason is the same as in the case where annotations are not printed as described above. On the other hand, when forms are to be printed (YES), S1403 is skipped.
[0158] For ease of explanation, an example in which the processes of S1402 and S1404 are separated is described. In the actual process, S1402 and S1404 may be performed simultaneously. That is, a PDF with annotations and forms deleted may be created at once.
[0159] After the CPU 212 executes the process described in S1404, the process moves to S1014 in FIG. 11. The subsequent processes are the same as those in the first embodiment.
[0160] As described above, the process shown in FIG. 14 is completed. As a result, even when the function for controlling whether to print annotations and forms is not installed in the cloud print-compatible printer 104, it is possible to control the printing of annotations and forms during "PDF pass-through".
[0161] In the second embodiment, the setting values of annotation printing and form printing set in the document generation application 315 have priority over the setting values of annotation printing and form printing set in the printing setting screen of the printing setting extension application 312. It may be possible to prioritize the setting values set in the printing setting screen of the printing setting extension application 312 over the setting values set in the document generation application 315.
[0162] <Third Embodiment> In the second embodiment, it has been described that the document generation application 315 re-creates a PDF that does not include annotations and forms.
[0163] In the third embodiment, when PDF pass-through is valid and the setting is made not to print annotations and forms, the printing setting extension application 312 will be described as re-creating a PDF that does not include annotations and forms. As a result, even when the function for controlling whether to print annotations and forms is not installed in the cloud print-compatible printer 104 and the document generation application 315, it is possible to control the printing of annotations and forms during "PDF pass-through".
[0164] First, referring to FIG. 15, the processing of the third embodiment will be described. The processing from S301 to S317 shown in FIG. 3 is the same as that of the first embodiment. Therefore, the description thereof will be omitted.
[0165] In S320, the OS 313 sends the received PDF file and print specification information to the print setting extension application 312.
[0166] In S1501, when the print setting extension application 312 is set not to print annotations or forms, it re-creates a PDF that does not include annotations or forms. Specifically, on the initial print setting screen of the document generation application 315, if "Annotation Printing" 406 for setting whether to print annotations is set to "No", the print setting extension application 312 creates a PDF with the annotations deleted. Similarly, if "Form Printing" 407 for setting whether to print forms is set to "Do not print", the print setting extension application 312 creates a PDF with the forms deleted.
[0167] In S321, the print setting extension application 312 passes the PDF re-created in S1501 and not including annotations or forms to the OS 313.
[0168] Next, referring to FIG. 16, a processing example in the third embodiment will be described. The processing described in each block of FIG. 16 is realized by the CPU 212 executing any one of the programs of the OS 313, the document generation application 315, and the print setting extension application 312.
[0169] In S1013, the CPU 212 determines according to the program of the document generation application 315 whether the PDF pass-through is set to be valid.
[0170] If it is determined that the PDF pass-through is valid (YES), in S1014, the CPU 212 sends the received PDF file and print specification information to the print setting extension application 312 according to the program of the OS 313.
[0171] Next, in S1601, the CPU 212 determines whether or not the setting for printing annotations has been made according to the program of the print setting extension application 312. The CPU 212 refers to the set value set in "Annotation Printing" 406 on the print setting initial screen and makes the determination described in S1601.
[0172] When not printing annotations (NO), in S1602, the CPU 212 creates a PDF with annotations removed from the PDF to be printed according to the program of the print setting extension application 312.
[0173] When the setting is not to print annotations, the CPU 212 creates a PDF with annotations removed according to the program of the print setting extension application 312. The PDF with annotations removed is sent to the cloud print-compatible printer 104 according to the PDF pass-through system. The cloud print-compatible printer 104 prints the sent PDF with annotations removed. Thus, as in the second embodiment, even when there is no function to recreate a PDF with annotations removed on the document generation application 315 side, it becomes possible to control annotation printing regardless of the printer in the PDF pass-through system. On the other hand, when printing annotations (NO), S1602 is skipped.
[0174] Next, in S1603, the CPU 212 determines whether or not the setting is to print forms according to the program of the print setting extension application 312.
[0175] When not printing forms (NO), in S1604, the CPU 212 creates a PDF with forms removed from the PDF to be printed according to the program of the print setting extension application 312. On the other hand, when printing forms (YES), S1603 is skipped.
[0176] Note that, for ease of explanation, an example in which the processes of S1602 and S1604 are separated is described. In the actual process, S1602 and S1604 may be performed simultaneously. That is, a PDF with annotations and forms removed may be created at once.
[0177] The process of S1031 is the same as that of the first embodiment, so the description thereof is omitted.
[0178] As described above, the process shown in FIG. 16 is completed. As a result, even when the function of controlling whether to print annotations or forms is not installed in the Cloud Print-compatible printer 104 and the document generation application 315, it is possible to control the printing of annotations and forms during "PDF pass-through".
[0179] <Fourth Embodiment> In the third embodiment, it was described that the print setting extension application 312 re-creates a PDF that does not include annotations or forms.
[0180] In the fourth embodiment, it will be described that the process of the first embodiment and the process of the second or third embodiment are switched according to the capabilities acquired from the Cloud Print-compatible printer 104. As a result, when the function of controlling whether to print annotations or forms is in the Cloud Print-compatible printer 104, on the client side, the PDF is sent to the Cloud Print-compatible printer 104 without re-creating it. On the other hand, only when the function of controlling whether to print annotations or forms is not present in the Cloud Print-compatible printer 104, a PDF adjusted to the print settings of the annotations and forms is created on the client side.
[0181] Next, with reference to FIG. 17, a processing example in the fourth embodiment will be described. The processes described in each block of FIG. 17 are realized by the CPU 212 executing any one of the programs of the OS 313, the document generation application 315, and the print setting extension application 312.
[0182] FIG. 17 is a process that replaces FIG. 11 of the first embodiment.
[0183] In S1013, the CPU 212 determines whether or not PDF pass-through is set to be valid according to the program of the document generation application 315.
[0184] When it is determined in S1013 that PDF pass-through is valid (YES), the CPU 212 advances the process to S1801.
[0185] In S1801, the CPU 212 determines, according to the program of the print setting extension application 312, whether the cloud print-compatible printer 104 has the capabilities of "PDF annotation 502" and "PDF form 503".
[0186] When it is determined that the cloud print-compatible printer 104 has the above capabilities (YES), the CPU 242 executes the processes after S1014 in FIG. 11. Thereafter, it is the same as the process of the first embodiment.
[0187] On the other hand, when it is determined that the cloud print-compatible printer 104 does not have the above capabilities (NO), the CPU 212 proceeds to the process of S1401 in FIG. 14 of the second embodiment or S1014 in FIG. 16 of the third embodiment. Thereafter, it is the same as the process of the second embodiment or the third embodiment.
[0188] As described above, the process shown in FIG. 17 ends. As a result, when the function of controlling whether to print annotations and forms is in the cloud print-compatible printer 104, on the client side, it is sent to the cloud print-compatible printer 104 without creating a PDF. On the other hand, only when the function of controlling whether to print annotations and forms is not in the cloud print-compatible printer 104, the client side creates a PDF.
[0189] <Fifth Embodiment> In the fourth embodiment, it was described that the process of the first embodiment and the process of the second embodiment or the third embodiment are switched according to the capabilities acquired from the cloud print-compatible printer 104.
[0190] In the fifth embodiment, when "Print Annotations" 406 and "Print Forms" 407 on the print settings screen of the document generation app 315 are set to "Do Not Print", disabling "PDF Pass-Through Printing" will be described. This can prevent beforehand a situation where the settings for annotation printing or form printing are not reflected in the print result due to the use of "PDF Pass-Through Printing".
[0191] Referring to FIG. 18, the processing of the fifth embodiment will be described. The processing from S301 to S311 shown in FIG. 3 is the same as that of the first embodiment. Therefore, the description will be omitted.
[0192] In S1901, the print settings extension app 312 checks whether "Print Annotations" 406 or "Print Forms" 407 is set to "Do Not Print" in the print settings of the document generation app 315. If either 406 or 407 is set to "Do Not Print", the print settings extension app 312 invalidates the setting items of "PDF Pass-Through" 803, "Annotation Printing" 804, and "Form Printing" 805 on the print settings screen it displays.
[0193] Referring to FIG. 19, a processing example in the fifth embodiment will be described.
[0194] FIG. 19 is the processing that replaces FIG. 11 of the first embodiment. The processing described in each block of FIG. 19 is realized by the CPU 212 executing a program of any one of the OS 313, the document generation app 315, and the print settings extension app 312.
[0195] In S2001, the CPU 212 determines, according to the program of the print settings extension app 312, whether the setting to perform "Print Annotations" 406 or "Print Forms" 406 is made on the print settings screen of the document generation app 315.
[0196] When it is determined that "Print Annotations" 406 or "Print Forms" 406 is set to "No" (NO), the CPU 212 executes the process described in S2002. The CPU 212 invalidates the "PDF Pass-Through" 803, "Annotation Printing" 804, and "Form Printing" 805 set on the print settings screen of the Print Settings Extension App 312 according to the program of the Print Settings Extension App 312.
[0197] If it is determined in S2001 that "Print Annotations 406" and "Print Forms 406" are set to "Yes" (YES), S2002 is skipped.
[0198] The CPU 212 executes the process described after S1013 in FIG. 11. Since the subsequent processes are the same as those in the first embodiment, the description is omitted.
[0199] As described above, the process shown in FIG. 19 ends. When "Print Annotations" 406 and "Print Forms" 407 on the print settings screen of the Document Generation App 315 are set to "Do not print", the invalidation of "PDF Pass-Through Printing" will be explained. This has the effect of preventing in advance the situation where the settings of annotation printing or form printing are not reflected in the print result due to the use of "PDF Pass-Through Printing".
[0200] In the fifth embodiment, it was explained that the three setting items of "PDF Pass-Through" 803, "Annotation Printing" 804, and "Form Printing" 805 are invalidated. Since "Annotation Printing" 804 and "Form Printing" 805 are setting values referred to when "PDF Pass-Through" 803 is valid, it is also possible to only invalidate "PDF Pass-Through" 803.
[0201] <Sixth Embodiment> In the fifth embodiment, when "Print Annotations" 406 and "Print Forms" 407 on the print settings screen of the Document Generation App 315 are set to "Do not print", the invalidation of "PDF Pass-Through Printing" was explained.
[0202] In the sixth embodiment, the settings of "Print Annotations" 406 and "Print Forms" 407 on the print settings screen of the document generation app 315 are linked to the settings of "Annotation Printing" 804 and "Form Printing" 805 on the print settings screen of the print settings extension app 312. This makes the settings of the document generation app 315 and the print settings extension app 312 equal, improving the convenience for the user.
[0203] First, referring to FIG. 20, the processing of the sixth embodiment will be described. The processing from S301 to S311 shown in FIG. 3 is the same as that of the first embodiment. Therefore, the description thereof will be omitted.
[0204] In S2101, the print settings extension app 312 obtains the setting of "Print Annotations" 406 or "Print Forms" 407 in the print settings of the document generation app 315. Then, the value is set for "Annotation Printing" 804 and "Form Printing" 805 on the print settings screen displayed by the print settings extension app 312.
[0205] Next, referring to FIG. 21, a processing example in the sixth embodiment will be described. FIG. 21 is a flowchart showing the details of the processing in S2101 of FIG. 20, and is realized by the CPU 212 executing the program of the print settings extension app 312.
[0206] In S2201, the CPU 212 obtains the setting value of "Print Annotations" 406 on the print settings screen of the document generation app 315 according to the program of the print settings extension app 312.
[0207] Next, in S2202, the CPU 212 sets the value obtained in S2201 for "Annotation Printing" 804 on the print settings screen of the print settings extension app 312 according to the program of the print settings extension app 312.
[0208] Next, in S2203, the CPU 212 obtains the setting value of "Print Forms" 407 on the print settings screen of the document generation app 315 according to the program of the print settings extension app 312.
[0209] Next, in S2204, the CPU 212 sets the value acquired in S2203 to "Form Printing" 805 on the print setting screen of the print setting extension app 312 according to the program of the print setting extension app 312.
[0210] The operations after the print button of the document generation app 315 is selected are the same as those in the first embodiment, so the description thereof is omitted.
[0211] As described above, the process shown in FIG. 21 ends. As a result, the settings of the document generation app 315 and the print setting extension app 312 become equal, improving the convenience for the user.
[0212] In the sixth embodiment, the interlocking of the settings of the document generation app 315 and the print setting extension app 312 has been described. However, an operation of preferentially using either one of the settings may be employed. That is, an operation of preferentially using the settings of the document generation app is also acceptable. Similarly, an operation of preferentially using the settings of the print setting extension app is also acceptable.
[0213] <Other Embodiments> In all the embodiments described so far, the process of transmitting the PDF file and the print capability information transmitted by the client terminal 101 to the printer via the cloud print service 102 has been described. However, the present invention can also be applied when the client terminal 101 and the cloud print-compatible printer 104 are directly connected without passing through the cloud print service 321.
[0214] Embodiments of the present invention can also be realized by executing the following processes. That is, software (program) that realizes the above-described embodiments is supplied to a system or device via a network or a recording medium. Then, a computer (specifically, a processor such as a CPU or MPU) of the system or device reads and executes the program code. In this case, the computer program and the recording medium storing the computer program are also the subject of the present invention. Further, in the above-described embodiments, the process of communicating "ability information" and print data via the cloud print service 321 has been described, but a configuration may be adopted in which direct communication is performed with the cloud print-compatible printer 104.
[0215] The print data of the client terminal 101 may be transmitted "directly" to the cloud print-compatible printer 104 without passing through the cloud print server 104 or the like. At this time, for example, the client terminal 101 and the cloud print-compatible printer 104 can be configured to be capable of wirelessly communicating required information.
[0216] In addition to a PC, a mobile terminal such as a smartphone or a tablet terminal can be used as the client terminal 101. For example, when using a smartphone, a dedicated app for realizing the processing of the embodiment of the present invention can be downloaded from a specific website and installed on the smartphone. At this time, when the distance between the smartphone and the cloud print-compatible printer 104 is relatively short, communication between the two can be enabled by, for example, "Bluetooth (registered trademark)". Further, the mobile terminal may be connected to the Internet via a portable rechargeable Wifi (registered trademark) router, and the printing device may be connected to the Internet via a wired or wireless router. In order to connect the printing device to the router by wire, the printing device may be configured to have a LAN cable insertion port. Thus, the mobile terminal and the printing device are communicably connected via a network such as the Internet. Moreover, since a portable rechargeable Wifi (registered trademark) router is used, the user can perform the processing according to the embodiment of the present invention at the place where the mobile terminal is carried.
[0217] In addition, the display UI (user interface) can be displayed as a three-dimensional image to facilitate visual confirmation. At this time, for example, wear Google glasses or special glasses to view the three-dimensional image.
[0218] In addition, when the "PDF pass-through" printing setting is performed, that part may be highlighted to enhance the visibility of the user and facilitate the confirmation of the setting. Examples of the highlighting mode include color highlighting, etc., and a highlighting mode in which the "PDF pass-through" printing setting part is displayed in a larger size than other setting items is also included. Of course, the highlighting mode is not limited to these.
[0219] When the "PDF pass-through" printing setting is performed, a message indicating this can be popped up from the printing setting and displayed on a UI display screen that becomes invisible after a predetermined time, so that the user can easily confirm the setting content.
Claims
1. A print setting application that extends the functions of a general-purpose printer driver stored in an information processing device, a first setting step of setting a set value of a first function for transmitting a file in a predetermined format output by a document generation application to a printing device without converting the format; a second setting step of setting a set value of a second function for printing information added using a predetermined function provided by the document generation application; a control step of causing the computer to transmit print data generated based on the set value set in the second setting step when the first function is set to be valid in the first setting step; An application characterized by causing a computer to execute the application.
2. The application according to claim 1, wherein in the control step, when the second function is set to be invalid in the second setting step, the computer causes the printing device to transmit, as the print data, a file in the predetermined format to which the information generated by the document generation application is not added.
3. The application according to claim 1, further comprising a generation step of generating, based on the file in the predetermined format output by the document generation application, a file in the predetermined format to which the information is not added when the second function is set to be invalid in the second setting step, wherein in the control step, the computer causes the printing device to transmit, as the print data, the file generated in the generation step.
4. The application according to claim 3, further comprising a determination step of determining whether to execute the generation step based on the capability information of the printing device.
5. The application according to claim 1, further comprising a third setting step of setting the first function to be invalid based on the fact that the set value of the setting item related to printing of the information set on the print setting screen provided by the document generation application is a predetermined value.
6. an acquisition step of acquiring the set value of the setting item related to printing of the information set on the print setting screen provided by the document generation application; The application according to claim 1, further comprising a fourth setting step of setting the set value of the second function based on the set value acquired in the acquisition step.
7. The application according to claim 1, wherein the predetermined format is PDF (Portable Document Format).
8. The application according to claim 1, wherein the general-purpose printer driver is a driver provided by a vendor that provides the operating system of the information processing apparatus.
9. The application according to claim 8, wherein the application is provided by a vendor that provides the printing apparatus.
10. The application, when the first function is set to be invalid, further includes a receiving step of receiving intermediate data based on a file output by the document generation application, and in the control step, transmits print data based on data obtained by converting the intermediate data into the predetermined format. The application according to claim 1.
11. The application according to claim 10, wherein the intermediate data is XPS (XML Paper Specification) data.
12. A control method of the information processing apparatus realized by executing a print setting application that extends the function of a general-purpose printer driver stored in the information processing apparatus, a first setting step of setting a setting value of a first function that transmits a file in a predetermined format output by a document generation application to a printing apparatus without converting the format; a second setting step of setting a setting value of a second function that prints information added using a predetermined function provided by the document generation application; a control step of transmitting print data generated based on the setting value set in the second setting step when the first function is set to be valid in the first setting step; The control method characterized by comprising the above steps.
13. An information processing apparatus that stores a general-purpose printer driver and a print setting application that extends the function of the general-purpose printer driver, a first setting means for setting a setting value of a first function that transmits a file in a predetermined format output by a document generation application to a printing apparatus without converting the format; a second setting means for setting a setting value of a second function that prints information added using a predetermined function provided by the document generation application; When the first function is set to be effective in the previous first setting step, control means for transmitting print data generated based on the set value set in the second setting step; An information processing apparatus characterized by having the above.
Citation Information
Patent Citations
Information processing device, control method of information processing device and program
JP2020046741A