Program and Information Processing Apparatus
The Print Workflow Application addresses the decreased customizability of the V4 printer driver by providing a GUI for print settings and enhancing user interaction, allowing for more appropriate function provisioning based on user settings.
Patent Information
- Application Number
- JP2024088510
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Filing Date
- 2024-05-31
- Publication Date
- 2025-06-17
- Estimated Expiration
- 2038-03-15
AI Technical Summary
The V4 printer driver, while improving security and convenience, has decreased customizability, particularly in providing a graphical user interface (GUI) for printing settings, which limits user interaction and functionality.
An application called Print Workflow Application (WFA) is provided as an editing application that generates print commands interpretable by multiple image forming devices, displays items for receiving print settings, and updates the print result image when settings are changed, thereby enhancing customizability and user interaction.
The solution allows for more appropriate function provisioning based on user settings, enhancing user interaction and functionality, particularly in providing a GUI for print settings, thus overcoming the limitations of the V4 printer driver.
Smart Images

Figure 0007693906000001 
Figure 0007693906000002 
Figure 0007693906000003
Abstract
Description
Technical Field
[0001] The present invention relates to a program and an information processing apparatus. In particular, it relates to a program and an information processing apparatus for an editing application.
Background Art
[0002] A configuration is generally known in which a printer driver installed in a host computer is used as software for controlling a printing apparatus, and printing is performed on the printing apparatus connected to the host computer. An operating system (OS), which is basic software, is installed in the host computer. The printer driver is configured according to the specifications defined by the OS and is called by the OS to operate. A vendor providing a printing apparatus can provide a means for instructing the printer to perform printing using the OS by providing a printer driver that conforms to the specifications of the OS. When a version of Microsoft (registered trademark)'s Windows (registered trademark) prior to Windows 8 is used as the OS, the printer driver is configured with an architecture called a V3 printer driver. The V3 printer driver displays a graphical user interface (hereinafter also referred to as "GUI" or "user interface") at the timing when a printing request from the user occurs. This GUI can provide a function for prompting the user to perform some operation. For example, when a printing request occurs, a specified event of a configuration module, which is a component of the V3 printer driver, is called, so the configuration module can display the user interface during the event processing.
[0003] In recent years, a new architecture called the V4 printer driver has emerged in Windows (registered trademark). Since the V4 printer driver emphasizes security, the customizability of the printer driver itself has decreased. For example, the aforementioned configuration module is provided by the OS, and the vendor can only provide a configuration file or a script file for customizing its operation. To compensate for such a decrease in customizability, the vendor providing the printing device can provide a dedicated application for extending the functions of the printer driver. One such application is an application called the Windows Store Device App (WSDA). By providing the WSDA, the vendor providing the printing device can customize the print settings screen when printing rendering data (Patent Document 1).
Prior Art Documents
Patent Documents
[0004]
Patent Document 1
Summary of the Invention
Problems to be Solved by the Invention
[0005] Thus, while the V4 printer driver has improved security and convenience, the customizability of the printer driver itself has decreased, such as not having the function of providing a GUI. Therefore, as in Patent Document 1, by using WSDA, even when a driver that does not have the function of providing a GUI like the V4 printer driver is used, a GUI such as a print settings screen can be provided. However, there are still limitations in the conventional WSDA. Also, as an application for extending the functions of the printer driver, there is an application called Printer Extensions (PEX), but this PEX also has the same limitations as WSDA. In view of such problems, an object of the present invention is to provide a technique for providing more appropriate functions according to settings.
Means for Solving the Problems
[0006] The application program of the present invention is Provided as a function of the operating system together with the operating system of the information processing apparatus, and a printing software that generates print commands interpretable by a plurality of image forming devices provided by a plurality of vendors and outputs the print commands to the plurality of image formation devices, and causes a computer to display an item for receiving print settings and an image showing an image of a print result, and updates the image showing the image of the print result when the print settings are changed via the item, wherein the print settings include settings related to a print range. in cooperation with to in response to
Effects of the Invention
[0007] According to the present invention, it becomes possible to provide more appropriate functions according to settings.
Brief Description of the Drawings
[0008]
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
Mode for Carrying Out the Invention
[0009] In each of the following embodiments, a more appropriate function is provided using an application called Print Workflow Application (WFA). This WFA is an editing application that can edit intermediate data including drawing data generated by a drawing application, and since it is activated in response to a printing request, it is also called a printing-time activation application. Details of the editing application will be described later.
[0010] 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 present invention according to the claims, and not all combinations of the features described in this embodiment are essential for the solution means of the present invention.
[0011] <Embodiment 1> FIG. 1 is a block diagram showing the hardware configuration of a printing system. In this figure, host computer 101 is an example of an information processing apparatus, and has an input interface 110, a CPU 111, a ROM 112, a RAM 113, an external storage device 114, an output interface 115, and an input / output interface 116. Further, input devices such as a keyboard 118 and a pointing device 117 are connected to the input interface 110, and a display device such as a display unit 119 is connected to the output interface 115.
[0012] An initialization program is stored in the ROM 112, and an application program group, an operating system (OS), a printer driver, 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 executing various programs stored in the external storage device 114.
[0013] In this embodiment, the CPU 111 performs processing according to the procedures of the programs stored in the ROM 112, whereby the functions described later in the host computer 101 and the processing according to the flowchart described later are realized. The printing apparatus 102, which is a device, is connected to the host computer 101 via the input / output interface 116. Here, the host computer 101 and the printing apparatus 102 are configured separately, but they may be configured as one information processing apparatus.
[0014] <Block Configuration of Driver Printing System> FIG. 2 is a block configuration diagram of a driver printing system. Here, a host computer 101 equipped with an OS of Windows (registered trademark) 8 or later of Microsoft (registered trademark) is used, and the description is based on a printing system operating in an architecture called a V4 printer driver. Note that, as the printer driver of the present embodiment, a model-specific printer driver, which is a model-specific printer driver provided by a printer vendor for a printing device 102, will be described as an example. However, the printer driver of the present embodiment is not limited to a model-specific printer driver. For example, it may be a common printer driver provided by a printer vendor and capable of corresponding to a plurality of types of printing devices of the printer vendor. Further, it may be a driver provided as one of the functions in the OS package together with the OS, and may be a class driver (a standard printer driver using a standardized printing method) that can be commonly used for printing devices provided by a plurality of vendors.
[0015] When the user gives a print instruction from the UWP (Universal Windows Platform) application 202, a predetermined screen is displayed by an MPD (Modern Print Dialog), which is a function of the OS and not shown. The UWP application 202 is a drawing application for generating drawing data (such as images and text information that are the basis for forming a print on paper). The screen provided by the MPD has a print preview function that allows the user to confirm the print result on the screen and a function that allows the user to select basic print settings.
[0016] FIG. 3 shows an example of a specific screen displayed during print settings. In FIG. 3(A), when a print instruction is given on a screen 301 provided by the UWP application, which is a drawing application, the setting screen 302 shown in FIG. 3(B) is displayed by the MPD of the OS. On this setting screen 302, the user can select the driver to be used. Further, on the setting screen 302, basic print settings can also be instructed.
[0017] Furthermore, upon receiving an instruction from the user, the MPD launches the Windows Store Device Application (hereinafter referred to as WSDA) 207 that enables the user to select detailed printing settings. Specifically, when the "Other Settings" button 303 is specified in the settings screen 302 of FIG. 3(B), the detailed settings screen 304 provided by the WSDA shown in FIG. 3(C) is displayed. On this detailed settings screen 304, the user can instruct even more detailed printing settings. The WSDA 207 is an application for expanding the functions of the printer driver 201 provided by the vendor (hereinafter referred to as the printer vendor) that provides the printing device. Note that the image that appears to be the original document image displayed on the right side within the detailed settings screen 304 provided by the WSDA in FIG. 3(C) is a sample image originally provided by the WSDA. That is, this sample image is not a preview image based on drawing data generated by a UWP application, but a sample image that does not change even if the drawing data changes.
[0018] The WSDA 207 receives information indicating the printing settings from the MPD, changes the setting information according to the settings made by the user, and returns it to the MPD. Here, the information indicating the printing settings is described in XML format based on the format defined by the OS and is included in data called PrintTicket. The WSDA 207 can refer to and modify the PrintTicket, but cannot refer to the drawing data.
[0019] Note that the PrintTicket is generated by the configuration module 208 of the selected printer driver 201. By calling the configuration module 208, WSDA 207 generates (edits) a PrintTicket that reflects the user's specifications. The configuration module 208 also has a function of generating PrintCapabilities described in XML format based on the functions and selection items that can be set in the selected printer driver 201 according to the format defined by the OS. WSDA 207 and PEX 209 described later provide a user interface based on the information described in this PrintCapabilities. Also, the editing application 205 described later can obtain the PrintCapabilities generated by the configuration module 208 via the functions of the OS.
[0020] In addition, in FIG. 2, the configuration module 208 is described as a function of the printer driver 201, but the configuration module 208 is originally a component of the OS. However, in the V4 printer driver, since the driver itself does not have a configuration module, the configuration module 208, which is a component of the OS, is used as the driver's configuration module. The printer vendor can customize the operation of the configuration module 208 by GPD and Javascript (registered trademark) Constraint (not shown) included in the printer driver 201.
[0021] After the print settings shown in FIG. 3, when the "Print" button is instructed on the setting screen 302 provided by the MPD of the OS, a print request is made. When printing is instructed by the user on the MPD, upon receiving a request from the MPD, the UWP application 202 generates print data necessary for printing. This print data is an XPS document described in the format of XML Paper Specification (hereinafter referred to as XPS), and is also called intermediate data. The print data of the present embodiment includes the aforementioned PrintTicket and the drawing data generated by the drawing application.
[0022] The XPS document generated by the UWP application 202 is passed to the editing app launcher 204, which is a component of the OS. The editing app launcher 204 determines whether there is and is configured to launch an editing application 205 associated with the printer driver 201 via DeviceMetadata (hereinafter simply referred to as Metadata). If it is determined that the editing application 205 exists and is configured to launch, the editing application 205 is launched. If the corresponding editing application 205 does not exist, the editing app launcher 204 stores the XPS document as a spool file 206.
[0023] Here, the relationship between the WSDA 207 and the editing application 205 will be described. The WSDA 207 is an extension application that extends the functions of the printer driver. Specifically, the WSDA 207 can provide a GUI such as a print settings screen when a driver that does not have a function of providing a Graphical User Interface (hereinafter referred to as "GUI" or simply "user interface") like a V4 printer driver is selected. However, the WSDA 207 cannot provide a function of prompting the user to perform some operation by displaying a GUI at the timing when a print request from the user occurs, like a V3 printer driver. Therefore, in the present embodiment, the editing application 205 that operates in response to a print request from the user is used.
[0024] The editing application 205 is called Print Workflow Application and is an extension application for expanding the functions of the printer driver 201 provided by the printer vendor, similar to WSDA 207. That is, when a driver that does not have the function of providing a GUI like the V4 printer driver is selected, based on the instructions of the OS, a GUI such as a print settings screen can be provided. When a V3 driver that has the function of providing a GUI is selected, the OS does not start the editing application launcher 204 and stores the XPS document generated by the drawing application as a spool file 206. That is, when a V3 driver is selected, the editing application 205 is not started and does not provide a GUI.
[0025] Note that neither WSDA 207 nor the editing application 205 is provided as one of the components of the printer driver 201, but is a separate application. Also, WSDA 207 and the editing application 205 can be configured as one application, but for the sake of convenience, here, for the purpose of explaining the differences from the conventional WSDA, they are explained as separate applications.
[0026] The WSDA 207 and the editing application 205 are usually obtained by the OS from an application distribution system (a server managed by Microsoft (R)) not shown via the Internet. Also, the printer vendor has provided Metadata to a Metadata server managed by Microsoft (R) in advance. Therefore, the appropriate WSDA 207 and editing application 205 are automatically installed on the host computer 101. More specifically, the Metadata contains the device identification information (Hardware ID) of the printing device which is a device, and the software identification information (Identity Name) of the WSDA and the editing application. Also, the device identification information (HardwareID) is described in the Inf file of the printer driver. Therefore, when the printer driver is installed, the OS downloads the corresponding Metadata based on the device identification information. Then, the OS refers to the Metadata, identifies the software identification information (Identity Name) associated with the corresponding device identification information (Hardware ID), and can obtain the corresponding WSDA and editing application. Therefore, the printer driver 201, the WSDA 207, and the editing application 205 are associated with each other.
[0027] The editing application 205 can display a user interface for receiving operation instructions from the user. Also, it can receive an XPS document which is print data and edit the PrintTicket and drawing data in the XPS document. Note that the WSDA 207 which is the same extended application can display a user interface, but cannot obtain an XPS document and cannot refer to or edit the drawing data in the XPS document.
[0028] When the editing application 205 outputs an XPS document edited as needed, the OS stores it as a spool file 206. When the spool file 206 is stored, the processing is passed to a filter pipeline manager (not shown) in the driver 201, and the number and order of filters are controlled by a configuration file (not shown). The filter pipeline manager is a mechanism for performing printing by passing through a plurality of filters. The filter group 210 in the present embodiment includes a layout filter 211 that is a layout processing unit and a print command filter 212 that is a print command conversion unit. Note that the filter pipeline manager operates as a function of the printer driver 201, but the filter pipeline manager itself is originally a component of the OS. However, in the V4 printer driver, since the driver itself does not include a filter pipeline manager, the filter pipeline manager, which is a component of the OS, is used as a function of the driver.
[0029] The layout filter 211 has a function of taking as input the XPS document stored in the spool file 206, performing page layout processing based on print setting information, and outputting the laid-out XPS document. The layout processing includes, for example, imposition printing in which a plurality of pages are printed on one sheet of paper, and poster printing in which one page is printed on a plurality of sheets of paper.
[0030] The print command filter 212 takes the output from the layout filter 211 as input and has the function of converting the XPS document, which is intermediate data, into a print command interpretable by the printing device 102 according to the print setting information and outputting it. When the print command filter 212 converts the input XPS document into image data once, the print command filter 212 is generally called a render filter. Render filters are often seen in printer drivers for inexpensive raster printers typified by inkjet printers. When the print command filter 212 operates as a render filter, it converts the input XPS document into image data once. Then, through the process of image processing such as color space conversion and binarization, it is converted into a print command interpretable by the raster printer.
[0031] In a high-function printer typified by a page printer, when the types of print commands interpretable by the printing device 102 include XPS, the print command filter 212 edits the input XPS document and outputs the XPS document. If there is no need to process it by the print command filter 212, the input XPS document may be output as it is, or the print command filter 212 may not be included in the printer driver 201. The above is the basic process of printing from the UWP application 202.
[0032] In the case where the drawing application is a Legacy application 203 such as a Win32 application, in order to set the print settings, instead of WSDA, Printer Extensions 209 (hereinafter referred to as PEX) is launched. PEX 209 is launched via the configuration module 208 and can provide a user interface through which the user can specify the print settings. PEX 209 may be provided as a component within the driver package together with the printer driver 201, or may be distributed separately. Similar to WSDA 207, PEX 209 can refer to and modify the PrintTicket, but cannot obtain the XPS document and cannot refer to or edit the drawing data within the XPS document. Also, PEX 209 is launched only when instructed by the user on the Legacy application 203 and is not necessarily launched at the time of printing. When printing is instructed on the Legacy application 203, the Legacy application 203 generates an XPS document as the print data. Then, the editing application 205 acquires and outputs the XPS document output from the Legacy application 203. The subsequent flow is omitted because it is the same as that during the printing process from the UWP application 202.
[0033] <Configuration of the XPS Document (XPS Document)> Here, the XPS document will be briefly described with reference to FIG. 12. The XPS document has a tree structure with FixedDocumentSequence (hereinafter referred to as FDS) as the root. The FDS has a plurality of FixedDocuments (hereinafter referred to as FD), and the FD has a plurality of FixedPages (hereinafter referred to as FP). The FP describes the content of the document page in XML format and includes the content actually to be displayed or printed. Each of the FDS, FD, and FP may be called an XPS part. Resources such as fonts and images used in the page content of the FP can be shared among multiple FPs. Also, the FDS, FD, and FP can each have a print setting in the PrintTicket. Here, the print setting used when printing each FP is the PrintTicket obtained by merging the PrintTicket of the FDS, the PrintTicket of the parent FD of the FP to be printed, and the PrintTicket of the FP to be printed. Note that the PrintTicket of the FDS is also called the PrintTicket of the job.
[0034] FIG. 12 is an example of a block diagram showing the logical structure of the XPS document. The logical structure of the XPS document 401 has a tree structure with FDS 402 as the root. The FDS 402 has FD 403 and FD 404 as children. The FD 403 has FP 405 and FP 406 as children. The FD 404 has FP 407 as a child. Regarding the PrintTicket describing the print setting, the FDS 402 holds the PrintTicket 408. Also, the FD 403 holds the PrintTicket 409, the FP 405 holds the PrintTicket 410, and the FD 404 holds the PrintTicket 412 respectively. Here, the PrintTicket 408 of the FDS 402 corresponds to the PrintTicket of the job. The PrintTicket 409 of the FD 403 and the PrintTicket 412 of the FD 404 each correspond to the PrintTicket of the document. And the PrintTicket 410 of the lower-level FP 405 corresponds to the PrintTicket of the page.
[0035] Also, in FIG. 12, FP406 and FP407 do not hold PrintTickets. Here, for example, when printing FP405, the PrintTicket used is the PrintTicket obtained by merging PrintTicket408, PrintTicket409, and PrintTicket410. Also, FP406 and FP407, which do not hold PrintTickets, use the PrintTickets of their respective upper layers. For example, the PrintTicket used when printing FP406 is the PrintTicket obtained by merging PrintTicket408 and PrintTicket409.
[0036] Note that in FIG. 12, FP405 and FP406 share resources 411 such as fonts and images, and FP507 utilizes resources 413 such as fonts and images. Furthermore, FP407 holds thumbnail image 414.
[0037] <Setup Process of Editing Application> FIG. 4 is a diagram showing the main processing flow in the setup process of the editing application 205 in this printing system. Hereinafter, although the editing application 205 may be described as the main body of each process, actually, the corresponding program (the program of the editing application 205) is executed by the CPU 111 to realize the corresponding functions. Note that not all processes are necessarily sequentially executed on a single process, and there may be cases where the process transfers to the OS side once and is called again from the OS. This is just a flow showing the main processes of the editing application 205 in a convenient and easy-to-understand manner.
[0038] When the editing application launcher 204 receives an XPS document from the drawing application of the print requester, it calls the initialization process of the editing application 205 associated with the printing device 102. After the print settings described in FIG. 3 above, when the "Print" button is instructed on the setting screen 302 provided by the OS, a print request is made, and an XPS document is output from the drawing application. In the initialization process, the editing application 205 registers the setup process shown in FIG. 6 and the editing and termination processes shown in FIG. 8 described later as event handlers defined by the OS. When the editing application 205 finishes the initialization process, the OS executes the setup process of the editing application 205 registered as a defined event handler. FIG. 4 shows the setup process.
[0039] First, the editing application 205 acquires the PrintTicket of the job stored in the XPS document (S401). As described with reference to FIG. 2, the PrintTicket is data containing information indicating print settings and is generated by the configuration module 208 based on the print settings instructed by the user. The PrintTicket can be acquired from the XPS document by calling a predetermined API of the OS.
[0040] Next, refer to the PrintTicket of the acquired job and check whether there is an instruction to start the print preview (S402). The specific method of checking the PrintTicket will be described later with reference to FIG. 6. Also, the instruction to start the print preview can be specified from WSDA207 or PEX209, and may be realized by a method other than the PrintTicket as long as it is a means that can be referred to from the editing application 205. For example, it may be configured to use the UserPropertyBag or QueuePropertyBag provided by the OS as the storage location of the setting information of the printer driver 201. Note that the print preview refers to displaying, on the display unit 119, an image of the print result that will be generated on the paper surface based on the print settings and the drawing data generated by the drawing application. That is, "the instruction to start the print preview exists in the PrintTicket" indicates that the user has instructed the display of the print preview screen. By viewing the print preview screen, the user can check before printing whether the desired print result can be obtained, and can instruct the modification of the print settings, the deletion of specific pages, or the cancellation of the print process as needed.
[0041] If it is determined in S402 that there is an instruction to start the print preview, the editing application 205 saves storage information indicating that the print preview is "valid" (S403). As an example, the processing in S403 and the subsequent retention of information of the editing application 205 described later use the Local Storage provided by the OS. The storage information stored in the Local Storage is information related to the print settings, and the details will be described later with reference to FIG. 10.
[0042] Thereafter, call the specified API provided by the OS and instruct to provide the user interface in the subsequent processing of the editing application 205 (S404). By executing this API, the UI processing of the editing application 205 shown in FIG. 7 described later is called, and the editing application 205 displays the user interface.
[0043] If it is determined in S402 that there is no instruction to start the print preview, the editing application 205 stores in the Local Storage that the print preview is "invalid" in the stored information in the Local Storage (S405).
[0044] As described above, in the setup process of the editing application 205, the editing application 205 determines whether it is necessary to start the user interface, and if so, instructs it and stores the information necessary for subsequent processing.
[0045] <Configuration Examples of PrintTicket and PrintCapabilities> FIG. 5 is an example of the PrintCapabilities of the printer driver. Note that these PrintCapabilities are described mainly for the parts necessary for the explanation, and some are omitted.
[0046] The PrintCapabilities represent the functions (Features) that the driver has and the setting items (Options) that can be set for each function. In the example of FIG. 5, the PrintCapabilities 500 represent that for the paper type (PageMediaType), plain paper (Plain) and photo paper (PhotoPaper) can be set.
[0047] FIG. 6 is an example of a PrintTicket generated based on the PrintCapabilities 500 of the printer driver shown in FIG. 5. As shown in FIG. 6, the PrintTicket stores the setting values of each function defined in the PrintCapabilities. For example, the Feature psk:PageMediaType indicates the paper type to be used for printing. In the PrintTicket of FIG. 6, it indicates that psk:Plain, that is, plain paper, is specified. The determination process of whether there is an instruction to start the print preview in S402 is to determine whether the specified value of the Feature ns0000:JobPreview is ns0000:ON.
[0048] <UI Processing of Editing Application> When the UI display specification of S404 is executed, after the setup process of the editing application 205 is completed, the OS calls the UI process of the editing application 205. FIG. 7 is a diagram showing the main processing flow among the UI processes of the editing application 205 in this printing system. Hereinafter, the editing application 205 may be described as the main body of each process, but actually, the corresponding functions are realized by the CPU 111 executing the corresponding program. Note that not all processes are necessarily sequentially executed on one process, and there may be cases where the process transfers to the OS side once and is called again from the OS. This is just a flow showing the main processes of the editing application 205 for convenience and clarity. Note that when the UI display specification of S404 is not executed, the OS skips the UI process shown in FIG. 7 and calls the editing and termination processes described later.
[0049] First, the editing application 205 acquires the PrintTicket of the job by using a predetermined API of the OS (S701). The means for the editing application 205 to acquire the PrintTicket of the job is provided as a function of the OS. By using this, the editing application 205 can easily refer to and change the print settings of the job without directly handling the PrintTicket in the XPS document. In addition, the PrintTicket of the job can be acquired before the XPS document is completely generated, and performing the process first also contributes to performance improvement. Furthermore, the editing application 205 acquires the PrintCapabilities by using a predetermined API of the OS based on the acquired PrintTicket (S702).
[0050] Next, the editing application 205 configures (generates) a user interface having control items that can specify functions to be provided in the print preview based on the acquired PrintTicket and PrintCapability (S703).
[0051] Then, the editing application 205 acquires an XPS document using a predetermined API of the OS (S704). Further, the editing application 205 analyzes the content of the XPS document and displays a screen based on the XPS document on the display unit 119 (S705).
[0052] As an example of the user interface generated by the editing application 205, FIG. 8 shows an example of a print preview screen provided by the editing application 205. The display item 801 is a control item for changing the page to be displayed on the print preview. The user can use this control item to change the display page and can also check the total number of pages of printing generated by the current print data and print settings. The display item 802 is a print preview screen showing an image of the print result of the specified page. The display item 803 is a control item for specifying the assigned printing function. The display item 804 is a control item for specifying the paper type. Since what is displayed in the display items 803 and 804 are functions that the driver has (functions supported by the driver), as described above, the selection items conform to PrintCapabilities. The display items 805 and 806 are control items for specifying the print range. By the display item 805, the user can specify the type of print range. Examples of the type of print range include "print all pages" and "print the specified range". Also, by the display item 806, when "print the specified range" is selected in the display item 805, the user can specify the print range. In the example of FIG. 8, it is specified that pages 1 to 2 are the printing targets. Note that it is assumed that the printer driver 201 in this example does not have a function to change the print range. That is, the PrintCapability of the printer driver 201 in this example does not describe a function to change the print range. The display item 807 is a button for starting printing. The display item 808 is a cancel button. When the user presses this button, subsequent printing processing is canceled.
[0053] In this embodiment, the editing application 205 can realize a more accurate print preview by reflecting the setting values set in the PrintTicket.
[0054] The XPS document obtained by the editing application 205 is generated by the drawing application of the print requester and is the data before being processed by the printer driver 201. In other words, the editing application 205 obtains the XPS document before the printer driver 201. Therefore, even if, for example, the settings for collated printing are specified in the PrintTicket in the XPS document, the rendering data in the XPS document received by the editing application 205 has not been subjected to the collation process. Considering such a case, the editing application 205 can display a print preview screen reflecting the print settings on the display unit 119. When the print settings are changed on the user interface displayed by the editing application 205, the editing application 205 redisplay the print preview screen reflecting the change on the display unit 119.
[0055] There are two methods for creating the data for the preview display of the editing application 205. The first method is that the editing application 205 edits the rendering data of the XPS document itself. In this method, the editing application 205 performs editing on the rendering data to reflect the settings for collated printing. The second method is that the editing application 205 does not edit the rendering data of the XPS document but changes the way the rendering data is displayed. In this method, for example, in the case of a 2-in-1 collation setting, the editing application 205 only arranges two pages of the rendering data so that it appears as if the settings for collated printing are reflected visually. In S705, it is assumed that the second method is used for the preview display. However, the preview display of this embodiment can also be executed using the first method.
[0056] The editing application 205 receives an input from the user (S706). When printing is instructed on the user interface shown in FIG. 8, the editing application 205 saves the set values of each function specified by the user as the storage information in FIG. 10 in the Local Storage (S707). Thus, the UI processing of the editing application 205 is completed.
[0057] With this configuration, it is possible to implement a print preview function that displays a print image close to the print result before printing based on the drawing data generated by the drawing application and the print settings specified by the user. Also, on the print preview screen provided by the editing application 205, it is possible to make changes to finally adjust the print settings while checking the print result and the number of printed pages. These functions make it possible to prevent misprints and provide final adjustment means such as keeping the number of printed pages within the desired number.
[0058] <Interface used by the editing application 205> In this way, by using the editing application 205, it becomes possible to provide functions that could not be provided by the WSDA 207 alone. However, since the editing application 205 is launched in response to a print request from the user, the following considerations are necessary. That is, when the editing application 205 is launched in response to a print request, it always acquires and outputs an XPS document. In other words, the editing application 205 launches even when it does not provide functions to the user when the launch conditions are met. For example, when providing the print preview function with the editing application 205, the editing application 205 launches and acquires and outputs an XPS document even when the user does not use the print preview function. As a result, there was a possibility that the performance would deteriorate just because the editing application exists even though the user does not use the preview function.
[0059] In the editing application 205, there are two types of access methods for the input / output interface that acquires and outputs XPS documents: a stream format interface and a document format interface. The stream format interface treats the XPS document as a byte stream as it is. That is, the data acquired in the stream format is a ZIP-compressed collection of XPS parts. Therefore, in the case of the stream format interface, performance degradation is suppressed. Here, the XPS parts refer to FDS, FD, FP, and the PrintTickets associated with them, as well as resources such as images and fonts. However, when editing the data acquired using the stream format interface, since it is necessary to analyze the byte stream data, complex processing is required. On the other hand, in the document format interface, the XPS document is treated as a package with an API that enables access to each XPS part. When the editing application 205 uses the document format interface, it acquires the XPS document in a format called an object model. In the document format interface, the XPS document is handled in units of XPS parts and input / output is performed for each XPS part. Therefore, when using the document format interface, it is not necessary to analyze the XPS document to extract XPS parts. Thus, the data acquired using the document format interface is easier to edit for the XPS document compared to the stream format. However, since data analysis is required for package generation, the processing cannot start unless the necessary data in the XPS document is complete, which may cause performance degradation.
[0060] Therefore, in this embodiment, an appropriate interface is used as the input / output interface for the XPS document in the editing application 205. Details are described below. Note that since the input / output interface for the XPS document in the UI processing of the editing application 205 in FIG. 7 does not involve editing of the XPS document, either the stream format or the document format may be used. When editing the XPS document during the display processing of S705, it is advisable to use the document format interface.
[0061] The processing of the editing application 205 in FIGS. 4 and 9 is background processing, and the processing of the editing application 205 in FIG. 7 is foreground processing.
[0062] <Editing and termination processing of the editing application> The editing process of the editing application 205 will be described with reference to FIG. 9. After the UI processing of the editing application 205 in FIG. 7 ends, the OS calls the editing and termination processing of the editing application 205 in FIG. 9. If the UI display specification process of S404 is not executed, the OS calls this process without calling the UI processing of the editing application 205 in FIG. 7. Hereinafter, the editing application 205 may be described as the main body of each process, but in reality, the corresponding functions are realized by the CPU 111 executing the corresponding program. Also, not all processes are necessarily sequentially executed on one process, and there may be cases where the process transfers to the OS side once and is called again from the OS. This is just a flow that shows the main processes of the editing application 205 in a convenient and easy-to-understand manner.
[0063] The editing application 205 reads the UI display information in the stored information saved in S403 (S901). Then, in S902, the editing application 205 determines whether the UI display has been performed. If it is determined in S902 that the UI display has not been performed, it is decided to use the stream-form interface, and the editing application 205 acquires the XPS document using the stream-form interface (S903). This is because if there is no UI display, there is no need to edit the XPS document, and using the stream-form interface is advantageous in terms of performance.
[0064] Furthermore, the editing application 205 outputs the XPS document acquired in S903 as it is without editing, using the stream-form interface in the same manner as when it was acquired (S904). When the editing application 205 outputs the XPS document, the OS stores it as the spool file 206. Then, the processing by the printer driver 201 is started.
[0065] If it is determined in S902 that the UI display has been performed, the editing application 205 reads the information related to the print settings saved as stored information in S707 (S905). In S906, the editing application 205 determines whether the user has changed the settings before and after the UI display. If it is determined in S906 that no setting changes have been made before and after the UI display, the editing application 205 acquires the XPS document using the stream-form interface (S903). Then, the XPS document is output as it is using the stream-form interface (S904). This is because if there is no instruction to change the settings, there is no need to edit the XPS document, and using the stream-form interface is advantageous in terms of performance.
[0066] When the editing application 205 determines that a setting change has been made in S906, it determines whether there is a setting that requires editing of the PrintTicket of the job by the editing application 205 among the changed settings (S907). If there is a setting that requires editing of the PrintTicket in the changed settings, the editing application 205 acquires the PrintTicket of the job using a predetermined API of the OS (S908). Then, the editing application 205 edits the PrintTicket of the job in order to reflect the setting value regarding the driver function in the stored information acquired in S905 in the PrintTicket of the job (S909). Note that the driver function indicates a function provided by (supported by) the printer driver 201. The configuration of the information stored in Local Storage and the method of reflecting it in the PrintTicket of the job for realizing these processes will be described later with reference to FIG. 10. When there are multiple driver functions changed by the UI input in S706, the editing application 205 performs the reflection process on the PrintTicket of the job for the setting values of all the driver functions.
[0067] Next, in S910, the editing application 205 determines whether there is a setting that requires editing of the XPS document by the editing application 205 in the changed settings. This determination is made by determining whether editing by the editing application 205 is required for at least any one of the drawing data in the XPS document and the PrintTicket in the XPS document (excluding the PrintTicket of the job). Note that in S910, the PrintTicket of the job is excluded from the determination target because the PrintTicket of the job has already been edited in S907 to S909.
[0068] If it is determined that there is no setting that requires editing of the XPS by the editing application 205 during the settings changed in S910, it is decided to use the stream format interface. Then, the editing application 205 acquires and outputs the XPS document using the stream format interface (S903, S904). If it is determined that there is a setting that requires editing of the XPS by the editing application 205 during the settings changed in S910, it is decided to use the document format interface. Then, the editing application 205 acquires the XPS document using the document format interface (S911).
[0069] In S912, the editing application 205 edits the XPS document acquired in S911 based on the function and its setting value specified by the user. Then, the editing application 205 outputs the edited XPS document using the document format interface (S913). When the editing application 205 outputs the edited XPS document, the OS stores it as a spool file 206. When the XPS document is stored in the spool file 206, the processing by the printer driver 201 is started.
[0070] Note that in FIG. 9, in S907 to S909, the editing application 205 determines whether it is necessary to edit the PrintTicket of the job and acquires and edits the PrintTichet of the job before acquiring the XPS document of S911. That is, the editing application 205 refers to and changes the print settings of the job without directly handling the PrintTicket in the XPS document. This is because, as described in the process of S701, the PrintTicket of the job can be acquired before the XPS document is completely generated. Performing the acquisition and editing process of the PrintTicket of the job first contributes to performance improvement. However, this embodiment is not limited to this. S907 to 909 may be omitted. That is, it may be determined whether it is necessary to edit the XPS document in S910, including whether it is necessary to edit the PrintTicket of the job. Then, in S912, the editing of the XPS document may be executed, including the editing of the PrintTicket of the job.
[0071] Here, the stored information stored in the Local Storage will be described with reference to FIG. 10. FIG. 10 is a diagram showing an example of the information stored in the Local Storage. The stored information is composed of a name and a value, and includes information related to print settings.
[0072] In the process of S403 in FIG. 4, in order to indicate that the UI display is valid, a set value of ON information is added to the Local Storage under the name of RequestUI. Also, in the process of S405, in order to indicate that the UI display is invalid, a set value of OFF information is added to the Local Storage under the name of RequestUI.
[0073] In the process of S707 in FIG. 7, the set values for each function specified by the user on the print preview screen are saved in the Local Storage. In the example of FIG. 10, it is assumed that the user has changed three settings of Page Layout, Pages, and Range on the preview screen of FIG. 8.
[0074] For changes to the layout, in Local Storage, an item named JobNUpAllDocumentsContiguously, which is a corresponding PrintTicket setting item, is stored. And in that item, PagePerSheet_2, which is the Option name corresponding to the Page Layout setting item specified by the user, is added as the setting value. That is, due to the layout change on the UI in Figure 8, information indicating the change in the print settings is newly added to the stored information related to the print settings in Figure 10.
[0075] For the Pages setting, in Local Storage, information named Pages with Ranges indicating the range specification as the setting value is added. Also, since a range specification is specified in Pages, in Local Strage, information indicating the specific range is added with the name Range and the setting value information indicating the print range of "1-2". That is, due to the changes in the Pages setting and the Ranges setting on the UI in Figure 8, information indicating the change in the print settings is newly added to the stored information related to the print settings in Figure 10.
[0076] In this way, referring to the stored information in Figure 10 stored in Figures 4 and 7, the process in Figure 9 is performed. Specifically, in the process of S902, the editing application 205 checks the setting values in the RequestUI in Figure 10. And if the setting value is ON, it is determined that there is UI display.
[0077] Also, in the process of S906, the editing application 205 checks the setting items from the second row and later in Figure 10 stored in Local Storage. In the case of Figure 10, since information on JobNUpAllDocumentsContiguously, Pages, and Range is added, it is determined that the settings have been changed.
[0078] In the process of S907, the editing application 205 determines whether it is necessary to change the PrintTicket of the job from the information stored in Local Storage. Specifically, if it is determined that the settings for functions supported by the driver, such as collated printing, have been changed, it is determined that it is necessary to change the PrintTicket of the job. In the example of Figure 10, since the information of JobNUpAllDocumentsContiguously has been added, it is determined that the settings for collated printing have been changed, and it is determined that it is necessary to change the PrintTicket of the job.
[0079] Then in S909, the editing application 205 edits the PrintTicket of the job. Specifically, for the Feature in the PrintTichet corresponding to the name of the stored information in Figure 10, the set value in the stored information is set as an Option. That is, the Option of the Feature JobNUpAllDocumentsContiguously in the PrintTicket of the job in Figure 6 is changed to PagePerSheet_2. As a result, the setting changes instructed by the user are reflected in the PrintTicket of the job. Then, the printer driver 201 can generate a print command to be sent to the printer according to the settings of the PrintTicket. That is, in this example, the printer driver 201 edits the drawing data in the XPS document based on the PrintTicket of the job to generate a print command in order to execute collated printing that prints two pages on one sheet.
[0080] In the process of S910, the editing application 205 determines whether there are any changes that require editing of the XPS document by the editing application 205 based on the stored information in Local Storage. For example, if the printer driver 201 does not support the function of changing the print range setting, this printer driver 201 cannot change the XPS document for changing the print range. Therefore, it is necessary to edit the XPS document by the editing application 205, and in such a case, it is determined that there are changes that require editing of the XPS document. In the example of FIG. 10, since the item of Range is added, it is determined that the print range setting, which is a function not supported by the printer driver 201, has been set, and it is determined that it is necessary to edit the XPS document by the editing application 205.
[0081] And in S912, the editing application 205 edits the XPS document. Specifically, in the Range item of the stored information in FIG. 10, since the print range is set to "from page 1 to page 2", the page data after the third page of the obtained drawing data of the XPS document is deleted from the XPS document. As a result, the printer driver 201 generates a print command using the XPS document edited by the editing application 205 as input. Therefore, the printer driver 201 itself can print only the specified range without editing the XPS document for changing the print range.
[0082] As described above, in this embodiment, by using the editing application 205, it is possible to provide a GUI in response to a print request. Also, based on the input of print settings on the GUI provided by the editing application 205, the editing application 205 can create a PrintTicket for the job and edit the XPS document.
[0083] Also, printer drivers have different supported functions (available functions) depending on their types. However, the editing application 205 of the present embodiment can reduce the functional gap due to the printer driver type. That is, for functions not supported by the printer driver (extended functions), the editing application 205 can edit the XPS document. Therefore, even functions not supported by the printer driver can be provided to the user. In particular, even for a printer driver that has only basic functions such as a standard printer driver, by using the editing application 205, functions similar to model-specific printer drivers can be provided. Regarding the functions supported by the printer driver, after making an edit that reflects the setting change in the PrintTicket, the editing of the rendering data of the XPS document may be left to the printer driver. Also, regarding whether a function is supported by the driver or not, the editing application 205 may make a determination based on the information on the functions stored in advance, or may acquire and determine the PrintCapability.
[0084] Also, the editing application 205 in the present embodiment uses a stream format interface when editing of the XPS document by the editing application 205 is not necessary. Also, when editing of the XPS document by the editing application 205 is necessary, a document format interface is used. That is, when the user does not use the print preview display or does not make any setting changes even if using it, editing of the XPS document by the editing application 205 is not necessary, so the editing application 205 uses a stream format interface. Thereby, it becomes possible to reduce the influence of the performance degradation caused by the activation of the editing application 205. On the other hand, when editing of the XPS document by the editing application 205 is necessary, by using a document format interface, editing of the XPS document by the editing application 205 becomes possible.
[0085] <Embodiment 2> Next, Embodiment 2 will be described. In Embodiment 1, the editing application 205 presents the user with functions whose settings can be changed by displaying the UI, and determines whether it is necessary to edit the XPS document by the editing application 205 according to the user instruction. Then, the interface is switched depending on whether it is necessary to edit the XPS document by the editing application 205. On the other hand, in Embodiment 2, the editing application 205 is characterized by switching the interface depending on whether the UI display by the editing application 205 has been performed or not.
[0086] Since the hardware configuration of the printing system is the same as that in Embodiment 1, the description thereof will be omitted. Also, regarding the flow of each process, except for the flow of the editing and termination processes of the editing application 205 in Embodiment 1 (Fig. 9), the flow in Embodiment 2 is the same. Therefore, hereinafter, the parts different from Embodiment 1 will be mainly described.
[0087] Fig. 12 is a diagram showing an example of the editing and termination processes in Embodiment 2. After the UI process of the editing application 205 in Fig. 7 is completed, the OS calls the editing and termination processes of the editing application 205 in Fig. 12. If the UI display specification process of S404 is not executed, the OS calls this process without calling the UI process of the editing application 205 in Fig. 7. Hereinafter, the editing application 205 may be described as the main body of each process, but in reality, the corresponding functions are realized by the CPU 111 executing the corresponding program. Also, not all processes are necessarily sequentially executed on one process, and there may be cases where the process transfers to the OS side once and is called again from the OS. It is just a flow showing the main processes of the editing application 205 in an easy-to-understand manner for convenience.
[0088] The editing application 205 reads the UI display information in the storage information of FIG. 10 saved in S403 (S1201). Then, in S1202, the editing application 205 determines whether the UI is displayed. If it is determined in S1202 that there is no UI display, the editing application 205 acquires the XPS document using the stream-form interface (S1203). This is because the fact that there is no UI display means that no print settings have been changed and there is no need to edit the XPS document. Therefore, using the stream-form interface is advantageous in terms of performance.
[0089] In S1204, the editing application 205 directly outputs the XPS document acquired in S1203 without editing it, using the stream-form interface. When the editing application 205 outputs the XPS document, the OS stores it as a spool file 206, and the processing by the printer driver 201 is started.
[0090] If it is determined in S1202 that the UI is displayed, the editing application 205 reads the information related to the print settings of FIG. 10 saved as storage information in S707 (S1205). Next, the editing application 205 determines whether there are setting changes in the storage information of FIG. 10 that require editing the PrintTicket of the job (S1206). If there are setting changes that require editing the PrintTicket of the job, the editing application 205 acquires the PrintTicket of the job using a predetermined API of the OS (S1207). Then, the setting values regarding the functions supported by the printer driver 201 (driver functions) in the storage information acquired in S1205 are reflected in the PrintTicket of the job (S1208). Note that the processing of S1201 to S1208 is the same as the processing of S901 to S909 in FIG. 9 excluding S906, so the details are omitted.
[0091] Next, the editing application 205 acquires an XPS document using a document-form interface (S1209). In S1210, based on the storage information acquired in S1205, it is determined whether there are setting changes that require the editing application 205 to edit the XPS document. The determination process in S1210 has different subsequent steps, but since the content of the determination is the same as S910 in FIG. 9, the details are omitted.
[0092] If it is determined in S1210 that there are setting changes that require the editing application 205 to edit the XPS in the storage information, the editing application 205 edits the acquired XPS document based on the function specified by the user and its setting value (S1211). Then, the editing application 205 outputs the edited XPS document using a document-form interface (S1212). Note that since the processes of S1211 and S1212 are the same as S911 and S912 in FIG. 9, the details are omitted.
[0093] If it is determined in S1210 that there are no setting changes that require the editing application 205 to edit the XPS in the storage information, the editing application 205 outputs the acquired XPS document without editing it using a document-form interface (S1212).
[0094] As described above, the editing application 205 in this embodiment uses a stream-form interface when no UI display is performed, and uses a document-form interface when UI display is performed. Thereby, when the user does not use UI functions such as the print preview function, the editing application 205 can suppress the performance degradation caused by the activation of the editing application 205.
[0095] <Embodiment 3> Next, Embodiment 3 will be described. In Embodiment 1 and Embodiment 2, the editing application 205 provides functions that can be set by the user by displaying the UI. However, the editing application 205 can edit the XPS document without displaying the UI. Therefore, the editing application 205 in this embodiment does not give an instruction to display the UI in the setup process. By not giving an instruction to display the UI, the editing application 205 does not call the UI process and executes the editing and termination processes. For example, in the case of forcibly adding a specific watermark (stamp) according to the settings made in advance, the editing application 205 does not require a user instruction. Therefore, the editing application 205 does not display the UI but edits the XPS document to add a watermark. Hereinafter, the processing of this embodiment will be described in detail.
[0096] Since the hardware configuration of the printing system is the same as that of Embodiment 1, the description thereof will be omitted. Also, regarding the flow of each process, mainly the parts different from Embodiment 1 will be described.
[0097] FIG. 11 is a diagram showing an example of the editing and termination processes in Embodiment 3. After the setup process of the editing application 205 in FIG. 4 is completed, the OS calls the editing and termination processes of the editing application 205 in FIG. 11. Hereinafter, the editing application 205 may be described as the main body of each process, but actually, the corresponding functions are realized by the CPU 111 executing the corresponding program. Also, not all processes are necessarily sequentially executed on one process, and there may be a case where the process moves to the OS side once and is called again from the OS. It is merely a flow that shows the main processes of the editing application 205 in an easy-to-understand manner for convenience.
[0098] The editing application 205 acquires pre-stored setting enforcement information (S1101). As the storage location of the information, it is conceivable to use UserPropertyBag or QueuePropertyBag provided by the OS, but PrintTicket or Local Strage may also be used. The setting enforcement information is set in advance by the system administrator or the user himself / herself. Examples of setting enforcement include adding a specific watermark or forcibly turning on the duplex printing setting.
[0099] In S1102, the editing application 205 determines whether setting enforcement information exists. That is, the editing application 205 determines whether a function that is forcibly set is registered even if the editing application 205 does not accept settings from the user on the UI provided by the editing application 205.
[0100] In S1102, if it is determined that the setting enforcement information does not exist, since editing of the XPS document is not required, the editing application 205 acquires and outputs data using the stream format interface (S1103, S1104). On the other hand, in S1102, if it is determined that the setting enforcement information exists, since editing of the XPS document is required, the editing application 205 acquires data using the document format interface (S1105).
[0101] Then, in S1106, the editing application 205 edits the acquired XPS document, and in S1107, outputs the edited XPS document using the document format interface.
[0102] If the function to be forcibly set is included in the driver function, the editing application 205 only needs to reflect the setting in the PrintTicket in the XPS document. That is, the editing application 205 does not need to edit the drawing data in the XPS document, and only needs to execute the editing of the PrintTicket in the XPS document. Also, in this example as well, as in S910 of FIG. 9, it may be configured to first determine whether a setting change that requires changing the XPS document occurs, and use the document format interface only when the XPS document needs to be changed.
[0103] According to this embodiment, the editing application 205 can suppress a performance degradation caused by the activation of the editing application 205 even in a case where the UI is not displayed but the XPS document needs to be edited.
[0104] <Embodiment 4> Each of the above-described embodiments can also be realized by performing the following. That is, a recording medium recording a program code of software that realizes the functions of the above-described embodiments is supplied to a system or an apparatus. Then, a computer (such as a CPU or an MPU) of the system or apparatus reads and executes the program code stored in the recording medium. In this case, the program code itself read from the storage medium realizes the functions of the above-described embodiments, and the storage medium storing the program code constitutes the present invention. Also, it is not necessary to realize all of the above-described processing by software, and a part or all of the processing may be realized by hardware such as an ASIC. Also, the CPU is not limited to one that performs all processing, and a plurality of CPUs may perform processing while appropriately cooperating.
[0105] As the storage medium for supplying the program code, for example, a flexible disk, a hard disk, an optical disk, a magneto-optical disk, a CD-ROM, a CD-R, a magnetic tape, a non-volatile memory card, a ROM, a DVD, etc. can be used.
[0106] Also, based on the instructions of the program code of the above-described embodiments, an Operating System (OS) or the like that operates on a computer may perform part or all of the processing.
[0107] Furthermore, the program code read from the storage medium may be written into a memory provided in a function expansion board inserted into the computer or a function expansion unit connected to the computer. Then, based on the instructions of the program code, a CPU or the like provided in the function expansion board or the function expansion unit may perform part or all of the actual processing.
Explanation of Reference Numerals
[0108] 102 Printing device 119 Display unit 201 Printer driver 202 UWP application 203 Legacy application 204 Edit app launcher 205 Edit application 206 Spool file 207 WSDA 208 Configuration module 209 PrinterExtensions (PEX)
Claims
1. An application program that cooperates with printing software provided together with an operating system of an information processing device, and that is capable of generating print commands that can be interpreted by a plurality of image forming devices provided by a plurality of vendors, and outputting the print commands to the plurality of image forming devices, the application program comprising: Displaying an item for accepting print settings and an image showing the print result, updating an image showing an image of the print result in response to a change in print settings via the item; The application program, wherein the print settings include settings related to a print range.
2. The application program described in Claim 1, characterized in that the printing range is specified by inputting the page number of the data to be printed in a user interface in which the application program controls the display.
3. The application program according to claim 1, characterized in that in a user interface in which the application program controls the display, all pages of the data to be printed can be specified as the print range.
4. 2. The application program according to claim 1, wherein, in response to a print request from a user, an item for accepting the print settings and an image showing an image of the print result are displayed in a user interface whose display is controlled by the application program.
5. 2. The application program according to claim 1, further comprising: a program for generating an image showing an image of a print result by editing intermediate data to be printed.
6. 2. The application program according to claim 1, wherein the image showing the image of the print result is generated based on intermediate data including image data generated by a drawing application and data including information indicating print settings.
7. 2. The application program according to claim 1, wherein when a print setting via the item is changed, at least one of intermediate data to be printed and information indicating the print setting is edited.
8. 8. The application program according to claim 6, wherein the intermediate data is XPS data, and the data including the information indicating the print settings is a PrintTicket.
9. The application program of claim 1, wherein the printing software is provided as a function within an operating system package.
10. A method for controlling an information processing device having printing software provided together with an operating system, the printing software being capable of generating print commands that can be interpreted by a plurality of image forming devices provided by a plurality of vendors and outputting the print commands to the plurality of image forming devices, and an application program cooperating with the printing software, comprising: Displaying an item for accepting print settings and an image showing the print result, updating an image showing an image of the print result in response to a change in print settings via the item; The control method according to claim 1, wherein the print settings include settings related to a print range.
11. An information processing device having printing software provided together with an operating system, the printing software being capable of generating print commands that can be interpreted by a plurality of image forming devices provided by a plurality of vendors, and outputting the print commands to the plurality of image forming devices, and an application program cooperating with the printing software, Displaying an item for accepting print settings and an image showing an image of the print result; updating an image showing an image of the print result in response to a change in print settings via the item; The information processing apparatus, wherein the print settings include settings related to a print range.
Citation Information
Patent Citations
Information processing apparatus, preview method, and program
JP2009282843A
Printing apparatus, printing method and printing program
JP2011118627A
Printing system, information processor, and method thereof
JP2011233034A
Print controller, print control method and program
JP2011237860A
Print control apparatus, control program, and recording medium
JP2013041329A