Program, method for controlling information processing apparatus, and information processing apparatus
A program extends general-purpose scanning software to support manufacturer-specific functions, allowing continuous page copying with scanners from various manufacturers, overcoming limitations of standard drivers.
Patent Information
- Application Number
- JP2024066655
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2024-04-17
- Publication Date
- 2025-10-29
AI Technical Summary
The standard driver in Windows does not support manufacturer-specific functions such as the page burst function, preventing users from utilizing continuous page copying when scanning with scanners from multiple manufacturers.
A program that supports general-purpose scanning software by displaying a setting screen for specifying scan functions and outputting commands to execute scan processes, including manufacturer-specific functions like continuous page copying.
Enables users to perform continuous page copying using scanners from multiple manufacturers through a general-purpose program, enhancing functionality beyond standard driver limitations.
Smart Images

Figure 2025163425000001_ABST
Abstract
Description
[Technical Field]
[0001] The present invention relates to a program, a control method for an information processing device, and an information processing device. [Background technology]
[0002] A known configuration uses a scan driver installed on a host computer as software for controlling the scanning device, and instructs the scanning device connected to the host computer to execute a scan process. An operating system (OS), which is the basic software, is installed on the host computer, and the scan driver is configured according to the specifications defined by the OS and runs when called by the OS. By providing a scan driver that conforms to the OS specifications, manufacturers of scanning devices can provide a means for instructing the scanning device to execute a scan process using the OS.
[0003] Meanwhile, Windows (registered trademark) is about to provide a standard class driver (hereinafter also referred to as a "standard driver") that can be used with scanning devices from multiple manufacturers. Such a standard driver is included in the OS package and can be easily used by connecting any scanning device to a host computer. This eliminates the need to separately install a model-specific scan driver suitable for the scanning device, providing high convenience. Furthermore, the standard driver is expected to be configured to allow specification of scanning functions based on the scanning function information of the scanning device connected to the host computer. This allows users of the standard driver to specify scanning functions appropriate to the capabilities of the scanning device connected to the host computer, even while using a single standard driver. However, this is limited to functions that can be realized by the standard driver alone, and does not allow specification of manufacturer-specific functions. In response to this issue, Patent Document 1 proposes a technology that allows manufacturers to use their own unique functions. Patent Document 1 discloses a program that expands the printing functions of general-purpose software. [Prior art documents] [Patent documents]
[0004] [Patent Document 1] Patent Publication No. 2021-033526 Summary of the Invention [Problem to be solved by the invention]
[0005] Here, a unique feature of the manufacturer is the page burst function of the scanning device. The page burst function is a function that splits a double-page spread, such as a magazine or book, into left and right pages and generates two sets of image data. The page burst function allows you to set the page order of the output image data, specifically which page (left or right) will be the image data for the next page, by setting the opening method. In the case of a left-opening document, the image data on the left side of the document becomes the image data for the next page, and the image data on the right side becomes the image data for the next page. In the case of a right-opening document, the image data on the right side of the document becomes the image data for the next page, and the image data on the left side becomes the image data for the next page. By using the page burst function, users can obtain separate image data for the left and right pages of a double-page spread, such as a magazine or book.
[0006] However, since the standard driver does not support the continuous page copy function, a host computer that uses the standard driver to instruct a scanning device to execute a scan process cannot allow a user to use the continuous page copy function.
[0007] An object of the present invention is to provide a mechanism that allows a user to use a continuous page copying function when scanning using a general-purpose program that can be used in common with scanners from multiple manufacturers. [Means for solving the problem]
[0008] In order to achieve the above object, the program of the present invention is a program that supports a general-purpose program that can be used commonly with scanners from multiple manufacturers, and is characterized by causing an information processing device in which the program is installed to execute the following steps: displaying a setting screen on a display means of the information processing device, which accepts settings for a specified scan function that divides an image of a single scanned document into multiple image data and outputs the divided image data; and outputting a command to cause the scanner to execute a scan process using the settings accepted on the setting screen. [Effects of the Invention]
[0009] According to the present invention, when scanning is performed using a general-purpose program that can be used in common with scanners from a plurality of manufacturers, the user can use the continuous page copying function. [Brief explanation of the drawings]
[0010] [Figure 1] 1 is a block diagram schematically illustrating a hardware configuration of a communication system according to an embodiment of the present invention. [Figure 2] 2 is a block diagram schematically illustrating a software configuration for the host computer of FIG. 1 to instruct the scanning device to execute a scan process. [Figure 3] FIG. 2 is a diagram showing an example of a screen displayed on the display unit of FIG. 1. [Figure 4] 3 is a flowchart showing the procedure of an edit control process executed by the scan function extension unit of FIG. 2(b). [Figure 5] 3A and 3B are diagrams showing examples of various information used by the scan function extension unit of FIG. 2B. [Figure 6] 2 is a sequence diagram showing the procedure of a scan control process executed in the communication system of FIG. 1. [Figure 7] 3 is a flowchart showing the procedure of a scan instruction command generation process executed by the extension application of FIG. 2; [Figure 8] 2 is a flowchart showing the procedure of a control process executed by the scanning device of FIG. [Figure 9] 10 is a flowchart showing the procedure of an edit control process executed by a scan function extension unit according to a second embodiment. [Figure 10] FIG. 10 is a sequence diagram illustrating a procedure of a scan control process executed in a communication system according to a second embodiment. [Figure 11] 10 is a flowchart illustrating a procedure for a scan instruction command generation process executed by an extension application according to the second embodiment. [Figure 12]FIG. 11 is a sequence diagram illustrating a procedure of a scan control process executed in a communication system according to a third embodiment. [Figure 13] FIG. 13 is a sequence diagram illustrating a procedure of a scan control process executed in a communication system according to a fourth embodiment. [Figure 14] FIG. 13 is a sequence diagram illustrating a procedure of a scan control process executed in a communication system according to a fifth embodiment. [Figure 15] 13 is a flowchart illustrating a procedure for a scan instruction command generation process executed by an extension application according to the fifth embodiment. DETAILED DESCRIPTION OF THE INVENTION
[0011] Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings. Note that the following embodiments do not limit the scope of the present invention as defined in the claims, and not all of the combinations of features described in the embodiments are necessarily essential to the solution of the present invention.
[0012] First, a program, a communication system, an information processing device, and a control method for an information processing device according to a first embodiment of the present invention will be described.
[0013] 1 is a block diagram showing a hardware configuration of a communication system according to the present embodiment. In FIG. 1, the communication system is made up of a host computer 101 and a scanning device 102.
[0014] The host computer 101 is an example of an information processing device, and includes 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. Input devices such as a keyboard 118 and a pointing device 117 are connected to the input interface 110, and display devices such as a display unit 119 are connected to the output interface 115. The host computer 101 further includes a NETIF 120. The NETIF 120 is a network interface that controls data communication with external devices via a network (not shown).
[0015] An initialization program is stored in the ROM 112. The external storage device 114 is, for example, a hard disk drive (HDD) or a solid state drive (SSD). The external storage device 114 stores a group of application programs, an operating system (OS), and various other data. The RAM 113 is used as a work memory or the like when executing the programs stored in the external storage device 114. In this embodiment, the CPU 111 performs processing in accordance with the code of the programs stored in the ROM 112, thereby executing the functions of the host computer 101 described below and the processing related to the flowcharts described below.
[0016] The scanning device 102 is an example of an image forming device, and is connected to the host computer 101 via an input / output interface 198 of the scanning device 102 and an input / output interface 116 of the host computer 101. The input / output interface 198 of the scanning device 102 and the input / output interface 116 of the host computer 101 may be connected via a wired network or a wireless network.
[0017] The scanning device 102 includes an image processing unit 190 , a CPU 191 , a ROM 192 , a RAM 193 , an operation unit 194 , a reading unit 195 , a printing unit 196 , a NETIF 197 , an input / output interface 198 , and an external storage device 199 .
[0018] The CPU 191 comprehensively controls the scanning device 102. The ROM 192 is a memory that stores programs. The RAM 193 is a memory that temporarily stores programs and image data. The reading unit 195 is a scanner that reads an image of a document and generates image data. The printing unit 196 prints an image on a sheet based on the image data. In this embodiment, the scanning device 102 is described as having the printing unit 196, but the configuration of the scanning device 102 is not limited to this configuration, and the scanning device 102 does not need to have the printing unit 196. The NETIF 197 is a network interface that controls data communication with external devices via a network (not shown). The image processing unit 190 performs various image editing processes on input image data.
[0019] 1, the host computer 101 and the scanning device 102 are shown as separate devices, but they may also be configured as a single information processing device. In this embodiment, the scanning device 102 is described as an electrophotographic digital multifunction peripheral having multiple functions such as copying, printing, and faxing, but the scanning device 102 is not limited to a digital multifunction peripheral. The scanning device 102 may also be, for example, a device using another process such as an inkjet system, or a scanner that only reads images. The host computer 101 may also be a desktop personal computer, a smartphone, or a laptop computer.
[0020] 2 is a block diagram schematically illustrating a software configuration for the host computer 101 in FIG. 1 to instruct the scanning device 102 to execute a scan process. In this embodiment, as an example, the host computer 101 is described as being equipped with Microsoft Windows 11 as its OS.
[0021] FIG. 2A shows a software configuration for a host computer 101 that does not include an extension application 204 to instruct a scanning device 102 to execute a scan process.
[0022] 2(a), the host computer 101 includes a scan application 201 and general-purpose scan software 202 as software for instructing the scan device 102 to execute a scan process. The processing by these pieces of software is realized by the CPU 111 executing a program stored in the external storage device 114. The host computer 101 also includes scan function information 203.
[0023] The scan application 201 is software that imports content (image data) generated by scanning a document, such as a document creation application or an image editing application. When the scan application 201 receives a scan request from a user, it issues a scan instruction to the OS of the host computer 101. The scan instruction includes scan setting information for instructing the operation of the general-purpose scan software 202 and the scan device 102.
[0024] A scan setting screen provided by the general-purpose scan software 202, the OS of the host computer 101, or the scan application 201 is displayed on the display unit 119 of the host computer 101 as a screen for accepting a scan request from the user. When an advanced settings button on this scan setting screen is pressed, the general-purpose scan software 202 displays the advanced settings screen on the display unit 119 of the host computer 101. The configuration of the scan setting screen and the advanced settings screen will be described later with reference to FIG. 3. The advanced settings screen includes setting items (hereinafter also referred to as "control items") that indicate scan functions supported by the general-purpose scan software 202 according to the capability information of the general-purpose scan software 202, and control items that indicate the setting values for those setting items.
[0025] The generic scanning software 202 is a general-purpose program that can be used with scanning devices from multiple manufacturers and generates and outputs instructions that can be interpreted by scanning devices from multiple manufacturers. The generic scanning software 202 is, for example, a standard class driver that controls the execution of scanning processes based on a standard scanning protocol called Mopria. The generic scanning software 202 determines scanning capabilities based on the scanning function information 203.
[0026] The scan function information 203 is data indicating all scan functions supported by the general-purpose scan software 202, their setting values, and the exclusive relationships between the setting values. The scan function information 203 is included in a configuration file of the general-purpose scan software 202 and stored in the external storage device 114 as an unmodifiable file. Alternatively, the scan function information 203 is dynamically generated by the general-purpose scan software 202 or the OS of the host computer 101. Specifically, the general-purpose scan software 202 or the OS of the host computer 101 acquires attribute data of the scan device 102 from the scan device 102 and generates the scan function information 203 based on the acquired attribute data. The attribute data of the scan device 102 includes attribute information indicating functions (scan device capabilities) that can be specified by the scan device 102 and setting values corresponding to the attribute information. The attribute data of the scan device 102 acquired from the scan device 102 is stored in the RAM 113. If the scan function information 203 is dynamically generated, the generated scan function information 203 is editable.
[0027] By dynamically generating scan function information 203 in this manner, the general-purpose scan software 202 allows the user to specify scan functions that it supports and that can be used by the scan device 102 connected to the host computer 101. In other words, even if scan devices with different functions or scan devices developed by any manufacturer are connected to the host computer 101, the user can specify scan functions that the general-purpose scan software 202 supports and that can be used by the connected scan device. However, because the general-purpose scan software 202 does not support manufacturer-specific functions, it cannot allow the user to specify manufacturer-specific scan functions that can be used by the scan device connected to the host computer 101. An example of a manufacturer-specific scan function is a page burst function.
[0028] The page burst function splits the image of a scanned document into multiple pieces of image data and outputs them. When a double-page spread document, such as a magazine or book, is scanned, the function splits the document into left and right pages and generates two sets of image data. The page burst function allows you to set the page order of the output image data, specifically, which page (left or right) will be the image data for the first page, by setting the page opening. For example, if the document opens from the left, the left side of the document will be the first page, and the right side of the document will be the next page. Therefore, when the page burst function is set to open from the left, the image data on the left side of the document will be the image data for the first page, and the image data on the right side will be the image data for the next page. On the other hand, when the document opens from the right, the right side of the document will be the first page, and the left side of the document will be the next page. Therefore, when the page burst function is set to open from the right, the image data on the right side of the document will be the image data for the first page, and the image data on the left side will be the image data for the next page.
[0029] By using the page burst function, a user can obtain separate image data for the left and right pages of a spread of a magazine, book, etc. Note that in this embodiment, a configuration is described in which the setting value of the page burst function is set to either left-opening or right-opening, but the setting value of the page burst function is not limited to this configuration. For example, a method of specifying which of the left and right pages is the first page may also be used. Also, in this embodiment, a configuration is described in which a spread page is divided into two, but the number of divisions may be variable and may be other than two, such as dividing a tri-folded document into three.
[0030] Next, a software configuration for the host computer 101 having the extension application 204 to instruct the scanning device 102 to execute a scan process will be described.
[0031] 2(b) shows a software configuration for the host computer 101 equipped with the extension application 204 to instruct the scanning device 102 to execute a scan process. Note that in FIG. 2(b), configurations and processes that are not specifically mentioned are the same as those in FIG. 2(a).
[0032] 2(b), the host computer 101 includes the above-described scan application 201 and general-purpose scan software 202, as well as an extension application 204, as software for instructing the scan device 102 to execute a scan process. The processing by these pieces of software is realized by the CPU 111 executing a program stored in the external storage device 114.
[0033] The extension application 204 is software that supports the general-purpose scan software 202 and is not pre-installed (not bundled) in the OS of the host computer 101. Therefore, the user must operate the host computer 101 to download and install the extension application 204 from a server via the Internet. Alternatively, the extension application 204 may be automatically installed when the scanning device 102 is connected to the host computer 101. Specifically, when the scanning device 102 is connected to the host computer 101, the OS of the host computer 101 acquires device identification information from the scanning device 102. The OS of the host computer 101 may download and install the extension application 204 corresponding to the acquired device identification information from a server via the Internet. In other words, the general-purpose scan software 202 and the extension application 204 are stored in the host computer 101 as separate files.
[0034] The general-purpose scanning software 202 and the extension application 204 may be updated and upgraded, but these update processes are also performed at different times. That is, the timing at which the host computer 101 acquires the general-purpose scanning software 202 is different from the timing at which the extension application 204 is acquired. Furthermore, the trigger at which the host computer 101 acquires the general-purpose scanning software 202 is different from the trigger at which the extension application 204 is acquired. When the extension application 204 is installed in the host computer 101, the OS of the host computer 101 associates the extension application 204 with the general-purpose scanning software 202 and the scanning device 102.
[0035] The extension application 204 includes a scan setting screen extension unit 205, a scan function extension unit 206, an image data editing unit 207, and a notification unit 209. The extension application 204 also includes shared information 208 that can be commonly accessed by each unit. The shared information 208 is actually a file saved in the external storage device 114 or information stored in the RAM 113. The extension application 204 writes and reads information to and from the shared information 208 by using an API (Application Program Interface) provided by the OS of the host computer 101.
[0036] The extended application 204 may terminate its operation each time the processing of each unit is completed. In this case, the OS of the host computer 101 will start the extended application 204 each time a request to use each unit is received.
[0037] Furthermore, the extension application 204 may cancel the processing of each unit during its processing. If the processing is canceled, the job being processed is deleted by the OS of the host computer 101.
[0038] When the scan application 201 receives a scan request from a user, it issues a scan instruction to the OS of the host computer 101. In the configuration of FIG. 2(b), as in the configuration of FIG. 2(a), the scan application 201 can display a scan setting screen. In the configuration of FIG. 2(b), a detailed setting screen provided by the extension application 204 is displayed. Specifically, a detailed setting screen provided by the scan setting screen extension unit 205 of the extension application 204 is displayed. In addition, the scan setting screen extension unit 205 saves the setting values set by the user on the detailed setting screen in the shared information 208.
[0039] The image data editing unit 207 edits the image data acquired from the scanning device 102. The image data editing unit 207 acquires the setting values set on the detailed setting screen from the shared information 208 and performs image editing on the image data according to the setting values. The extension application 204 may also be configured to acquire image data acquired by the general-purpose scanning software 202 and perform image editing on the image data according to the setting values. Also, even in the configuration of FIG. 2(b), there are cases where the user does not set the setting values for the continuous page copying function. In such cases, as in the configuration of FIG. 2(a), the general-purpose scanning software 202 may issue a scan instruction to the scanning device 102 without going through the extension application 204.
[0040] The scan function extension unit 206 can edit the scan function information 203 generated by the general-purpose scan software 202 or the OS of the host computer 101. This allows the scan function extension unit 206 to add functions provided by the extension application 204 to the scan function information 203. The scan function extension unit 206 can also add scan functions supported by the scan device 102 but not supported by the general-purpose scan software 202, and add exclusive relationships between setting values of these scan functions. An example of a scan function supported by the scan device 102 but not supported by the general-purpose scan software 202 is a continuous page copy function. The OS of the host computer 101 launches the scan function extension unit 206 when the extension application 204 is first associated with the scan device 102 and the general-purpose scan software 202. The OS of the host computer 101 may also launch the scan function extension unit 206 at other times, such as when the OS of the host computer 101 is launched.
[0041] The notification unit 209 can display a notification to the user in response to the occurrence of an error in the scanning device 102. For example, when a reading jam error occurs in the scanning device 102, the general-purpose scanning software 202 detects it. The OS of the host computer 101 uses a notification function of the OS called a toast notification to display a message on the display unit 119. When the user presses this toast notification, the OS of the host computer 101 calls the notification unit 209 of the extension application 204, and the UI screen of the notification unit 209 is displayed. The UI screen of the notification unit 209 displays, for example, detailed information about the reading jam error and how to clear the jam.
[0042] The configuration of the extension application 204 is not limited to having all of the above-mentioned functions (units), but may have only some of the functions or other functions. The extension application 204 is sometimes simply called scan software. As described above, the extension application 204 can be said to have at least one of the following functions: The first is a function to display a setting screen (scan setting screen extension unit 205). The second is a function to edit image data according to detailed settings (image data editing unit 207). The third is a function to extend functions that can be specified by the user (scan function extension unit 206). The fourth is a function to display a screen in response to the occurrence of an error in the scan device 102 (notification unit 209).
[0043] Next, an example of the scan setting screen and the detailed setting screen displayed on the display unit 119 of the host computer 101 will be described with reference to FIG.
[0044] Fig. 3(a) is an example of a scan setting screen 300 displayed by the scan application 201 of Fig. 2(a). As shown in Fig. 3(a), the scan setting screen 300 includes a control 301, a scan button 302, a cancel button 303, and an advanced settings button 304.
[0045] The control 301 has an object that allows the user to specify the scanning device to be used for scanning the document. The scan button 302 is a button for instructing the user to start scanning. The cancel button 303 is a button for instructing the user to stop scanning. The advanced settings button 304 is a button for instructing the display unit 119 to display an advanced settings screen. In this embodiment, the configuration of the advanced settings screen displayed on the display unit 119 differs depending on whether the host computer 101 is equipped with the extension application 204.
[0046] For example, the display unit 119 of a host computer 101 (see, for example, FIG. 2A) that does not include the extension application 204 displays an advanced settings screen 305a shown in FIG. 3B. The advanced settings screen 305a is displayed on the display unit 119 by the general-purpose scan software 202 when the user presses the advanced settings button 304. The advanced settings screen 305a includes a control 306a and an end settings button 307a. The control 306a allows the user to set the reading destination, and in FIG. 3B, as an example, "platen" is set. The end settings button 307a is a button for ending the settings on the advanced settings screen 305a. When the user presses the end settings button 307a, the screen of the display unit 119 returns to the scan settings screen 300.
[0047] Meanwhile, the display unit 119 of the host computer 101 (see, for example, FIG. 2B) equipped with the extension application 204 displays the advanced settings screen 305b shown in FIG. 3C. When the user presses the advanced settings button 304, the advanced settings screen 305b is displayed on the display unit 119 by the scan settings screen expansion unit 205. Note that, in this embodiment, a configuration in which the scan settings screen expansion unit 205 displays the advanced settings screen 305b on the display unit 119 will be described, but this configuration is not limiting. For example, the scan settings screen expansion unit 205 may be configured to only generate display data for the advanced settings screen 305b. In this case, the scan settings screen expansion unit 205 transmits the generated display data to the scan application 201 via the general-purpose scan software 202. The scan application 201 uses the acquired display data to display the advanced settings screen 305b on the display unit 119.
[0048] The advanced settings screen 305b includes a control 306b having the same function as the above-described control 306a, a settings end button 307b having the same function as the above-described settings end button 307a, a control 308b, and a list 309b. The control 308b is a button for setting the setting value of the continuous page copy function. In FIG. 3(c), "Left-opening" is selected as an example. The list 309b is a list of setting values that the user can set, and is displayed when the user presses the control 308b. The list 309b includes "Right-opening". When the user selects one setting value from the list 309b, the host computer 101 can generate a scan instruction command (described later) that includes the selected setting value.
[0049] Here, the reason why the setting items differ between the detailed setting screen 305a and the detailed setting screen 305b will be explained.
[0050] The advanced settings screen 305a displayed on the display unit 119 of a host computer 101 that does not have the extension application 204 is generated by referring to the scanning capabilities generated based on the scan function information 203. As described above, the scan function information 203 includes information on the scanning functions supported by the general-purpose scan software 202. However, because the general-purpose scan software 202 does not support the continuous page copy function, the scan function information 203 does not include information on the continuous page copy function. As a result, the advanced settings screen 305a does not include a control 308b or a list 309b for configuring settings related to the continuous page copy function.
[0051] Meanwhile, the advanced settings screen 305b displayed on the display unit 119 of the host computer 101 equipped with the extension application 204 is generated by referring to the scan capabilities generated based on the scan function information 203 edited by the scan function extension unit 206. Information about the continuous page copy function has been added to this scan function information 203 by the scan function extension unit 206. As a result, the advanced settings screen 305b includes a control 308b and a list 309b for configuring settings related to the continuous page copy function. Note that the advanced settings screen 305b may also include setting items for manufacturer-specific scan functions other than the continuous page copy function.
[0052] Next, an edit control process in which the scan function extension unit 206 edits the scan function information 203 will be described.
[0053] Fig. 4 is a flowchart showing the procedure of the edit control process executed by the scan function extension unit 206 in Fig. 2(b). The edit control process in Fig. 4 is realized by the CPU 111 executing the program of the extension application 204 read from the external storage device 114 to the RAM 113. The edit control process in Fig. 4 is executed, for example, when the extension application 204 is started.
[0054] 4, first, in S401, the scan function extension unit 206 acquires capability information from the scanning device 102 connected to the host computer 101. This capability information is attribute information indicating functions that can be specified in the scanning device 102 and setting values related to that attribute information. Table 501 in FIG. 5(a) is an example of capability information acquired from the scanning device 102. As shown in Table 501, it is possible to acquire from the scanning device 102 function information such as reading size and continuous page copying, as well as option information which is setting values that can be set for each function.
[0055] Next, in S402, the scan function extension unit 206 acquires a list of scan functions supported by the extension application 204 (hereinafter referred to as the "extended application supported function list"). The extended application supported function list is capability information of the extension application 204, and is registered in the shared information 208. The extended application supported function list includes all scan functions supported by the extension application 204 and their setting values. Table 502 in FIG. 5(b) is an example of the extended application supported function list. The extended application supported function list may be updated by updating the extension application 204, etc.
[0056] Next, in S403, the scan function extension unit 206 obtains the scan function information 203 created by the general-purpose scan software 202 from the OS. Table 503 in FIG. 5(c) is an example of the scan function information 203 created by the general-purpose scan software 202. The general-purpose scan software 202 creates the scan function information 203 based on the capability information obtained from the scan device 102 (see, for example, Table 501 in FIG. 5(a)). The scan function information 203 created by the general-purpose scan software 202 records only the scan functions supported by the general-purpose scan software 202 out of the multiple scan functions recorded in the capability information obtained from the scan device 102. Therefore, the functions recorded in the scan function information 203 are limited. For example, the capability information in FIG. 5(a) includes information about the page continuous copy function, but the general-purpose scan software 202 does not support the page continuous copy function (see, for example, Table 503 in FIG. 5(c)). Therefore, information about the page continuous copy function is not recorded in the scan function information 203. In this embodiment, the scan function extension unit 206 adds functions and options to the scan function information 203, which enables the extension application 204 to compensate for the lack of functions of the general-purpose scan software 202. In addition, the scan function extension unit 206 can also delete unnecessary functions and options from the scan function information 203 created by the general-purpose scan software 202.
[0057] Next, the scan function expansion unit 206 performs a process for adding a scan function. Specifically, the scan function expansion unit 206 performs S404, S405, and S406. The process for adding a scan function is a process that is repeatedly performed for each function option recorded in the capability information acquired from the scan device 102 in S401. In this embodiment, the process for adding a scan function is repeatedly performed for 13 items ranging from "A4H," which is the reading size option in the capability information of FIG. 5(a), to "Right-opening," which is the option for the continuous page copying function. The scan function expansion unit 206 selects one of the options in the capability information acquired in S401.
[0058] First, in S404, the scan function extension unit 206 determines whether the selected option is included in the scan function information 203 generated by the general-purpose scan software 202. For example, if "Platen" is selected as the read destination option from the capability information in FIG. 5(a), this "Platen" is included in the scan function information 203 in FIG. 5(c). In such a case, in S404, it is determined that the selected option is included in the scan function information 203 generated by the general-purpose scan software 202. On the other hand, if "A4H" is selected as the read size option from the capability information in FIG. 5(a), this "A4H" is not included in the scan function information 203 in FIG. 5(c). In such a case, in S404, it is determined that the selected option is not included in the scan function information 203 generated by the general-purpose scan software 202.
[0059] If it is determined in S404 that the selected option is included in the scan function information 203 generated by the general-purpose scan software 202, the scan function extension unit 206 selects the next option, and the edit control process returns to S404. Note that if the option determined in S404 is the last option in the capability information acquired in S401 (for example, "opens to the right" in FIG. 5(a)), the process of adding the scan function ends, and the edit control process ends.
[0060] If it is determined in S404 that the selected option is not included in the scan function information 203 generated by the general-purpose scan software 202, the edit control process proceeds to S405.
[0061] In S405, the scan function extension unit 206 determines whether the selected option is included in the list of extended application support functions acquired in S402. For example, if the resolution option "100 x 100 dpi" is selected from the capability information in FIG. 5(a), this "100 x 100 dpi" is not included in the list of extended application support functions in FIG. 5(b). In such a case, in S404, it is determined that the selected option is not included in the list of extended application support functions, the scan function extension unit 206 selects the next option, and the editing control process returns to S404. Note that if the option determined in S405 is the last option in the capability information acquired in S401, the process of adding the scan function ends, and the editing control process also ends.
[0062] On the other hand, if the "left-opening" option for the continuous page copy function is selected from the capability information in Fig. 5(a), this "left-opening" is included in the list of extended application support functions in Fig. 5(b). In this case, in S405, it is determined that the selected option is included in the list of extended application support functions, and the editing control process proceeds to S406.
[0063] In S406, the scan function extension unit 206 adds the selected option to the scan function information 203. Next, the scan function extension unit 206 selects the next option, and the editing control process returns to S404. Note that if the option added to the scan function information 203 in S406 is the last option in the capability information acquired in S401, the process of adding the scan function ends, and the editing control process also ends.
[0064] In this way, the scan function extension unit 206 adds scan function options that are not supported by the general-purpose scan software 202 but are supported by the scan device 102 and the extension application 204 to the scan function information 203. Scan capabilities are generated based on the scan function information 203 edited by the edit control process of Fig. 4 described above. Furthermore, the scan setting screen extension unit 205 generates display data for the advanced setting screen based on the generated scan capabilities. This makes it possible to display the advanced setting screen 305b of Fig. 3(c) on which scan functions that are not supported by the general-purpose scan software 202 but are supported by the scan device 102 and the extension application 204 can be set.
[0065] Next, a scan control process in the communication system of FIG. 1, from when scan settings are accepted to when image data generated by scanning an original document using the scanning device 102 is displayed, will be described.
[0066] FIG. 6 is a sequence diagram showing the steps of a scan control process executed in the communication system of FIG. 1. The process by the host computer 101 in FIG. 6 is realized by the CPU 111 reading each program (scan application 201, general-purpose scan software 202, and extension application 204) from the external storage device 114 to the RAM 113 and executing them. The process by the scanning device 102 in FIG. 6 is realized by the CPU 191 of the scanning device 102 reading a program stored in the ROM 192 or the external storage device 199 to the RAM 193 and executing them. Note that in this embodiment, the scan control process will be described for a configuration in which the host computer 101 includes the extension application 204, as shown in FIG. 2(c) above. In addition, in the scan control process of FIG. 6, it is assumed that the edit control process of FIG. 4 above has already been executed. By this edit control process, an option for a scan function (e.g., a continuous page copy function) that is not supported by the general-purpose scan software 202 but is supported by the scanning device 102 and the extension application 204 is added to the scan function information 203.
[0067] 6, first, in S601, the scan application 201 receives a scan setting instruction from the user. The scan setting instruction is an instruction to set scan settings to be used in the scan process executed by the scan device 102 connected to the host computer 101. The user can issue the scan setting instruction to the scan application 201 by operating the pointing device 117 or keyboard 118.
[0068] Next, in S602, the scan application 201 displays the scan setting screen 300 on the display unit 119 in accordance with the received scan setting instruction.
[0069] Next, in S603, the scan application 201 receives an instruction to display a detailed settings screen. The user can issue an instruction to display the detailed settings screen by operating the pointing device 117 or the keyboard 118 to select the detailed settings button 304 on the scan settings screen 300.
[0070] Next, in S604, the scan application 201 requests the general-purpose scan software 202 to display the detailed setting screen in accordance with the received instruction to display the detailed setting screen.
[0071] Next, in S605, in accordance with the received display request, the general-purpose scan software 202 requests the extension application 204 to display a detailed setting screen. Note that, as shown in FIG. 2(b) above, in a configuration in which the host computer 101 does not include the extension application 204, the general-purpose scan software 202 causes the display unit 119 to display the detailed setting screen 305a.
[0072] Next, in S606, the scan setting screen expansion unit 205 of the extension application 204 displays the detailed setting screen 305b on the display unit 119. Specifically, the scan setting screen expansion unit 205 references the scan capabilities generated based on the scan function information 203 to which options such as the continuous page copy function have been added in the editing control process of FIG. 4, and displays the detailed setting screen 305b on the display unit 119. As described above, the detailed setting screen 305b includes a control 308b and a list 309b for setting the setting values of the continuous page copy function. In this embodiment, the extension application 204 supports only one resolution, 300×300 dpi, as shown in FIG. 5(b). Therefore, there is no need for the user to select a resolution, and this setting item is not displayed on the detailed setting screen 305b. Note that this configuration is merely an example, and the detailed setting screen 305b may also include a resolution setting item with 300×300 dpi selected.
[0073] Next, in S607, the scan setting screen expansion unit 205 accepts the settings of the detailed setting screen 305b by the user. The detailed setting screen 305b in FIG. 3C shows an example in which the user has set "Platen" as the reading destination and "Left-Open" as the setting value for the continuous page copying function. The values set on the detailed setting screen 305b are stored in the RAM 113 by the CPU 111.
[0074] Next, in S608, the scan setting screen expansion unit 205 receives an instruction from the user to end the detailed settings. The user can issue an instruction to end the detailed settings by operating the pointing device 117 or keyboard 118 to select the End Settings button 307b. Upon receiving the instruction to end the detailed settings, the scan setting screen expansion unit 205 writes the setting values set on the detailed settings screen 305b into the scan setting information. Note that the scan setting screen expansion unit 205 may also be configured to write setting values for items that the user is not allowed to select, such as resolution, into the scan setting information. The scan setting information is stored in the RAM 113, etc.
[0075] Next, in S609, the extension application 204 notifies the general-purpose scan software 202 of the completion of the detailed settings.
[0076] Next, in S610, the general-purpose scan software 202 notifies the scan application 201 of the completion of the detailed settings.
[0077] Upon receiving this notification, the scan application 201 switches the screen of the display unit 119 to the scan setting screen 300. In addition, the scan application 201 accepts a scan instruction from the user in S611. The user can issue a scan instruction by operating the pointing device 117 or keyboard 118 and selecting the scan button 302.
[0078] Next, in S612, the scan application 201 issues a scan instruction to the general-purpose scan software 202.
[0079] Next, in S613, the general-purpose scan software 202 issues a scan instruction to the extension application 204.
[0080] Next, in S614, the extension application 204 creates a scan instruction command based on the scan setting information written in S608. If the setting values of items that are not selectable by the user, such as resolution, have not been written to the scan setting information in S608, the extension application 204 may add those setting values to the scan instruction command when creating the scan instruction command in S614. Alternatively, the extension application 204 may not add those setting values and instead operate the scan device 102 using its default values.
[0081] Next, in S615, the extension application 204 transmits (outputs) a scan instruction command to the scanning device 102.
[0082] Next, in S616, the scanning device 102 interprets the received scan command and executes scanning. In S616, image processing corresponding to the scan command is performed on the image data obtained by scanning the document. Note that in this embodiment, if the setting value for the page burst function is set on the advanced settings screen 305b, scanning processing corresponding to the setting value set in the control 308b is performed. In this manner, two pieces of image data are generated by dividing the image of the double-page spread document, specifically, image data for the left page and image data for the right page. Note that the file names of the generated two pieces of image data include a predetermined character string that can identify which image data is the image data of the previous page. The predetermined character string is, for example, a number corresponding to the page order determined according to the setting value of the page burst function. The file name of the image data of the previous page is suffixed with "001" to indicate this, and the file name of the image data of the subsequent page is suffixed with "002" to indicate this. This makes it possible to determine which image data is the image data of the previous page from the file name.
[0083] Next, in S617, the scanning device 102 transmits the generated image data to the extension application 204. The above-described processing of S616 and S617 executed by the scanning device 102 will be described later with reference to FIG.
[0084] Next, in S618, the extension application 204 transmits the received image data to the general-purpose scan software 202. The above-described processes of S606, S607, S608, S609, S614, S615, and S618 executed by the extension application 204 will be described later with reference to FIG.
[0085] Next, in S619, the general-purpose scan software 202 transmits the received image data to the scan application 201.
[0086] Next, in S620, the scan application 201 receives image data. Next, in S621, the scan application 201 displays the received image data on the display unit 119. For example, the display unit 119 displays image data obtained by a scan process (scan process using the page continuous copy function) corresponding to the setting value set in the control 308b. For example, image data of a previous page determined according to the setting value of the page continuous copy function is displayed on the display unit 119, and image data of a subsequent page is displayed on the display unit 119 in accordance with a switching instruction by the user. Note that all of the received image data may be displayed on the display unit 119 at once so that the page order determined according to the setting value of the page continuous copy function can be seen. When the processing of S621 is completed, this processing ends.
[0087] In the present embodiment, the scan application 201 displays the image data received from the scanning device 102 on the display unit 119 in step S621. However, the present invention is not limited to this configuration. For example, the extension application 204 may display the image data on the display unit 119. In this configuration, as shown in FIG. 3D, the detailed setting screen 305b may further include a display area 310b that displays a preview image of the scanned document and a control 311b for instructing the display of the preview image in the display area 310b. By operating the control 311b in the state shown in FIG. 3D, the detailed setting screen 305b changes to a state in which the preview image is displayed in the display area 310b. Note that this preview image may be a low-resolution image. For example, of the two pieces of image data output after division, the image data of the first page is displayed as a preview image in the display area 310b. In response to a switching instruction from the user, the preview image is switched to the image data of the next page. Furthermore, by operating control 308b while the preview image is displayed, it is possible to change whether the left or right page of the document is the next page. As a result, the preview image in display area 310b is updated to an image that conforms to the changed setting. This preview image may be an image based on a scanned image obtained by rescanning the document, or an image that has already been scanned and processed by extension application 204. If the preview image in display area 310b is the image the user desires, control 308b is operated. This configuration allows the user to check the results of the prescan before issuing an instruction to perform a main scan.
[0088] Next, a description will be given of the scan instruction command generation process executed by the extension application 204. The scan instruction command generation process includes the processes of S606, S607, S608, S609, S614, S615, and S618 described above.
[0089] Fig. 7 is a flowchart showing the procedure of the scan instruction command generation process executed by the extension application 204 of Fig. 2. The scan instruction command generation process of Fig. 7 is realized by the CPU 111 executing the program of the extension application 204 that has been read from the external storage device 114 to the RAM 113.
[0090] 7, first, in S701, the extension application 204 receives a request to display a detailed setting screen from the general-purpose scan software 202. Next, in S702, the scan setting screen extension unit 205 of the extension application 204 displays the detailed setting screen 305b on the display unit 119 in accordance with the received display request (see, for example, S606 described above).
[0091] Next, in S703, the scan setting screen expansion unit 205 determines whether or not a function setting has been received from the user on the detailed setting screen 305b.
[0092] If it is determined in S703 that the user has set the function on the detailed setting screen 305b (see, for example, S607 described above), the extension application 204 saves the setting value set on the detailed setting screen 305b in the RAM 113. After that, the process proceeds to S705.
[0093] If it is determined in S703 that no function settings are to be received from the user on the detailed setting screen 305b, the process also proceeds to S705.
[0094] In S705, the scan setting screen expansion unit 205 determines whether or not an instruction to end the detailed setting has been received from the user.
[0095] If it is determined in S705 that an instruction to end the detailed settings has not been received from the user, the process returns to S703. If it is determined in S705 that an instruction to end the detailed settings has been received from the user (for example, see S608 described above), the process proceeds to S706. Note that if the determinations in both S703 and S705 are YES, the scan setting screen expansion unit 205 writes the setting values set on the detailed setting screen 305b to the scan setting information. Thereafter, the process proceeds to S706.
[0096] In S706, the extension application 204 notifies the general-purpose scan software 202 of the end of the detailed settings (see, for example, S609 described above).
[0097] Next, in S707, the extension application 204 determines whether a scan instruction has been received from the general-purpose scan software 202. The extension application 204 waits until a scan instruction is received, and if a scan instruction is received (YES in S707), in S708, the extension application 204 creates a scan instruction command based on the scan setting information written in S705 (see, for example, S614 described above). One method for creating a scan instruction command is to extend the function of a command conforming to a standard protocol. Examples of methods for extending the function of a command conforming to a standard protocol include recording the setting values of a continuous page copy function as a dedicated command in the extension area of this command, or adding a manufacturer-specific command to the end of this command. Another method for creating a scan instruction command is for the extension application 204 to convert a command conforming to a standard protocol into a unique command system. When issuing an instruction from the extension application 204, instructions and communication may be performed using a manufacturer-specific protocol, regardless of the standard protocol.
[0098] Next, in S709, the extension application 204 transmits (outputs) a scan instruction command to the scanning device 102 (see, for example, S615 described above).
[0099] Next, in S710, the extension application 204 determines whether all image data has been received from the scanning device 102. The extension application 204 waits until all image data has been received, and when all image data has been received (YES in S710), in S711, it sends the received image data to the general-purpose scanning software 202 (see, for example, S618 described above). Then, this process ends.
[0100] Next, a description will be given of the control processing executed by the scanning device 102. The control processing includes the above-mentioned steps S616 and S617.
[0101] Fig. 8 is a flowchart showing the procedure of the control process executed by the scanning device 102 of Fig. 1. The control process of Fig. 8 is realized by the CPU 191 executing a program stored in the RAM 192.
[0102] 8, first, in step S801, the CPU 191 acquires a scan instruction command sent from the extension application 204.
[0103] Next, in S802, the CPU 191 analyzes the scan instruction command acquired in S801 and converts it into read settings to be used by the scanning device 102 in the scan process. In the present embodiment, as an example, it is assumed that the CPU 191 converts the read settings to set the read destination to "platen," the setting value of the continuous page copy function to "left-hand opening," and the resolution to "300 x 300 dpi." Next, in S803, the CPU 191 sets the ASIC of the image processing unit 190 to be used in executing the scan process based on the read settings converted in S802. Next, in S804, the CPU 191 determines whether the read settings include the setting value of the continuous page copy function.
[0104] If it is determined in S804 that the reading settings do not include the setting value for the continuous page copying function, the process proceeds to S805. In S805, the CPU 191 transmits a reading instruction corresponding to the reading settings to the reading unit 195. The reading unit 195 performs a reading operation in accordance with the reading instruction.
[0105] Next, in S806, CPU 191 acquires image data from reading unit 195. Next, in S807, CPU 191 controls image processing unit 190 to perform image processing on the acquired image data. In S807, the acquired image data is subjected to image processing to convert the resolution to "300 x 300 dpi," for example. Note that if reading unit 195 is capable of reading at "300 x 300 dpi" and acquires image data at "300 x 300 dpi," the image processing to convert the resolution to "300 x 300 dpi" may not be performed in step S807.
[0106] Next, in S808, the CPU 191 stores the image data in the external storage device 199. Next, in S809, the CPU 191 determines whether or not reading of all pages has been completed.
[0107] If it is determined in S809 that reading of any page has not been completed, the process returns to S806.
[0108] If it is determined in S809 that reading of all pages has been completed, the process proceeds to S810. In S810, the CPU 191 controls the image processing unit 190 to convert the image data saved in S808 into the specified transmission format. In this embodiment, the transmission format is not included in the scan instruction command acquired in S801, and the image data is converted into the JPEG format, which is the default setting of the scanning device 102, in S810. However, the destination transmission format is not limited to this. The destination transmission format may be a format other than JPEG, as long as it is a format supported by the host computer 101. Next, in S811, the CPU 191 controls the NETIF 197 to send the image data converted in S810 to the extension application 204. Then, the process ends.
[0109] If it is determined in S804 that the reading settings include the setting value of the continuous page copy function, the process proceeds to S812. In S812, the CPU 191 determines whether the setting value of the continuous page copy function is "left-opening" or "right-opening."
[0110] If it is determined in S812 that the setting value of the page continuous copy function is "left-hand binding," the process proceeds to S813. In S813, the CPU 191 transmits a read instruction corresponding to the read setting to the reading unit 195. Here, the document is placed on the document table so that the front side faces the glass surface of the document table, and the right edge of the front side of the document (hereinafter referred to as the "butting portion") is set at the reference position of the document table. In a left-hand binding document, the left page is the first page (even page) and the right page is the next page (odd page). Therefore, the butting portion of a left-hand binding document is the right edge of the next page (odd page). In S813, the CPU 191 transmits a read instruction to the reading unit 195 to read the area of the first page, that is, the half of the document opposite the butting portion. For example, when reading an A3 document, the reading unit 195, upon receiving the read instruction, opens an A4-size area from the butting portion and reads the A4-size area.
[0111] Next, in S814, the CPU 191 acquires image data from the reading unit 195. Next, in S815, the CPU 191 controls the image processing unit 190 to perform image processing on the acquired image data. In S815, the acquired image data is also subjected to image processing, for example, to convert the resolution to "300 x 300 dpi." Next, in S816, the CPU 191 saves the image data in the external storage device 199. Next, in S817, the CPU 191 transmits a read instruction corresponding to the read settings to the reading unit 195. Specifically, as a second read instruction, the CPU 191 transmits an instruction to read the area of the subsequent page, that is, half of the area on the abutment side of the document, to the reading unit 195. For example, when reading an A3 document, the reading unit 195, upon receiving the read instruction, reads an area of A4 size from the abutment side. Next, in S818, the CPU 191 acquires image data from the reading unit 195. Next, in S819, the CPU 191 controls the image processing unit 190 to perform image processing on the acquired image data. In S819, the acquired image data is also subjected to image processing to convert the resolution to "300 x 300 dpi", for example. Next, in S820, the CPU 191 saves the image data in the external storage device 199. Next, the process proceeds to S810.
[0112] On the other hand, if it is determined in S812 that the setting value of the page continuous copy function is "right-opening," the process proceeds to S821. In S821, the CPU 191 transmits a read instruction corresponding to the read setting to the reading unit 195. Here, in a right-opening document, the right page is the first page (even-numbered page) and the left page is the next page (odd-numbered page), so the abutment portion of a right-opening document is the right edge of the first page (even-numbered page). In S821, the CPU 191 transmits a read instruction to the reading unit 195 for the area of the first page, i.e., the half area of the document on the abutment portion side. Next, in S822, the CPU 191 acquires image data from the reading unit 195. Next, in S823, the CPU 191 controls the image processing unit 190 to perform image processing on the acquired image data. In S823, the acquired image data is also subjected to image processing, for example, to convert the resolution to "300 x 300 dpi." Next, in S824, the CPU 191 stores the image data in the external storage device 199.
[0113] Next, in S825, the CPU 191 transmits a read instruction corresponding to the read setting to the reading unit 195. Specifically, the CPU 191 transmits a second read instruction to the reading unit 195 to read the area of the subsequent page, that is, the half area on the opposite side of the document abutment portion. Next, in S826, the CPU 191 acquires image data from the reading unit 195. Next, in S827, the CPU 191 controls the image processing unit 190 to perform image processing on the acquired image data. Also in S827, the acquired image data is subjected to image processing to convert the resolution to "300 x 300 dpi," for example. Next, in S828, the CPU 191 saves the image data in the external storage device 199. Next, the process proceeds to S810.
[0114] According to the above-described embodiment, the extension application 204 displays the detailed setting screen 305b, which accepts settings for the continuous page copy function, on the display unit 119. The extension application 204 also outputs a scan instruction command for causing the scanning device 102 to execute a scan process using the continuous page copy function with the setting values set on the detailed setting screen 305b. This allows the user to use the continuous page copy function.
[0115] In the above-described embodiment, the user sets a setting value for determining the page order of the divided image data on the detailed setting screen 305b, which allows the user's intention to be reflected in the page order of the divided image data.
[0116] In the above-described embodiment, in the scanning process using the continuous page copying function, one document is read multiple times, which allows the scanning device 102 to output separate image data for the left and right pages of a spread.
[0117] In the above-described embodiment, the extension application 204 creates a scan instruction command for causing the scanning device 102 to execute a scan process using the continuous page copy function with the setting values set on the detailed setting screen 305b. This allows the scanning device 102 to execute a scan process using the continuous page copy function with the setting values set on the detailed setting screen 305b.
[0118] In the above-described embodiment, the scan instruction command is a command created by extending the function of a command conforming to the standard protocol, which allows the scanning device 102 to execute a scan process using the continuous page copying function with the setting values set on the detailed setting screen 305b using the standard protocol.
[0119] Furthermore, in the above-described embodiment, the scan instruction command is a command that is obtained by converting a command conforming to the standard protocol into a command system unique to the extension application 204. This allows the settings of a scan function that is not supported by the standard protocol to be reflected in the scan instruction command.
[0120] Furthermore, in the above-described embodiment, the setting items displayed on the advanced setting screen 305b are determined using the capability information of the scanning device 102 specified by the user. This allows the setting items of the scanning functions that are not supported by the general-purpose scanning software 202 but are supported by the scanning device 102 to be included on the advanced setting screen 305b.
[0121] In the above embodiment, the continuous page copying function has been described as a configuration in which the scanning device 102 reads one document twice, but the configuration is not limited to this. For example, a configuration may be adopted in which one document is read only once, and the image processing unit 190 performs image processing on the image data obtained by this reading, and divides the image data into image data of the previous page and image data of the next page.
[0122] In the above-described embodiment, the detailed setting screen 305b is displayed on the display unit 119 of the host computer 101 (see, for example, FIG. 2B) equipped with the extension application 204. However, the present invention is not limited to this. For example, upon receiving a request to display the detailed setting screen in S604, the general-purpose scan software 202 may display the detailed setting screen 305a on the display unit 119. After completing the settings on the detailed setting screen 305a, the general-purpose scan software 202 requests the extension application 204 to display an additional detailed setting screen. In response to this display request, the extension application 204 may display, for example, a detailed setting screen (not shown) on the display unit 119 that does not include the control 306b and is configured with a setting end button 307b, a control 308b, and a list 309b. Even with this configuration, the user can use the continuous page copying function.
[0123] In the above-described embodiment, the general-purpose scan software 202 issues a scan instruction to the extension application 204 in step S613, but the present invention is not limited to this. For example, the scan application 201 may directly issue a scan instruction to the extension application 204. Alternatively, a control for issuing a scan instruction may be placed on the advanced settings screen 305b, and the user may directly issue an instruction to the extension application 204.
[0124] In the above-described embodiment, the configuration has been described in which the extended application 204 passes image data received from the scanning device 102 to the scanning application 201 via the general-purpose scanning software 202, but the configuration is not limited to this. For example, the extended application 204 may pass the image data directly to the scanning application 201 without passing it through the general-purpose scanning software 202. Alternatively, the scanning device 102 may pass the image data to the scanning application 201. Alternatively, the image data acquired from the scanning device 102 may be saved in the external storage device 114, and only file path information indicating the save destination may be passed.
[0125] In the above embodiment, the transfer of image data starts after it is determined in step S710 that all image data has been received, but the present invention is not limited to this. For example, the transferred image data may be transferred as needed.
[0126] Furthermore, in the above-described embodiment, the scanning device 102 is configured to transmit the generated image data to the host computer 101, but this configuration is not limiting. For example, the scanning device 102 may transmit the generated image data by fax or email to a specified destination. The destination may be stored in the scanning device 102, and processing may be completed by the scanning device 102 after a scan instruction is issued. Alternatively, the scanning device 102 may acquire information stored in an address book of a personal computer, smartphone, or the like. Alternatively, the scanning device 102 may display a destination input screen / field to allow the user to set the destination.
[0127] In this embodiment, the detailed setting screen 305b may further include a setting item for setting the data format of the image data to be output. This setting item sets the data format of the image data, such as JPEG or PDF, and this setting value is also included in the scan instruction command generated in S614. This allows the user to specify the data format of the image data to be output.
[0128] In the above-described embodiment, the scanning device 102 transmits each of the two sets of image data generated in the scanning process of S616 to the host computer 101. However, this configuration is not limiting. For example, the scanning device 102 may transmit a single image file containing the two sets of image data generated in the scanning process of S616 to the host computer 101. For example, if the user sets the data format of the image data to "JPEG" on the detailed setting screen 305b, the scanning device 102 performs the scanning process of S616 in accordance with a scan instruction command including this setting value. The scanning device 102 transmits each of the two sets of image data in JPEG format generated in the scanning process to the host computer 101. On the other hand, if the user sets the data format of the image data to "PDF" on the detailed setting screen 305b, the scanning device 102 performs the scanning process of S616 in accordance with a scan instruction command including this setting value. The scanning device 102 transmits a single image file in PDF format containing the two sets of image data generated in the scanning process to the host computer 101. The file name of this image file does not include a predetermined character string that can identify which image data is the image data of the previous page, as described above, but includes, for example, the date and time of creation at the end.With this configuration, when scanning a double-page spread document, it is possible to provide the user with a single image file that includes image data of the left page and image data of the right page.
[0129] The page-continuous copy function is used when scanning magazines or books, and typically uses a platen. For this reason, if "feeder" is selected instead of "platen" when specifying the scan destination, control 308b and list 309b for configuring settings related to the page-continuous copy function may be controlled so that they cannot be selected. In this way, if settings for other functions that are inconsistent with the page-continuous copy function are configured, control is performed to restrict acceptance of settings related to the page-continuous copy function. This makes it possible to prevent the generation of a scan instruction command that includes inconsistent setting information.
[0130] Next, a program, a communication system, an information processing device, and a control method for an information processing device according to a second embodiment will be described. The second embodiment is basically the same as the first embodiment in terms of configuration and operation, but differs from the first embodiment in that the scanning device 102 does not support the page continuous copy function. Therefore, a description of the overlapping configuration and operation will be omitted, and the following description will focus on the different configuration and operation.
[0131] In the first embodiment described above, the extended application 204 creates a scan instruction command including the setting values for the continuous page copy function, and the scanning device 102 executes the scan process according to this scan instruction command. However, there are cases where the scanning device does not support the continuous page copy function in the first place. In such cases, the user cannot use the continuous page copy function.
[0132] Therefore, in the second embodiment, the extension application 204 determines whether the scanning device 102 supports the page continuous copy function based on the capability information of the scanning device 102. If the scanning device supports the page continuous copy function, the extension application 204 creates a scan instruction command including the setting values of the page continuous copy function specified by the user and sends this scan instruction command to the scanning device 102. On the other hand, if the scanning device 102 does not support the page continuous copy function, the extension application 204 creates a scan instruction command that does not include the setting values of the page continuous copy function and sends this scan instruction command to the scanning device 102. Thereafter, the extension application 204 acquires one image data generated by the scanning device 102 in accordance with this scan instruction command and divides this image data according to the setting values of the page continuous copy function specified by the user. This allows the user to use the page continuous copy function even if the scanning device 102 does not support the page continuous copy function.
[0133] The following will explain the differences from the first embodiment described above.
[0134] In the second embodiment, the scanning device 102 is assumed to be a scanning device that does not support the page continuous copy function. If the capability information acquired from the scanning device 102 does not include information on the page continuous copy function, the scanning function extension unit 206 of the extension application 204 performs processing different from that of the first embodiment described above. Specifically, if the acquired capability information does not include information on the page continuous copy function and the extension application 204 has a unit for dividing image data, the scanning function extension unit 206 adds information on the page continuous copy function to the scanning function information 203. The image data editing unit 207 performs image division and data order determination processing on the image data acquired from the scanning device 102 based on the setting value of the page continuous copy function set by the user. This will be described in detail later.
[0135] Fig. 9 is a flowchart showing the procedure of edit control processing executed by the scan function extension unit 206 of the second embodiment. Note that the edit control processing of Fig. 9 is similar to the edit control processing of Fig. 4 described above, and the following will particularly describe the differences from the edit control processing of Fig. 4 described above. Like the edit control processing of Fig. 4 described above, the edit control processing of Fig. 9 is also realized by the CPU 111 executing the program of the extension application 204 read from the external storage device 114 to the RAM 113. Like the edit control processing of Fig. 4 described above, the edit control processing of Fig. 9 is also executed, for example, when the extension application 204 is started.
[0136] 9, first, the above-described steps S401 to S403 are performed, and then the process of adding the scan function (S403 to S406) is performed. Here, since the scanning device 102 does not support the continuous page copy function, the process of adding the scan function (S403 to S406) does not add information about the continuous page copy function to the scan function information 203.
[0137] Next, in S901, the scan function extension unit 206 determines whether or not the extension application 204 includes a module for performing image data division processing. The module for performing image data division processing is, for example, the image data editing unit 207.
[0138] If it is determined in S901 that the extension application 204 has a module for performing image data division processing, the scan function extension unit 206 adds information about the continuous page copy function to the scan function information 203 (S902). After that, this process ends.
[0139] If it is determined in step S901 that the extension application 204 does not include a module that performs image data division processing, this processing ends.
[0140] In this way, the scan function extension unit 206 first adds functions / options that are not supported by the general-purpose scan software 202 but are supported by the scan device 102 and the extension application 204 to the scan function information 203. Furthermore, if the extension application 204 has a module that performs image data division processing, the scan function extension unit 206 adds information about the continuous page copy function to the scan function information 203. By using this scan function information 203, the display unit 119 displays the detailed setting screen 305b based on the scan capability generated by this scan function information 203. In this way, in the second embodiment, the setting items displayed on the detailed setting screen 305b are determined using the list of extended application supported functions (capability information of the extension application 204). As a result, even if the scan device 102 does not support the continuous page copy function, it is possible to accept the setting of the continuous page copy function from the user.
[0141] FIG. 10 is a sequence diagram showing the steps of scan control processing executed in a communication system according to the second embodiment. The scan control processing in FIG. 10 is similar to the scan control processing in FIG. 6 described above, and the following description will focus on differences from the scan control processing in FIG. 6 described above. The processing by the host computer 101 in FIG. 10 is implemented by the CPU 111 reading the scan application 201, the general-purpose scan software 202, and the extension application 204 from the external storage device 114 to the RAM 113 and executing them. The processing by the scanning device 102 in FIG. 10 is implemented by the CPU 191 of the scanning device 102 reading the programs stored in the ROM 192 or the external storage device 199 to the RAM 193 and executing them. This embodiment describes the scan control processing in a configuration in which the host computer 101 includes the extension application 204, as shown in FIG. 2(c) described above. The scan control processing in FIG. 10 assumes that the edit control processing in FIG. 9 described above has already been executed. By this editing control process, the option of the continuous page copying function, which is incompatible with the general-purpose scan software 202 and the scan device 102 but is supported by the extension application 204, is added to the scan function information 203.
[0142] In Fig. 10, first, the above-mentioned steps S601 to S613 are performed. Next, in S1001, the extended application 204 creates a read instruction command. Details of creating the read instruction command will be explained with reference to the flowchart in Fig. 11. Next, the above-mentioned steps S615 to S617 are performed.
[0143] Next, in S1002, the extended application 204 uses the image data editing unit 207 to edit the image data received from the scanning device 102. Details of editing the image data received from the scanning device 102 will be explained with reference to the flowchart in Fig. 11. Thereafter, the above-mentioned steps S618 to S621 are performed, and this processing ends.
[0144] Next, a description will be given of the scan instruction command generation process executed by the extension application 204 according to the second embodiment. This scan instruction command generation process includes the processes of S606, S607, S608, S609, S1001, S615, S1002, and S618 described above.
[0145] Fig. 11 is a flowchart showing the procedure of a scan instruction command generation process executed by the extension application 204 of the second embodiment. Note that the scan instruction command generation process of Fig. 11 is similar to the scan instruction command generation process of Fig. 7 described above, and the following will particularly describe the differences from the scan instruction command generation process of Fig. 7 described above. Note that the scan instruction command generation process of Fig. 11, like the scan instruction command generation process of Fig. 7 described above, is also realized by the CPU 111 executing the program of the extension application 204 read from the external storage device 114 to the RAM 113.
[0146] 11, first, the above-described steps S701 to S707 are performed. When a scan instruction is received (YES in S707), the extension application 204 acquires the capability information of the scan device 102 from the shared information 208. If the capability information of the scan device 102 is not available, the scan function extension unit 206 of the extension application 204 may request the capability information from the scan device 102 and store it in the shared information 208.
[0147] Next, in S1101, the extension application 204 determines whether or not the scan setting information includes setting values for scan functions that the scan device 102 does not support, based on the acquired capability information.
[0148] If it is determined in S1101 that the scan setting information does not include setting values for scan functions that are not supported by the scan device 102, the process proceeds to S708, and then to S709.
[0149] If it is determined in S1101 that the scan setting information contains setting values for functions not supported by the scanning device 102, the process proceeds to S1102. In S1102, the extension application 204 creates a scan instruction command that does not include setting values for scan functions not supported by the scanning device 102. In this embodiment, the scan instruction command created in S1102 does not include setting values for a continuous page copy function not supported by the scanning device 102. Next, the process proceeds to S709 described above, and the created scan instruction command is sent to the scanning device 102. Next, the process proceeds to S710. When all image data has been received from the scanning device 102 (YES in S710), the process proceeds to S1103.
[0150] In S1103, the extension application 204 determines whether the scan setting information includes a setting value for a scan function that requires editing by the image data editing unit 207. The setting value for a scan function that requires editing by the image data editing unit 207 is, for example, a setting value for a continuous page copy function.
[0151] If it is determined in S1103 that the scan setting information does not include any setting values for scan functions that require editing by the image data editing unit 207, the process proceeds to S711. In S711, the image data received from the scanning device 102 is sent directly to the general-purpose scan software 202. Thereafter, the process ends.
[0152] If it is determined in S1103 that the scan setting information contains setting values for scan functions that require editing by the image data editing unit 207, the process proceeds to S1104.
[0153] In S1104, the extended application 204 uses the image data editing unit 207 to edit the image data received from the scanning device 102 based on the setting value of the continuous page copy function set in S703. In this embodiment, the image data editing unit 207 divides the image data received from the scanning device 102 into two pieces of image data, specifically, image data for the left page and image data for the right page. Furthermore, if the setting value of the continuous page copy function is "left-opening," the image data editing unit 207 adds file information such that the image data for the left page becomes the first image data and the image data for the right page becomes the second image data. On the other hand, if the setting value of the continuous page copy function is "right-opening," the image data editing unit 207 adds file information such that the image data for the right page becomes the first image data and the image data for the left page becomes the second image data. Thereafter, this process proceeds to S711, where the image data divided in S1104 is sent to the general-purpose scan software 202. Thereafter, this process ends.
[0154] In the second embodiment described above, if it is determined that the scanning device 102 does not support the page continuous copy function, a scan instruction command that does not include the setting value for the page continuous copy function set on the detailed setting screen 305b is sent to the scanning device 102. In addition, an editing process is performed in which one image data generated by the scanning process executed by the scanning device 102 in accordance with the scan instruction command is divided into multiple image data. This allows the user to use the page continuous copy function even if the scanning device 102 does not support the page continuous copy function.
[0155] Note that, in the present embodiment, a configuration has been described in which a scan instruction command that does not include a setting value for a continuous page copy function that the scan device 102 does not support is transmitted to the scan device 102, but this configuration is not limited to this. Even if the scan device 102 receives a scan instruction command that includes a setting value for a scan function that the scan device 102 does not support, the scan device 102 will not be able to interpret the setting value for the scan function and will not use the scan function in the scan process. In other words, even if the scan device 102 receives a scan instruction command that includes a setting value for the scan function, the scan device 102 will execute a scan process equivalent to the scan process corresponding to the scan instruction command that does not include the setting value for the scan function. For this reason, the scan device 102 may be configured to receive a scan instruction command that includes a setting value for a continuous page copy function that the scan device 102 does not support.
[0156] Next, a program, a communication system, an information processing device, and a control method for an information processing device according to a third embodiment will be described. The third embodiment is basically the same as the first embodiment in terms of configuration and operation, but differs from the first embodiment in that the extension application 204 edits the scan instruction command created by the general-purpose scan software 202. Therefore, a description of the overlapping configuration and operation will be omitted, and the following description will focus on the different configuration and operation.
[0157] FIG. 12 is a sequence diagram illustrating the steps of scan control processing executed in the communication system of the third embodiment. The scan control processing in FIG. 12 is similar to the scan control processing in FIG. 6 described above, and the following description focuses on differences from the scan control processing in FIG. 6 described above. The processing by the host computer 101 in FIG. 12 is implemented by the CPU 111 reading the scan application 201, general-purpose scan software 202, and extension application 204 programs from the external storage device 114 to the RAM 113 and executing them. The processing by the scanning device 102 in FIG. 12 is implemented by the CPU 191 of the scanning device 102 reading the programs stored in the ROM 192 or the external storage device 199 to the RAM 193 and executing them. The scan control processing in FIG. 12 will also be described for a configuration in which the host computer 101 includes the extension application 204, as shown in FIG. 2(c) described above. The scan control processing in FIG. 12 also assumes that the edit control processing in FIG. 4 described above has already been executed. This editing control process adds to the scan function information 203 an option for a scan function (for example, a continuous page copy function) that is not supported by the general-purpose scan software 202 but is supported by the scan device 102 and the extension application 204.
[0158] 12, the above-mentioned steps S601 to S612 are performed. Next, in step S1201, the general-purpose scan software 202 creates a scan instruction command. Note that the scan instruction command created in step S1201 does not include setting values for scan functions that the general-purpose scan software 202 does not support, such as a continuous page copy function.
[0159] Next, in S1202, the general-purpose scan software 202 sends the created scan instruction command to the extension application 204.
[0160] Next, in S1203, the extension application 204 edits the received scan instruction command. Specifically, the extension application 204 adds instructions for scan functions not supported by the general-purpose scan software 202 to the received scan instruction command or changes existing instructions. Here, the scan instruction command created by the general-purpose scan software 202 in S1201 does not include the setting value for the continuous page copy function set on the advanced settings screen 305b. Therefore, in S1203, the setting value for the continuous page copy function is added to the received scan instruction command. Hereinafter, the scan instruction command obtained in S1203 will be referred to as a function-extended scan instruction command.
[0161] Next, in S1204, the extension application 204 sends the function-extended scan instruction command to the general-purpose scan software 202.
[0162] In S1205, the general-purpose scan software 202 sends the function-enhanced scan instruction command to the scan device 102. Next, the above-described S616 is performed, and the scan device 102 interprets the function-enhanced scan instruction command and executes the scan process.
[0163] Next, in S1206, the scanning device 102 transmits the generated image data to the general-purpose scanning software 202. Thereafter, the above-described steps S619 to S621 are performed, and this processing ends.
[0164] In the third embodiment described above, the extension application 204 adds the setting values of the continuous page copy function set on the detailed setting screen 305b to the scan instruction command created by the general-purpose scan software 202. This allows the scanning device 102 to execute the scan process using the setting values of the continuous page copy function set on the detailed setting screen 305b, thereby providing the user with the image data divided by the scan process.
[0165] Next, a program, a communication system, an information processing device, and a control method for an information processing device according to a fourth embodiment will be described. The fourth embodiment is basically the same in configuration and operation as the first embodiment described above. However, the fourth embodiment differs from the first embodiment in that the extension application 204 edits the scan instruction command created by the general-purpose scan software 202 and the scanning device 102 does not support the continuous page copy function. Therefore, a description of the overlapping configuration and operation will be omitted, and the following description will focus on the different configuration and operation.
[0166] FIG. 13 is a sequence diagram illustrating the steps of a scan control process executed in a communication system according to a fourth embodiment. In the fourth embodiment, it is assumed that the scanning device 102 does not support the continuous page copy function. The scan control process in FIG. 13 is similar to the scan control processes in FIGS. 10 and 12, and the following describes differences from the scan control processes in FIGS. 10 and 12. The process by the host computer 101 in FIG. 13 is implemented by the CPU 111 loading the scan application 201, general-purpose scanning software 202, and extension application 204 from the external storage device 114 to the RAM 113 and executing them. The process by the scanning device 102 in FIG. 13 is implemented by the CPU 191 of the scanning device 102 loading the programs stored in the ROM 192 or the external storage device 199 to the RAM 193 and executing them. The scan control process in FIG. 13 will also be described for a configuration in which the host computer 101 includes the extension application 204, as shown in FIG. 2(c). 13, it is assumed that the edit control process of Fig. 9 has already been executed. This edit control process adds to the scan function information 203 an option for a continuous page copy function that is incompatible with the general-purpose scan software 202 and the scan device 102 but is supported by the extension application 204.
[0167] 13, first, the above-described steps S601 to S612 are performed, followed by the above-described steps S1201 to S1205, S616, and S1206. In the fourth embodiment, the scan instruction command obtained by editing in S1203 is described as not including the setting values of the continuous page copy function that is not supported by the scan device 102 and is supported by the extension application 204. However, this is not limited to this. If the scan device 102 does not support the continuous page copy function, even if the scan device 102 acquires a scan instruction command including the setting values of the continuous page copy function, the scan device 102 cannot interpret the setting values of the continuous page copy function. The scan device 102 performs the scan process using setting values other than the setting values of the continuous page copy function among the setting values included in the scan instruction command. In this way, even if the scan device 102 that does not support the continuous page copy function acquires a scan instruction command including the setting values of the continuous page copy function, the scan process is performed in the same way as if the scan instruction command not including the setting values of the continuous page copy function was acquired. For this reason, in the fourth embodiment, the scan instruction command obtained by editing in S1203 may include the setting value of the continuous page copying function.
[0168] Next, in S1301 , the general-purpose scan software 202 transmits the image data received from the scanning device 102 to the extension application 204 .
[0169] Next, in S1302, similar to S1002 described above, the extended application 204 uses the image data editing unit 207 to edit the image data received from the scanning device 102. For example, the image data editing unit 207 divides the image data received from the scanning device 102 into two pieces of image data, specifically, image data for the left page and image data for the right page.
[0170] Next, in S1303, the extension application 204 transmits the image data obtained in S1302 to the general-purpose scan software 202. After that, the above-mentioned steps S619 to S621 are performed.
[0171] Even with the configuration of the fourth embodiment, the user can utilize the continuous page copying function.
[0172] Next, a program, a communication system, an information processing device, and a control method for an information processing device according to a fifth embodiment will be described. The fifth embodiment is basically the same as the first embodiment in terms of configuration and operation, but differs from the first embodiment in that the standard scan instruction command conforming to the standard protocol is not extended, but an extended scan instruction command is separately created. Therefore, a description of the overlapping configuration and operation will be omitted, and the following description will focus on the different configuration and operation.
[0173] FIG. 14 is a sequence diagram illustrating the steps of scan control processing executed in the communication system of the fifth embodiment. The scan control processing in FIG. 14 is similar to the scan control processing in FIG. 6 described above, and the following description focuses on differences from the scan control processing in FIG. 6 described above. The processing by the host computer 101 in FIG. 14 is implemented by the CPU 111 reading the scan application 201, the general-purpose scan software 202, and the extension application 204 from the external storage device 114 to the RAM 113 and executing them. The processing by the scanning device 102 in FIG. 14 is implemented by the CPU 191 of the scanning device 102 reading the programs stored in the ROM 192 or the external storage device 199 to the RAM 193 and executing them. The scan control processing in FIG. 14 will also be described for a configuration in which the host computer 101 includes the extension application 204, as shown in FIG. 2(c) described above. The scan control processing in FIG. 14 also assumes that the edit control processing in FIG. 4 described above has already been executed. This editing control process adds to the scan function information 203 an option for a scan function (for example, a continuous page copy function) that is not supported by the general-purpose scan software 202 but is supported by the scan device 102 and the extension application 204.
[0174] 14, first, the above-described steps S601 to S613 are performed. Next, in S1401, the extension application 204 creates a standard scan instruction command that complies with the standard protocol. Note that the standard scan instruction command created in S1401 does not record scan functions that are not supported by the standard protocol. For example, if the continuous page copy function is not supported by the standard protocol, the standard scan instruction command does not include the setting value of the continuous page copy function set on the advanced settings screen 305b.
[0175] Next, in S1402, the extension application 204 creates an extended scan command to implement a scan function that is not supported by the standard protocol. The extended scan command includes, for example, setting values for a scan function that is not supported by the standard protocol but is supported by the extension application 204. For example, if the continuous page copy function is not supported by the standard protocol, the extended scan command includes setting values for the continuous page copy function that are set on the detailed settings screen 305b.
[0176] Next, in S1403, the extension application 204 transmits a standard scan instruction command to the scanning device 102. Also, in S1404, the extension application 204 transmits an extended scan instruction command to the scanning device 102.
[0177] Next, in S1405, the scanning device 102 interprets the received standard scan instruction command and extended scan instruction command, respectively, and executes the scan process. After that, the above-mentioned steps S617 to S621 are performed, and this process ends.
[0178] Here, a description will be given of the scan instruction command generation process executed by the extension application 204 in the fifth embodiment. This scan instruction command generation process includes the processes of S606, S607, S608, S609, S1401, S1402, S1403, S1404, and S618 described above.
[0179] Fig. 15 is a flowchart showing the procedure of a scan instruction command generation process executed by the extension application 204 of the fifth embodiment. Note that the scan instruction command generation process of Fig. 15 is similar to the scan instruction command generation process of Fig. 7 described above, and the following will particularly describe the differences from the scan instruction command generation process of Fig. 7 described above. The scan instruction command generation process of Fig. 15, like the scan instruction command generation process of Fig. 7 described above, is also realized by the CPU 111 executing the program of the extension application 204 read from the external storage device 114 to the RAM 113.
[0180] 15, the above-described steps S701 to S707 are performed. Upon receiving a scan instruction (YES in step S707), the extension application 204 generates a standard scan instruction command conforming to the standard protocol in step S1501 (see, for example, step S1401 described above). Next, in step S1502, the extension application 204 generates an extended scan instruction command for implementing a scan function not supported by the standard protocol (see, for example, step S1402 described above). Next, in step S1503, the extension application 204 transmits the standard scan instruction command generated in step S1501 to the scanning device 102 (see, for example, step S1403 described above). Next, in step S1504, the extension application 204 transmits the extended scan instruction command generated in step S1502 to the scanning device 102 (see, for example, step S1404 described above). Thereafter, the above-described steps S710 to S711 are performed, and the process ends.
[0181] In the fifth embodiment described above, a standard scan instruction command conforming to the standard protocol and an extended scan instruction command for implementing a scan function not supported by the standard protocol are both transmitted to the scan device 102. This allows the settings of the scan function not supported by the standard protocol to be reflected in the scan instruction command.
[0182] The present invention can also be realized by supplying a program that realizes one or more functions of the above-described embodiments to a system or device via a network or a storage medium, and having one or more processors in the computer of the system or device read and execute the program.The present invention can also be realized by a circuit (e.g., ASIC) that realizes one or more functions.
[0183] The disclosure of this embodiment includes the following configurations and methods. (Configuration 1) A program that supports a general-purpose program that can be used commonly with scanners from multiple manufacturers, characterized in that the program causes an information processing device in which the program is installed to execute the following steps: displaying a setting screen on a display means of the information processing device that accepts settings for a specified scan function that divides an image of a single scanned document into multiple image data and outputs the divided image data; and outputting a command to cause the scanner to execute a scan process using the settings accepted on the setting screen. (Configuration 2) The program according to configuration 1, wherein a setting value for determining the page order of the divided image data is set by the user on the setting screen. (Configuration 3) The program described in Configuration 2 further causes an information processing device in which the program is installed to execute a step of receiving from the scanner a plurality of image data generated by the scanning process, and the file names of the received plurality of image data are each assigned a number corresponding to the page order determined according to the setting value. (Configuration 4) A program described in any one of configurations 1 to 3, further comprising causing an information processing device in which the program is installed to execute a step of receiving from the scanner one image file containing multiple image data generated by the scanning process, wherein the file name of the received image file is given the date and time of generation of the image file. (Configuration 5) The program according to any one of configurations 1 to 4, wherein in the scanning process using the predetermined scanning function, one document is read multiple times. (Configuration 6) The program described in claim 1 or 2 further causes an information processing device in which the program is installed to execute a step of determining whether a scanner designated by a user supports the specified scan function, and a step of performing an editing process to divide acquired image data into multiple image data, and if it is determined that the scanner designated by the user does not support the specified scan function, the step of performing the editing process includes an editing process of dividing one image data generated by the scan process executed by the scanner designated by the user in accordance with the command into multiple image data. (Configuration 7) The program described in Configuration 6, characterized in that if it is determined that the scanner specified by the user does not support the specified scan function, in the output process, a command that does not include the settings accepted on the settings screen is output. (Configuration 8) A program described in any one of configurations 1 to 7, characterized in that when an information processing device in which the program is installed is configured with another function that is inconsistent with the specified scanning function, the program further executes a control process that restricts acceptance of settings for the specified scanning function. (Configuration 9) A program described in any one of configurations 1 to 8, characterized in that the program further causes an information processing device in which the program is installed to execute a process of creating a command to cause a scanner to execute a scan process using the settings accepted on the setting screen. (Configuration 10) The program according to configuration 9, wherein the command is a command created by extending the function of a command conforming to a standard protocol. (Configuration 11) The program according to configuration 9, wherein the command is a command that conforms to a standard protocol and is converted into a command system unique to the program. (Configuration 12) The program according to configuration 9, characterized in that in the creating process, a first command conforming to a standard protocol and a second command including the settings accepted on the setting screen are output. (Configuration 13) A program described in any one of configurations 1 to 8, characterized in that the information processing device in which the program is installed further executes a process of editing a command created by the general-purpose program to cause a scanner to execute a scan process, and in the editing process, settings accepted on the setting screen are added to the command created by the general-purpose program to cause a scanner to execute a scan process. (Configuration 14) A program described in any one of configurations 1 to 13, characterized in that the setting items displayed on the setting screen are determined using scanner capability information specified by the user. (Configuration 15) A program described in any one of configurations 1 to 13, characterized in that the setting items displayed on the setting screen are determined using capability information of an application that operates when the program is executed. (Configuration 16) The program according to any one of configurations 1 to 15, wherein the setting screen includes an item for setting a data format of image data. (Configuration 17) A program described in any one of configurations 1 to 16, characterized in that the program further causes an information processing device in which the program is installed to execute the steps of receiving image data generated by the scanning process from the scanner and displaying the image data on a display means of the information processing device. [Explanation of symbols]
[0184] 101 host computer 102 Scanning Device 111 CPU 119 Display section 120 NETIF 202 General-purpose scanning software 204 Extended Applications 205 Scan Setting Screen Expansion Unit 206 Scan Function Expansion Unit 305a, 305b detailed settings screen 308b Control 309b List
Claims
1. A program that supports a general-purpose program that can be used in common with scanners from multiple manufacturers, In an information processing device in which the program is installed, a step of displaying a setting screen on a display means of the information processing device to accept settings for a predetermined scan function for dividing an image of one read document into a plurality of image data and outputting the divided image data; and outputting a command to cause the scanner to execute a scan process according to the settings received on the setting screen.
2. 2. The program according to claim 1, wherein a setting value for determining the page order of the divided image data is set by the user on the setting screen.
3. In an information processing device in which the program is installed, receiving, from the scanner, a plurality of image data sets generated by the scanning process; 3. The program according to claim 2, wherein the file names of the received image data are assigned numbers corresponding to the page order determined according to the setting value.
4. In an information processing device in which the program is installed, receiving, from the scanner, an image file containing a plurality of image data generated by the scanning process; 2. The program according to claim 1, wherein the file name of the received image file is given a date and time when the image file was created.
5. 2. The program according to claim 1, wherein the scanning process using the predetermined scanning function involves reading one document multiple times.
6. In an information processing device in which the program is installed, determining whether a scanner designated by a user supports the predetermined scanning function; and performing an editing process of dividing the acquired image data into a plurality of image data. The program according to claim 1, characterized in that, when it is determined that the scanner designated by the user does not support the specified scanning function, the step of performing the editing process includes performing an editing process in which one image data generated by the scanning process executed by the scanner designated by the user in accordance with the command is divided into multiple image data.
7. The program according to claim 6, characterized in that, if it is determined that the scanner specified by the user does not support the specified scan function, in the outputting step, a command that does not include the settings accepted on the setting screen is output.
8. In an information processing device in which the program is installed, The program according to claim 1, further comprising a step of controlling the acceptance of settings for the specified scan function when settings for other functions that are inconsistent with the specified scan function are made.
9. In an information processing device in which the program is installed, 2. The program according to claim 1, further comprising the step of creating a command for causing a scanner to execute a scan process using the settings received on the setting screen.
10. 10. The program according to claim 9, wherein the command is a command created by extending the function of a command conforming to a standard protocol.
11. 10. The program according to claim 9, wherein the command is a command obtained by converting a command conforming to a standard protocol into a command system unique to the program.
12. 10. The program according to claim 9, wherein the creating step outputs a first command conforming to a standard protocol and a second command including the settings accepted on the setting screen.
13. In an information processing device in which the program is installed, further executing a step of editing the command generated by the general-purpose program for causing the scanner to execute a scan process; The program according to claim 1, wherein in the editing step, the settings received on the setting screen are added to a command created by the general-purpose program for causing a scanner to execute a scan process.
14. 2. The program according to claim 1, wherein the setting items displayed on the setting screen are determined using scanner capability information designated by the user.
15. 2. The program according to claim 1, wherein the setting items displayed on the setting screen are determined using capability information of an application that runs when the program is executed.
16. 2. The program according to claim 1, wherein the setting screen includes an item for setting a data format of the image data.
17. In an information processing device in which the program is installed, receiving image data generated by the scanning process from the scanner; 2. The program according to claim 1, further comprising the step of displaying the image data on a display means of the information processing apparatus.
18. A method for controlling an information processing apparatus in which a program supporting a general-purpose program that can be commonly used for scanners of a plurality of manufacturers is installed, comprising: a step of displaying a setting screen on a display means of the information processing device to accept settings for a predetermined scan function for dividing an image of one read document into a plurality of image data and outputting the divided image data; and outputting a command for causing the scanner to execute a scan process according to the settings received on the setting screen.
19. An information processing device in which a program supporting a general-purpose program that can be commonly used for scanners of multiple manufacturers is installed, means for displaying a setting screen for accepting settings for a predetermined scan function for dividing an image of one scanned document into a plurality of image data and outputting the divided image data; and means for outputting a command for causing the scanner to execute a scan process according to the settings received on the setting screen.
Citation Information
Patent Citations
Server system and application
JP2021033526A