Application program, storage medium, control method, and information processing device
The application program allows users to set and execute reading conditions for scanning devices, overcoming limitations of standard drivers by providing a setting acceptance screen and ensuring device compliance across multiple manufacturers.
Patent Information
- Application Number
- JP2024042612
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2024-03-18
- Publication Date
- 2025-10-01
AI Technical Summary
Standard drivers for scanning devices do not allow users to set reading conditions such as the reading size for an image, limiting functionality despite supporting multiple vendors.
An application program that supports software programs for image processing devices from multiple manufacturers, enabling the display of a setting acceptance screen for reading conditions and allowing the device to read images under those conditions.
Enables users to set and execute reading conditions like reading size for images, enhancing the functionality of scanning devices beyond what standard drivers can provide.
Smart Images

Figure 2025142957000001_ABST
Abstract
Description
[Technical Field]
[0001] The present invention relates to an application program, a storage medium, a control method, and an information processing device. [Background technology]
[0002] A scanning device (scanner) that reads images, i.e., scans, is communicatively connected to a host computer (information processing device) that can process information exchanged with the scanning device. For example, a scan driver installed on the host computer by the scanning device is used as control software for controlling the scanning device. This scan driver allows the host computer to issue scan instructions to the scanning device. An operating system (hereinafter referred to as "OS"), which is basic software, is pre-installed on the host computer. The scan driver is configured according to specifications defined by the OS and can be invoked and run by the OS. Furthermore, such scan drivers differ depending on the vendor that supplies the scanning device; that is, they are model-specific scan drivers suited to each scanning device.
[0003] In recent years, Windows® has been providing standard class drivers (hereinafter sometimes referred to as "standard drivers") that can be used across scanning devices supplied by multiple different vendors. Such standard drivers are pre-installed in the OS. Any scanning device can be connected to a host computer with an OS that incorporates the standard driver, allowing the standard driver to be used. This eliminates the need to install a model-specific scan driver. Furthermore, the standard driver is expected to be configured to specify the scanning functions of the scanning device based on scan function information generated based on information acquired from the scanning device. This allows scanning functions to be specified for each scanning device using a single standard driver.
[0004] Because standard drivers can be used in common with scanning devices from multiple different vendors, it may be impossible to execute some of the functions of a scanning device from a specific vendor, for example. Patent Document 1 discloses a program that expands the printing functions of a print service that can be used universally regardless of the model or vendor of the image forming device. This allows users to execute printing functions that cannot be executed with only the universal print service by operating a print setting screen tailored to each individual image forming device for each model and vendor. [Prior art documents] [Patent documents]
[0005] [Patent Document 1] Patent Publication No. 2021-033526 Summary of the Invention [Problem to be solved by the invention]
[0006] However, with the standard driver, there is a problem in that even if one wishes to set reading conditions such as the reading size for an image to be scanned by the scanning device, it is not possible to make such settings.
[0007] The present invention has been made in view of the above-mentioned problems, and aims to provide an application program, a storage medium, a control method, and an information processing device that enable setting of reading conditions such as reading size for an image to be read by an image processing device. [Means for solving the problem]
[0008] In order to achieve the above object, the application program of the present invention is an application program that supports software programs that can be used in common with image processing devices from multiple manufacturers, and is characterized in that it is capable of causing a computer to execute a display control process that displays a setting acceptance screen that accepts settings of reading conditions for an image to be read by the image processing device, and a reading process that causes the image processing device to read the image under the reading conditions accepted on the setting acceptance screen. [Effects of the Invention]
[0009] According to the present invention, it is possible to set reading conditions such as reading size for an image to be read by an image processing apparatus. [Brief explanation of the drawings]
[0010] [Figure 1] 1 is a block diagram showing a hardware configuration of a scan system according to a first embodiment. [Figure 2] FIG. 2 is a block diagram showing the software configuration of the scan system. [Figure 3] FIG. 10 is a diagram showing an example of a screen displayed on a display unit of the scanning system. [Figure 4] 10 is a flowchart showing a process in which the scan function extension unit edits scan function information. [Figure 5] FIG. 10 is a diagram illustrating an example of a list of scan information. [Figure 6] FIG. 10 is a sequence diagram showing the process executed between the scan application, the general-purpose scan software, the extension application, and the scan device after the scan application receives scan settings. [Figure 7] 10 is a flowchart illustrating a process executed by an extension application. [Figure 8] 10 is a flowchart showing a process executed by the scanning device. [Figure 9]10 is a flowchart showing a process in which a scan function extension unit edits scan function information in the second embodiment. [Figure 10] FIG. 10 is a diagram showing an example of a screen displayed on a display unit of the scanning system. [Figure 11] FIG. 10 is a sequence diagram showing the process executed between the scan application, the general-purpose scan software, the extension application, and the scan device after the scan application receives scan settings. [Figure 12] 10 is a flowchart illustrating a process executed by an extension application. [Figure 13] FIG. 11 is a diagram relating to scan information in the third embodiment. [Figure 14] 10 is a flowchart showing a process in which the scan function extension unit edits scan function information. [Figure 15] FIG. 10 is a diagram relating to scan information (modification example). [Figure 16] 10 is a flowchart illustrating a process executed by an extension application. [Figure 17] FIG. 13 is a diagram relating to scan information in the fourth embodiment. [Figure 18] FIG. 10 is a diagram relating to scan information (variation example 1). [Figure 19] FIG. 10 is a diagram relating to scan information (modification example 2). [Figure 20] FIG. 13 is a diagram relating to scan information in the fifth embodiment. [Figure 21] 10 is a flowchart showing a process in which the scan function extension unit edits scan function information. [Figure 22] 10 is a flowchart illustrating a process executed by an extension application. [Figure 23] FIG. 20 is a diagram relating to scan information in the sixth embodiment. [Figure 24] FIG. 20 is a diagram relating to scan information in the seventh embodiment. [Figure 25] FIG. 13 is a diagram showing an example of a screen displayed on a display unit of the scanning system according to the eighth embodiment. DETAILED DESCRIPTION OF THE INVENTION
[0011] Each embodiment of the present invention will be described in detail below with reference to the drawings. However, the configurations described in each of the following embodiments are merely examples, and the scope of the present invention is not limited to the configurations described in each embodiment. For example, each component constituting the present invention can be replaced with any configuration that can perform the same function. Also, any component may be added. Furthermore, any two or more configurations (features) of each embodiment can be combined.
[0012] <<First Embodiment>> The first embodiment will be described below with reference to FIGS.
[0013] <Scan system hardware configuration> Fig. 1 is a block diagram showing the hardware configuration of a scanning system according to a first embodiment. As shown in Fig. 1, the scanning system 1000 includes a host computer 101, a scanning device (scanner) 102, which is an example of an image processing device, a pointing device 117, a keyboard 118, and a display unit 119, all of which are communicatively connected to one another. The host computer 101 is an information processing device and includes an input interface 110, a CPU 111, a ROM 112, a RAM 113, an external storage device (storage medium) 114, an output interface 115, an input / output interface 116, and a NET interface 120. The host computer 101 may be, for example, a desktop personal computer, but is not limited thereto. For example, a notebook personal computer, a tablet terminal, a smartphone, or the like may also be used.
[0014] The CPU 111 is a computer that executes programs stored in the ROM 112 and the external storage device 114. In this embodiment, the CPU 111 executes functions and processes of the host computer 101 by performing processing in accordance with the program code stored in the ROM 112. An initialization program is stored in the ROM 112. The external storage device 114 stores application programs, an operating system (OS), print data generation software, and various other data. In this embodiment, the host computer 101 is equipped with Microsoft Windows 11 as the OS. The external storage device 114 is not particularly limited, and may be, for example, a hard disk drive (HDD) or a solid state drive (SSD). The RAM 113 is used as a work memory when executing various programs stored in the external storage device 114, enabling the various programs to run within the host computer 101. A pointing device 117 and a keyboard 118 are connected to the input interface 110 as input devices. A display unit 119 serving as a display device is connected to the output interface 115. The display unit 119 displays, for example, a scan setting screen 300A and a detailed setting screen 300C, which will be described later. The NET interface 120 is a network interface that controls data transfer between the host computer 101 and external devices via a network. The scanning device 102 is connected to the input / output interface 116. This allows the host computer 101 to communicate with scanning devices 102 from multiple manufacturers, regardless of the manufacturer of the scanning device 102, i.e., allows information to be processed between the host computer 101 and the scanning device 102 from multiple manufacturers. The host computer 101 and the scanning device 102 may be connected by wire or wirelessly.
[0015] 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 NET interface 197, an input / output interface 198, and an external storage device 199. The CPU 191 is a computer that executes programs stored in the ROM 192 and the external storage device 199 and provides overall control of 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 operation unit 194 can issue various operational instructions to the scanning device 102. The reading unit 195 reads an image of a document. The printing unit 196 prints an image on a sheet based on image data generated by, for example, reading the image of the document with the reading unit 195. Note that the printing unit 196 may be omitted. The NETIF 197 is a network interface that controls data transfer between the scanning device 102 and external devices via a network. The input / output interface 198 is connected to the host computer 101. The image processing unit 190 receives, for example, image data generated by reading an image of a document in the reading unit 195. The image processing unit 190 then performs various editing processes on the image data.
[0016] The scanning device 102 is not particularly limited as long as it is an image processing device having an image reading function, i.e., a scanning function, and for example, a multi-function peripheral (MFP) or the like can be used. Furthermore, when a multi-function peripheral is used as the scanning device 102, the printing performed by the multi-function peripheral is electrophotographic printing in this embodiment, but is not limited to this and can also be inkjet printing, for example. Furthermore, in this embodiment, the host computer 101 and the scanning device 102 are configured as separate devices, but are not limited to this. For example, the host computer 101 and the scanning device 102 may be configured as an integrated device.
[0017] <Software-based scanning system configuration> FIG. 2 is a block diagram showing the software configuration of a scanning system. FIG. 2(a) shows a general configuration when an extension application (application program) 204 is not associated with the general-purpose scanning software (software program) 202 and the scanning device 102. FIG. 2(b) shows a configuration when the extension application 204 is associated with the general-purpose scanning software 202 and the scanning device 102. The general-purpose scanning software 202 is a general-purpose program that can be used commonly with scanning devices 102 from multiple manufacturers, for example, when scanning (reading images), and is pre-installed in the OS. The extension application 204 is a program that supports, i.e., assists, the general-purpose scanning software 202. In this embodiment, the extension application 204 is an extension program (a program that executes a control method) that can extend functions that the general-purpose scanning software 202 cannot execute for the scanning device 102, but is not limited to this. For example, the extension application 204 may be a program that improves the usability of functions that the general-purpose scanning software 202 can execute for the scanning device 102. The extension application 204 is stored, for example, together with the OS (general-purpose scan software 202) in the external storage device 114. As a result, the host computer 101 has the general-purpose scan software 202 and the extension application 204.
[0018] First, referring to FIG. 2(a), a configuration will be described for a case where the extension application 204 is not associated with the general-purpose scan software 202 and the scan device 102. The scan application 201 is software that imports content (image data) generated by scanning with the scan device 102. The scan application 201 is not particularly limited, and examples thereof include a document creation application and an image editing application. The scan application 201 issues a scan instruction to the OS upon receiving a scan request from, for example, a user. The scan instruction includes scan setting information for instructing the operation of the general-purpose scan software 202 and the scan device 102. To issue the scan instruction, the scan application 201 can display a scan setting screen 300A (see FIG. 3(a)) provided by any of the general-purpose scan software 202, the OS, and the scan application 201 on the display unit 119. Furthermore, by operating (pressing) a control 302 in the scan setting screen 300A, a detailed setting screen 300B (see FIG. 3(b)) or a detailed setting screen 300C (see FIG. 3(c)) can be displayed on the display unit 119. The scan setting screens 300A to 300C will be described later. The scan setting screen 300A includes setting items indicating configurable scan functions and control items indicating their setting values according to the capability information acquired by the general-purpose scan software 202, i.e., the information that can be set as scan settings. The "capability information" is information regarding the scanning capability of the scanning device 102. This capability information can also be used to determine whether information enabling the display of the detailed setting screen 300C is included. If it is determined that information enabling the display of the detailed setting screen 300C is included, the detailed setting screen 300C can be displayed. On the other hand, if it is determined that information enabling the display of the detailed setting screen 300C is not included, the detailed setting screen 300C is not displayed.
[0019] The scan function information 203 is data indicating scan functions, describing all configurable scan functions, 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. Specifically, the general-purpose scan software 202 acquires attribute data of the scan device 102 from the scan device 102. The general-purpose scan software 202 generates the scan function information 203 based on the attribute information in the attribute data. Note that when the scan function information 203 is dynamically generated in this manner, the scan function information 203 can be edited. The attribute data of the scan device 102 also includes attribute information indicating functions that can be specified by the scan device 102 (the capabilities of the scan device 102) and setting values related to the attribute information, which are stored in the RAM 113.
[0020] With this configuration, the general-purpose scanning software 202 allows the user to specify scan functions available in the scanning device 102 depending on the scanning device 102 connected to the host computer 101. This makes it possible to specify scan functions available in the scanning device 102 regardless of the scanning device 102, i.e., even when a scanning device 102 with different functions or a scanning device 102 developed by a different scanner manufacturer is connected. In this embodiment, the general-purpose scanning software 202 is a standard class driver that performs scanning based on a standard scanning protocol called Mopria. Specifically, the general-purpose scanning software 202 is not a specific scan driver specific to the model of the scanning device 102, but a standard class driver that can be commonly used by scanning devices 102 of various scanner manufacturers regardless of the scanner manufacturer. Furthermore, the general-purpose scanning software 202 acquires capability information of the scanning device 102 and generates scan function information 203 based on the acquired information.
[0021] Furthermore, the general-purpose scanning software 202 can be associated with an extension application 204. This allows the general-purpose scanning software 202 to execute functions not available in the general-purpose scanning software 202. For example, the general-purpose scanning software 202 cannot accept settings of scanning conditions, such as the document reading size, for the document (image) to be scanned by the scanning device 102. That is, the general-purpose scanning software 202 does not support setting of scanning conditions. This is because setting of scanning conditions is a function that is executed independently by the scanning device 102 manufactured by a specific scanner manufacturer. The extension application 204 can extend the general-purpose scanning software 202 to enable setting of scanning conditions that the general-purpose scanning software 202 cannot execute. In this embodiment, the general-purpose scanning software 202 cannot set scanning conditions, and the extension application 204 can extend the setting of those scanning conditions, but this is not limiting. For example, the general-purpose scanning software 202 may execute some of the scanning condition settings, and the extension application 204 may supplement the missing scanning condition settings to further expand the scope of execution.
[0022] Referring to FIG. 2(b), a case where an extension application 204 is associated with the general-purpose scan software 202 and the scan device 102 will be described. As shown in FIG. 2(b), unlike FIG. 2(a), an extension application 204 is added. That is, the host computer 101 has the scan application 201, the general-purpose scan software 202, the scan function information 203, and also the extension application 204. The extension application 204 is software for extending the functions of the general-purpose scan software 202 and is sometimes simply referred to as "scan software." Note that the extension application 204 is not pre-installed (not bundled) with the OS. Therefore, the extension application 204 is downloaded from a server (not shown) via the Internet by a user operating the host computer 101 and installed on the host computer 101. Alternatively, when the scan device 102 is connected to the host computer 101, the extension application 204 may be automatically installed on the host computer 101 based on this connection. Specifically, when the scanning device 102 is connected to the host computer 101, the OS acquires device identification information from the scanning device 102. The OS may download and install the extension application 204 corresponding to this device identification information from a server via the Internet. As a result, the host computer 101 stores the general-purpose scanning software 202 and the extension application 204 as separate control programs. Note that the general-purpose scanning software 202 and the extension application 204 may be updated and upgraded. In this case, the general-purpose scanning software 202 update process and the extension application 204 update process may be performed at the same time or at different times. Furthermore, the trigger for the host computer 101 to acquire the general-purpose scanning software 202 and the extension application 204 may be the same trigger or different triggers.Additionally, when the extension application 204 is installed, the OS associates the extension application 204 with the general-purpose scan software 202 and the scan device 102 .
[0023] As shown in FIG. 2B, the extension application 204 can exchange information (send and receive information) with the general-purpose scan software 202 and the scan device 102. That is, the extension application 204 is associated with the general-purpose scan software 202 and the scan device 102. In this embodiment, 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 accessed by each of the scan setting screen extension unit 205, the scan function extension unit 206, the image data editing unit 207, and the notification unit 209. The shared information 208 is a file saved in the external storage device 114 or information stored in the RAM 113. The extension application 204 can write and read the shared information 208 by using an API (Application Program Interface) provided by the OS.
[0024] The extended application 204 may terminate its entire operation upon completion of processing of each of the units from the scan setting screen extension unit 205 to the notification unit 209. In this case, the OS launches the extended application 204 each time it receives a processing execution request for each unit. The extended application 204 may also cancel processing of each of the units from the scan setting screen extension unit 205 to the notification unit 209 during that processing. In this case, the OS deletes the job being processed in the print queue. As described above, the scan application 201 issues a scan instruction to the OS upon receiving a print request from the user. The scan application 201 can also display a scan setting screen. In the configuration shown in FIG. 2(b), the scan application 201 can display a scan setting screen 300A (detailed setting screen 300C) provided by the scan setting screen extension unit 205 (extension application 204). The scan setting screen extension unit 205 can also save the detailed settings set by the user in the shared information 208.
[0025] The image data editing unit 207 acquires image data from the scanning device 102. After acquiring the image data, the image data editing unit 207 can also edit the image data. The image data editing unit 207 also acquires detailed setting information from the shared information 208 and performs image editing on the image data in accordance with the detailed setting information. The extension application 204 may also perform image editing on the image data acquired by the general-purpose scanning software 202 in accordance with the detailed setting information. Even in the configuration of FIG. 2(b), there are cases where the setting of scanning conditions is not executed. In this case, the general-purpose scanning software 202 may send a scan request instruction to the scanning device 102 without going through the extension application 204.
[0026] The scan function extension unit 206 can edit the scan function information 203 generated by the general-purpose scan software 202 or the OS. This allows functions provided by the extension application 204 to be added. It can also add functions that can be executed by the scan device 102 but not by the general-purpose scan software 202 (e.g., a scan condition setting function), or add exclusive relationships between scan function setting values. The OS starts 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 may also start the scan function extension unit 206 at other times (e.g., when the OS starts up). Even if scan-related functions are later expanded through such startup, the scan function extension unit 206 can detect the expanded function and add it to the scan function information 203.
[0027] The notification unit 209 can notify the user when an error occurs 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 the occurrence of this error. The OS uses a notification function called a toast notification, which is one of the OS's functions, to display a message on the display unit 119 indicating the occurrence of the reading jam error, which is the detection result of the general-purpose scanning software 202. When the user operates the toast notification, the OS calls the notification unit 209, and a user interface screen (UI screen) of the notification unit 209 is displayed. The user interface screen can display, for example, a detailed message about the reading jam error, a method for clearing the jam, etc.
[0028] As described above, in this embodiment, the extended application 204 can be said to have the following four functions. The first function is to display a setting screen. This function is executed by the scan setting screen extension unit 205. The second function is to edit image data according to detailed setting information. This function is executed by the image data editing unit 207. The third function is to extend the functions that can be specified by the image data generation software. This function is executed by the scan function extension unit 206. The fourth function is to display a screen in response to the occurrence of an error in the scanning device 102. This function is executed by the notification unit 209. Note that the configuration of the extended application 204 is not limited to a configuration having these four functions, and it is preferable that the extended application 204 have at least one of these functions, and it may also have other functions.
[0029] <Example of scan settings screen / detailed settings screen> FIG. 3 shows an example of a screen displayed on the display unit of the scan system. FIG. 3(a) is a scan setting screen displayed by the scan application 201. FIG. 3(b) is an advanced setting screen displayed when the extended application 204 is not associated. FIG. 3(c) is an advanced setting screen displayed when the extended application 204 is associated. Note that the units and modules that display each screen are not particularly limited. For example, the scan setting screen extension unit 205 may be configured to only generate a display screen. In this case, the scan setting screen extension unit 205 transmits the generated display screen to the scan application 201 via the general-purpose scan software 202. The scan application 201 may be configured to display the acquired display screen.
[0030] The scan setting screen 300A shown in FIG. 3(a) is a screen on which scan conditions for scanning with the scanning device 102 can be set. This scan setting screen 300A includes controls (buttons) 301, 302, 303, and 304. Control 301 allows the user to select and set the scanner device to be used to read the document. In FIG. 3(a), as an example, the scanner device to be used to read the document is set as "Scanner 001 (common driver)." Control 302 allows the user to set detailed scan conditions. Control 303 allows the user to instruct the scanning device 102 to start scanning. Control 304 allows the user to instruct the scanning device 102 to cancel scanning.
[0031] In a configuration in which the extension application 204 is not associated, operating the control 302 displays the advanced settings screen 300B shown in FIG. 3(b). The advanced settings screen 300B includes controls 305 and 306. The control 306 allows the user to select and set the document reading destination of the scanning device 102, i.e., the placement unit on which the document to be read is placed. For example, if the scanning device 102 has a document table (document table glass) and a feeder as the document reading destination, the "document table" is selected as an example in FIG. 3(b). The settings in the control 306 can be ended. Operating the control 306 also returns the user to the scan settings screen 300A shown in FIG. 3(a).
[0032] In a configuration in which the extension application 204 is associated, operating the control 302 displays the advanced settings screen (settings acceptance screen) 300C shown in FIG. 3C (display control process). The advanced settings screen 300C is displayed together with the scan settings screen 300A, but its display format is not particularly limited. For example, the advanced settings screen 300C may be displayed overlapping the scan settings screen 300A. Alternatively, the advanced settings screen 300C may be displayed adjacent to the scan settings screen 300A, or the scan settings screen 300A may disappear and then the advanced settings screen 300C may be displayed. The advanced settings screen 300C includes controls 305 and 306, similar to the advanced settings screen 300B. The advanced settings screen 300C also includes an additional control 307. The control 307 can accept the setting of the document reading size as a scanning condition for the scanning device 102. Operating the control 307 displays a list 308. List 308 includes "A4H," "A3," "B4," "LTR," and "LGL" as document scanning sizes, and "A4H" is selected as an example in FIG. 3(c). In this way, list 308 allows the user to select a desired scanning size from multiple scanning sizes (options). Then, by operating control 306 with "A4H" selected, the user can confirm the setting in control 307, i.e., end of scanning size setting. In this way, on advanced settings screen 300C, control 306 functions as a confirmation operation unit for confirming the end of scanning size setting. When the user confirms the end of scanning size setting, scanning device 102 can be caused to scan a document under the scanning conditions accepted on advanced settings screen 300C, i.e., at "A4H" size (scanning process).
[0033] Here, the reason why the items included in the detailed setting screen 300B shown in FIG. 3(b) are different from the items included in the detailed setting screen 300C shown in FIG. 3(c) will be explained. That is, the reason why it is possible to switch between displaying the detailed setting screen 300B and displaying the detailed setting screen 300C will be explained. The detailed setting screen 300B and the detailed setting screen 300C are each generated based on scan function information (capability information). As described above, the general-purpose scan software 202 does not support scan condition setting. Therefore, the general-purpose scan software 202 alone cannot add a scan condition setting function to the scan function information. Furthermore, even if the scan function information originally includes a scan condition setting function, the general-purpose scan software 202 cannot interpret the scan condition setting function included in the scan function information. Therefore, the scan condition setting cannot be displayed on the detailed setting screen. Therefore, the scan function extension unit 206 adds the scan condition setting function to the scan function information 203. Then, the scan setting screen extension unit 205 references the capability information and displays the detailed setting screen 300C. This detailed setting screen 300C is a screen on which scan conditions can be set. Note that the detailed setting screen 300C may also include additional setting items other than the scan condition settings.
[0034] <Flowchart of the scan function expansion unit for editing scan function information> FIG. 4 is a flowchart showing the process by which the scan function extension unit edits scan function information. The program based on the flowchart shown in FIG. 4 is executed by the CPU 111 controlling the scan function extension unit 206. FIG. 5 is a diagram showing an example of a list of scan information. As shown in FIG. 4, in step S401, the scan function extension unit 206 acquires capability information from the scan device 102. The capability information includes attribute information indicating functions that can be specified by the scan device 102 and setting values related to the attribute information. Table 501 shown in FIG. 5(a) shows a list of capability information acquired from the scan device 102. As shown in Table 501, functions such as scan size setting and options that can be set for each function can be acquired from the scan device 102. For example, the scan size setting function has options of "A4H," "A3," and "B4."
[0035] In step S402, the scan function extension unit 206 acquires scan functions supported by the extension application 204 from the shared information 208. The shared information 208 stores a list of scan functions supported by the extension application 204. Table 502 shown in FIG. 5B includes all scan functions that can be executed (supported) by the extension application 204 and their setting values. For example, the scanning size setting function has options of "A4H," "A3," "B4," "A6," "LTR," and "LGL." In addition, the scan functions that can be executed by the extension application 204 may be updated by updating the extension application 204, etc.
[0036] In step S403, the scan function extension unit 206 obtains the scan function information 203 created by the general-purpose scan software 202 from the OS. The scan function information 203 is created based on the capability information the general-purpose scan software 202 obtains from the scan device 102. The scan function information 203 created by the general-purpose scan software 202 includes only the scan functions that the general-purpose scan software 202 can execute, from the capability information obtained from the scan device 102. Table 503 shown in FIG. 5(c) includes all scan functions that the general-purpose scan software 202 can execute and their setting values. As shown in table 503, the scan functions that the general-purpose scan software 202 can execute do not include the function of setting the scan size. Therefore, the scan function information 203 does not include the scan size setting. The scan function extension unit 206 adds functions and options to the scan function information 203, allowing the extension application 204 to compensate for the lack of functionality in the general-purpose scan software 202. 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 .
[0037] Steps S404, S405, and S406 are processes that are repeatedly performed for the list of functions included in the capability information acquired in step S401 from the scanning device 102. In this embodiment, steps S404, S405, and S406 are repeatedly performed for all nine options included in table 501 (excluding the double-sided setting).
[0038] In step S404, the scan function extension unit 206 determines whether the currently processed function or option exists in the scan function information 203 generated by the general-purpose scan software 202. If the result of the determination in step S404 is that the function or option exists in the scan function information 203, and if the last item among the options is being processed, the process ends. Alternatively, if the last item among the options is not being processed, the next item among the options is selected and step S404 is executed again. On the other hand, if the result of the determination in step S404 is that the function or option does not exist in the scan function information 203, the process proceeds to step S405. For example, in this embodiment, table 501 includes the reading destination "Platen," and table 503 also includes the reading destination "Platen." In this case, in step S404, it is determined that the currently processed function or option exists in the scan function information 203. In contrast, table 501 includes "A4H," but table 503 does not include "A4H." In this case, in step S404, it is determined that the function or option currently being processed does not exist in the scan function information 203.
[0039] In step S405, the scan function extension unit 206 determines whether the currently processed function (option) is present among the functions (options) supported by the extension application 204. If it is determined in step S405 that the currently processed function exists, the process proceeds to step S406. On the other hand, if it is determined in step S405 that the currently processed function does not exist, the process ends if the last item among the options is being processed, as in the case where the determination in step S404 is "Yes." Alternatively, if the last item among the options is not being processed, the next item among the options is selected and step S404 is executed again. For example, in this embodiment, if the currently processed function is "A4H," "A4H" also exists in table 502. Therefore, in step S405, it is determined that the currently processed function exists.
[0040] In step S406, the scan function extension unit 206 adds the currently processed function (option) to the scan function information 203. After step S406 is executed, the process ends if the last item among the options is being processed, just as if the answer was "Yes" in step S404. Alternatively, if the last item among the options is not being processed, the next item among the options is selected and step S404 is executed again.
[0041] As described above, the extension application 204 can add functions (options) that are not supported by the general-purpose scan software 202, are supported by the scan device 102, and are supported by the extension application 204 to the scan function information 203. Then, capability information is generated based on the scan function information 203 edited by this addition process. Furthermore, the scan setting screen extension unit 205 generates a display screen based on this capability information, thereby extending the functions that are not supported by the general-purpose scan software 202 and displaying the detailed setting screen 300C shown in FIG. 3(c).
[0042] <Processing after the scan application accepts the scan settings> 6 is a sequence diagram showing the processing executed between the scan application, general-purpose scan software, extension application, and scan device after the scan application accepts scan settings. Processing by the scan application, general-purpose scan software, and extension application is executed by the CPU 111 of the host computer 101. This processing program is stored in the external storage device 114. The CPU 111 then reads the processing program from the external storage device 114 into the RAM 113 and executes it. Processing by the scan device 102 is executed by the CPU 191 of the scan device 102. This processing program is stored in the external storage device 199. The CPU 191 then reads the processing program from the external storage device 199 into the RAM 193 and executes it. The software configuration of the scan system 1000 is the software configuration shown in FIG. 2(b).
[0043] 6, in step S601, the scan application 201 accepts scan settings from the user. The user can instruct the scan application 201 to set scan settings by operating the pointing device 117 or keyboard 118, for example.
[0044] In step S602, the scan application 201 displays the scan setting screen 300A shown in FIG.
[0045] In step S603, the scan application 201 accepts a user instruction for detailed settings. The user can instruct detailed settings by, for example, operating the pointing device 117 or the keyboard 118 to select a control 302 on the scan setting screen 300A.
[0046] In step S604, the scan application 201 requests the general-purpose scan software 202 to display the detailed settings.
[0047] In step S605, the general-purpose scan software 202 requests the extension application 204 to display the detailed settings.
[0048] In step S606, the scan setting screen extension unit 205 of the extension application 204 displays the detailed setting screen 300C shown in FIG. 3C on the display unit 119 in response to the request in step S605. As described above, the scan function extension unit 206 adds a function for setting the reading size, which is a reading condition, to the scan function information 203. The scan setting screen extension unit 205 can display the detailed setting screen 300C by referring to the capability information generated based on this added scan function information 203. Note that the reading destination, resolution, etc. may be displayed, or may be suppressed or grayed out as necessary.
[0049] In step S607, the scan setting screen expansion unit 205 accepts the user's detailed settings on the detailed setting screen 300C. As an example, it is assumed here that the reading destination "Platen" is selected on the detailed setting screen 300C using the control 305, and the reading size "A4H" is selected using the control 307 (see FIG. 3(c)). In this setting state, the scan setting screen expansion unit 205 accepts that the user has operated the control 306 on the detailed setting screen 300C. As a result, the CPU 111 stores the setting state on the detailed setting screen 300C in the RAM 113.
[0050] In step S608, the scan setting screen expansion unit 205 accepts that the user has completed the detailed settings based on the operation of the control 306 in step S607. The user can instruct the user to complete the detailed settings by, for example, operating the pointing device 117 or the keyboard 118 to select the control 306. This causes the setting status on the detailed settings screen 300C to be written to the scan function information 203. Note that the information written to the scan function information 203 may also include, for example, information that has been suppressed from being displayed or grayed out.
[0051] In step S609, the extension application 204 transmits detailed setting completion information indicating that the detailed setting in step S608 has been completed to the general-purpose scan software 202.
[0052] In step S610, the general-purpose scan software 202 receives the detailed setting completion information sent in step S609 from the extension application 204. Then, the general-purpose scan software 202 sends this detailed setting completion information to the scan application 201.
[0053] In step S611, the scan application 201 accepts a scan instruction from the user. The user can issue a scan instruction by, for example, operating the pointing device 117 or the keyboard 118 to select a control 303 on the scan setting screen 300A (see FIG. 3(a)).
[0054] In step S612, the scan application 201 issues the scan instruction received in step S611 to the general-purpose scan software 202.
[0055] In step S613, the general-purpose scan software 202 receives the scan instruction issued in step S612. The general-purpose scan software 202 then issues this scan instruction to the extension application 204.
[0056] In step S614, the extension application 204 accepts the scan instruction issued in step S613. The extension application 204 then creates a scan instruction command based on the scan function information 203 into which the setting status on the advanced settings screen 300C has been written in step S608. This scan instruction command includes the setting information for the reading size (reading size "A4H") accepted on the advanced settings screen 300C. In addition, there are cases where the information that has been suppressed or grayed out in step S608 has not been written in the scan function information 203. In this case, in step S614, the extension application 204 may add the information that has not been written in the scan function information 203 to the scan instruction command, or may use it as a default value.
[0057] In step S615, the extension application 204 sends the scan instruction command created in step S614 to the scanning device 102.
[0058] In step S616, the input / output interface 198 of the scanning device 102 receives the scan instruction command sent in step S615. The reading unit 195 of the scanning device 102 then interprets the scan instruction command and executes a scan according to the settings on the detailed setting screen 300C (reading process). As a result, data of an A4-sized portrait image is obtained as scanned image data (read image data). The image processing unit 190 of the scanning device 102 may execute necessary image processing on this scanned image data in accordance with the scan instruction.
[0059] In step S617, the input / output interface 198 of the scanning device 102 transmits the scanned image data obtained in step S616 to the extension application 204.
[0060] In step S618, the extension application 204 receives the scanned image data sent in step S617 and sends the scanned image data to the general-purpose scan software 202.
[0061] In step S619, the general-purpose scanning software 202 receives the scanned image data sent in step S618 and sends the scanned image data to the scanning application 201.
[0062] In step S620, the scan application 201 receives the scanned image data sent in step S619.
[0063] In step S621, the scan application 201 displays the scanned image data received in step S620 on the display unit 119. As a result, the scanned image data, i.e., the result of reading the document in step S616, is displayed as a preview image on the display unit 119 (preview image display step).
[0064] As described above, in the scanning system 1000, even if the general-purpose scanning software 202 does not support scanning size setting (scanning condition setting), the scanning size setting can be performed using the extension application 204. This allows the scanning device 102 to perform scanning under the scanning size setting. Note that in the description with reference to FIG. 6, the detailed settings screen 300C shown in FIG. 3C is displayed assuming that the software configuration of the scanning system 1000 is the software configuration shown in FIG. 2B. However, this is not limiting. For example, when a request to display detailed settings is made to the general-purpose scanning software 202 in step S604, the general-purpose scanning software 202 displays the detailed settings screen 300B shown in FIG. 3B. In this case, after operating the control 306 on the detailed settings screen 300B, the general-purpose scanning software 202 requests the extension application 204 to display an additional detailed settings screen. Next, the extension application 204 may display an additional detailed settings screen that allows the scanning size to be set.
[0065] Furthermore, the scan instruction in step S613 is sent from the general-purpose scan software 202 to the extension application 204, but is not limited to this. For example, a scan instruction may be sent from the scan application 201 to the extension application 204. A control for a scan instruction may be provided on the advanced settings screen 300C. In this case, a user operates the control for a scan instruction to send a scan instruction to the extension application 204. The scanned image data may be sent from the scanning device 102 to the scan application 201 via the extension application 204 without going through the general-purpose scan software 202. The scanned image data may also be sent directly from the scanning device 102 to the scan application 201. The scanning system 1000 may be configured to store the scanned image data in the external storage device 114 and transfer only information about the file path to the storage destination. When there are multiple scanned image data, the scanning system 1000 may send all scanned image data at once, or may send scanned image data as they are obtained.
[0066] Fig. 7 is a flowchart showing the processing executed by the extension application. A program based on the flowchart shown in Fig. 7 is stored in the external storage device 114. The CPU 111 can execute this program by reading it from the external storage device 114 to the RAM 113. As shown in Fig. 7, in step S701, the extension application 204 receives a request to display detailed settings from the general-purpose scan software 202 (see step S605).
[0067] In step S702, the scan setting screen expansion unit 205 of the extension application 204 displays the detailed setting screen 300C shown in Fig. 3(c) on the display unit 119 in response to the detailed setting display request received in step S701. As described above, a function for setting the reading size is added to the scan function information 203. The scan setting screen expansion unit 205 can display the detailed setting screen 300C by referring to the capability information generated based on this scan function information 203.
[0068] In step S703, the scan setting screen expansion unit 205 determines whether or not detailed settings are made on the detailed setting screen 300C, i.e., whether or not a selection operation has been made on the control 305 or the control 307. If the determination in step S703 determines that detailed settings are made, the process proceeds to step S704. On the other hand, if the determination in step S703 determines that detailed settings are not made, the process proceeds to step S705.
[0069] In step S704, the scan setting screen expansion unit 205 stores (saves) in the RAM 113 the setting state (setting information) on the detailed setting screen 300C.
[0070] In step S705, the scan setting screen expansion unit 205 determines whether an instruction to end the detailed settings has been given on the detailed setting screen 300C, i.e., whether an operation has been performed on the control 306. If it is determined in step S705 that an instruction to end the detailed settings has been given, the process proceeds to step S706. On the other hand, if it is determined in step S705 that an instruction to end the detailed settings has not been given, the process returns to step S703, and the subsequent steps are executed in sequence.
[0071] In step S706, the extension application 204 notifies the general-purpose scan software 202 that the detailed settings made in step S705 have been completed.
[0072] In step S707, the extension application 204 determines whether or not a scan instruction (see step S613) has been received from the general-purpose scan software 202. If it is determined in step S707 that a scan instruction has been received, the process proceeds to step S708. On the other hand, if it is determined in step S707 that a scan instruction has not been received, the process remains in step S707 and waits.
[0073] In step S708, the extension application 204 creates a scan instruction command based on the scan function information 203 containing the settings on the detailed setting screen 300C. As described above, this scan instruction command includes the scan size setting information (scan size "A4H") accepted on the detailed setting screen 300C. The scan size setting information may be an ID or a numerical value converted into pixel or millimeter size taking resolution into consideration. A method for creating a scan instruction command includes, for example, extending a standard protocol command. Another extension method includes, for example, writing a dedicated command in an extension field of the standard protocol command. Other extension methods include adding a proprietary command to the end of the standard protocol command or overwriting the standard protocol command with a proprietary command system by the extension application 204. When issuing an instruction from the extension application 204, instructions and communications may be performed using a manufacturer's proprietary protocol, regardless of the standard protocol.
[0074] In step S709, the extension application 204 sends the scan instruction command created in step S708 to the scanning device 102.
[0075] In step S710, the extended application 204 determines whether or not all of the scanned image data (see step S617) has been received from the scanning device 102. If it is determined in step S710 that all of the scanned image data has been received, the process proceeds to step S711. On the other hand, if it is determined in step S710 that all of the scanned image data has not been received, the process remains in step S710 and waits.
[0076] In step S711, the extension application 204 sends all the scanned image data from the scanning device 102 to the general-purpose scanning software 202, and the process ends.
[0077] Fig. 8 is a flowchart showing the processing executed by the scanning device. A program based on the flowchart shown in Fig. 8 is stored in external storage device 199. CPU 191 can execute this program by reading it from external storage device 199 to RAM 192. As shown in Fig. 8, in step S801, CPU 191 accepts a scan instruction command from extension application 204 (see step S615).
[0078] In step S802, CPU 191 interprets the scan instruction command received in step S801. Then, CPU 191 converts the scan instruction command into a setting that enables scanning by scanning device 102, that is, scanning under the setting conditions (reading size "A4H") on detailed setting screen 300C.
[0079] In step S803, the CPU 191 determines the ASIC of the image processing unit 190 to be used to perform scanning in accordance with the setting (read setting) in step S802, and sets the ASIC.
[0080] In step S804, the CPU 191 transmits to the reading unit 195 a reading instruction according to the reading setting.
[0081] In step S805, the CPU 191 acquires scanned image data from the reading unit 195. The scanned image data is image data of A4H size.
[0082] In step S806, the CPU 191 controls the image processing unit 190 to perform image processing on the scanned image data acquired in step S805. In this embodiment, the image processing is, for example, conversion to a resolution of "300 x 300 dpi." If the reading unit 195 is capable of reading at a resolution of "300 x 300 dpi," the reading unit 195 may acquire the scanned image data at a resolution of "300 x 300 dpi." In this case, step S806 can be omitted.
[0083] In step S807, the CPU 191 stores the scanned image data in the external storage device 199.
[0084] In step S808, CPU 191 determines whether scanning has been completed for all pages of the document to be read. If it is determined in step S808 that scanning has been completed, the process proceeds to step S809. On the other hand, if it is determined in step S808 that scanning has not been completed, the process returns to step S805, and the subsequent steps are executed in sequence.
[0085] In step S809, the CPU 191 controls the image processing unit 190 to convert the scanned image data stored in step S807 in accordance with the transmission format. In this embodiment, the transmission format is not included in the scan instruction command received in step S801. Therefore, the scanned image data is converted to, but not limited to, the default JPEG format of the scanning device 102.
[0086] In step S810, the CPU 191 controls the input / output interface 198 to send the scanned image data converted in step S809 to the extension application 204, and the process ends.
[0087] <<Second embodiment>> A second embodiment will be described below with reference to FIGS. 8 to 12. Differences from the previous embodiment will be mainly described, and similar points will not be described again. Depending on the scanning device 102, the scanning size may be limited due to cost considerations, etc. This embodiment is effective in such cases. Specifically, first, the scanning size that can be read by the scanning device 102 is determined from the capability information of the scanning device 102. Next, if the document to be read is of a scanning size that can be read by the scanning device 102, scan setting information is generated and transmitted to the scanning device 102. On the other hand, if the document to be read is not of a scanning size that can be read by the scanning device 102, scan setting information is generated for a scanning size larger than the specified size and transmitted to the scanning device 102. Then, the scan image data obtained by the scanning device 102 is cropped to the specified size by the extension application 204. This makes it possible to obtain scan image data even when the scanning size is limited.
[0088] In this embodiment, the scanning device 102 is assumed to be unable to read A6 size documents. Therefore, the capability information acquired from the scanning device 102 does not include A6 size as a readable size. Therefore, if the extension application 204 has a unit capable of performing a size cropping process to crop scanned image data to a predetermined size, the scanning function extension unit 206 adds A6 size as a readable size to the scanning function information 203. The image data editing unit 207 performs size cropping on the scanned image data received from the scanning device 102 based on the reading size setting set by the user.
[0089] <Flowchart of the scan function expansion unit for editing scan function information> FIG. 9 is a flowchart showing the process of editing scan function information by the scan function extension unit in the second embodiment. In the flowchart shown in FIG. 9, steps S401 to S406 are executed, similarly to the flowchart shown in FIG. 4. After execution, the process proceeds to step S901. As described above, the scanning device 102 cannot read A6 size documents. Therefore, after the repeated processes of steps S404 to S406 are completed, the A6 size is not added as a preset reading size to the scan function information 203. In step S901, the scan function extension unit 206 refers to table 501 shown in FIG. 5(a) and the scan function information 203 to determine whether the extension application 204 has a unit capable of performing size cropping. If it is determined in step S901 that a size cropping processing unit is present, the process proceeds to step S902. On the other hand, if it is determined in step S901 that a size cropping processing unit is not present, the process ends. In this embodiment, the image data editing unit 207 of the extension application 204 has a function as a size cutting processing unit, so the process proceeds to step S902.
[0090] In step S902, the scan function extension unit 206 adds A6 size as a reading size to the scan function information 203. This allows the scan device 102 to perform scanning in A6 size even if it is a device that cannot read A6 size.
[0091] 10 is a diagram showing an example of a screen displayed on the display unit of the scanning system. Similar to the detailed setting screen 300C (see FIG. 3(c)), the detailed setting screen 300C1 shown in FIG. 10 includes controls 305, 306, and 307. Operating control 307 displays a list 1001. The list 1001 includes "A4H," "A3," "B4," "LTR," and "LGL" as document scanning sizes, with "A6" added. This allows the user to select "A6" from the list 1001 even if the scanning device 102 cannot scan the document with the scanning size "A6."
[0092] <Processing after the scan application accepts the scan settings> 11 is a sequence diagram showing the processing executed between the scan application, general-purpose scan software, extension application, and scan device after the scan application accepts scan settings. As shown in FIG. 11, step S1101 is executed instead of step S614 (see FIG. 6), and step S1102 is executed between step S617 and step S618. In step S1101, the extension application 204 creates a scan instruction command based on the scan function information 203 in which the setting status on the advanced setting screen 300C1 shown in FIG. 10 is written.
[0093] In step S1102, the image data editing unit 207 of the extension application 204 performs image editing to crop the scanned image data sent in step S617 to A6 size.
[0094] Fig. 12 is a flowchart showing the processing executed by the extended application. As shown in Fig. 12, step S1201 is executed between step S707 and step S708. Depending on the determination result in step S1201, step S1202 may be executed. Furthermore, step S1203 is executed between step S710 and step S711. Depending on the determination result in step S1203, step S1204 may be executed.
[0095] In step S1201 after step S707, the extension application 204 acquires the capability information of the scanning device 102 from the shared information 208. If the shared information 208 does not contain the capability information of the scanning device 102, the scan function extension unit 206 may request the capability information from the scanning device 102 and store it in the shared information 208. The extension application 204 determines whether or not a scanning size setting that cannot be executed (is not supported) by the scanning device 102 is present, based on the capability information and the setting status on the detailed setting screen 300C1. If it is determined that a scanning size setting is present, the process proceeds to step S1202. On the other hand, if it is determined that a scanning size setting is not present, the process proceeds to step S708. In this embodiment, the scanning device 102 is not capable of scanning A6 size documents, but the scanning size "A6" is set on the detailed setting screen 300C1, so the process proceeds to step S1202.
[0096] In step S1202, the extension application 204 creates a scan instruction command by setting a reading size that is larger than the reading size set in the detailed setting screen 300C1 and that can be read by the scanning device 102. By setting a reading size larger than the reading size set in the detailed setting screen 300C1, the scanned image can be cropped in a later process (step S1204). After step S1202 is executed, the process proceeds to step S709.
[0097] In step S1203 after step S710 is executed, the extension application 204 determines whether there are any settings that require editing in the image data editing unit 207, based on the settings on the detailed settings screen 300C1. If the determination in step S1203 determines that there are any necessary settings, the process proceeds to step S1204. On the other hand, if the determination in step S1203 determines that there are no necessary settings, the process proceeds to step S711. Note that in this embodiment, the A6 size, which cannot be read by the scanning device 102, is set on the detailed settings screen 300C1, so the process proceeds to step S1204.
[0098] In step S1204, the image data editing unit 207 performs a cropping process on the scanned image data based on the reading size setting made in step S703. After step S1204 is executed, the process proceeds to step S711.
[0099] <<Third Embodiment>> The third embodiment will be described below with reference to FIGS. 13 to 16. The description will focus on differences from the previously described embodiments, and similar details will be omitted. FIG. 13 is a diagram related to scan information in the third embodiment. Table 1301 in FIG. 13(a) shows an example of a list of capability information acquired from the scan device 102. As shown in Table 1301, similar to Table 501 (see FIG. 5(a)), functions such as scan size setting and options that can be set for each function can be acquired from the scan device 102. For example, the scan size setting function has options such as "A4H," "A3," and "B4." Furthermore, information 1302 is acquired from the scan device 102 as scan size standard information. Information 1302 is AB-based standard information. When the scan size standard set in the scan device 102 is AB-based, the document to be scanned is also AB-based, and it is considered unlikely that a document in inch format will be used. In this case, even if inch-based reading sizes are displayed as options, they will not be selected, and the user will have to go through the trouble of searching for the AB-based reading size they actually want to select. Therefore, it is preferable to suppress the display of inch-based options.
[0100] <Flowchart of the scan function expansion unit for editing scan function information> FIG. 14 is a flowchart showing the process of editing scan function information by the scan function extension unit. In the flowchart shown in FIG. 14, steps S401 to S406 are executed, similar to the flowchart shown in FIG. 4, but step S1401 is executed between steps S405 and S460. In step S1401, the scan function extension unit 206 determines whether the currently processed function (option) executed by the extension application 204 can be set in combination with other functions (options). If the result of the determination in step S1401 indicates that the function can be set, the process proceeds to step S406. On the other hand, if the result of the determination in step S1401 indicates that the function cannot be set, the process is the same as when it is determined in step S405 that no function currently being processed exists. In this embodiment, for example, if the currently processed function has a scanning size of "LTR," it is necessary to determine whether it can be combined with information 1302. The standard of the table 1301, which is the capability information of the scanning device 102, is the AB system, so even if it is supported as an extension application 204, it is determined in step S1401 that it cannot be set.
[0101] As described above, the scan function extension unit 206 can change the scan function information 203 for a combination of functions that are not supported by the general-purpose scan software 202, are supported by the scanning device 102, and are supported by the extension application 204. Furthermore, the advanced settings screen 300C2 shown in FIG. 13(b) can be displayed in accordance with the changes to the scan function information 203. By operating the control 307 on the advanced settings screen 300C2, a list 1303 is displayed. The list 1303 includes "A4H," "A3," and "B4" as document scanning sizes, with "LTR" and "LGL" removed.
[0102] Fig. 15 is a diagram relating to scan information (variation example). Table 1501 shown in Fig. 15(a) shows an example of a list of capability information acquired from the scanning device 102. As shown in table 1501, information 1502 on reading sizes that can be read on the platen and information 1503 on reading sizes that can be read by the feeder can be acquired from the scanning device 102. Information 1502 includes "A4H", "A3", "B4", "LTR", and "LGL" as reading sizes that can be read by the platen. Information 1503 includes "A4H", "B4", and "LTR" as reading sizes that can be read by the feeder.
[0103] FIG. 16 is a flowchart showing the processing executed by the extension application. As shown in FIG. 12, step S1601 is executed between step S704 and step S705. Depending on the determination result in step S1601, step S1602 may be executed. In step S1601 after execution of step S704, the scan setting screen extension unit 205 of the extension application 204 determines whether there is a function (option) affected by the set function (option). If it is determined as a result of the determination in step S1601 that there is an affected function (option), the processing proceeds to step S1602. On the other hand, if it is determined as a result of the determination in step S1601 that there is no affected function (option), the processing proceeds to step S705.
[0104] In step S1602, the scan setting screen expansion unit 205 displays the detailed setting screen 300C3 shown in FIG. 15(b) or the detailed setting screen 300C4 shown in FIG. 15(c) on the display unit 119. As shown in FIG. 15(b), for example, if "Platen" is set as the reading destination in the control 305, "A4H," "A3," "B4," "LTR," and "LGL" are displayed in the list 1505 according to the reading size on the platen. As shown in FIG. 15(b), for example, if "Feeder" is set as the reading destination in the control 305, "A4H," "B4," and "LTR" are displayed in the list 1507 according to the reading size on the feeder. After step S1602 is executed, the process proceeds to step S705.
[0105] As described above, when creating scan function information 203, it is possible to change the scan function information 203 in combination with other capability information, and when the user sets the function, it is possible to change the detailed setting screen in combination with other functions.
[0106] <<Fourth Embodiment>> The fourth embodiment will be described below with reference to FIGS. 17 to 19. The description will focus on differences from the previous embodiments, and similar points will not be repeated. FIG. 17 is a diagram related to scan information in the fourth embodiment. Table 1701 in FIG. 17(a) shows an example of a list of capability information acquired from the scan device 102. As shown in table 1701, information 1703 can be acquired from the scan device 102. Information 1703 indicates that long-length documents are supported as a scanning size. Note that information 1703 may be displayed as a scanning size that is independent of scanning sizes including "A4H," "A3," "B4," "LTR," and "LGL." Table 1702 in FIG. 17(b) includes all scan functions that the extended application 204 can execute (support) and their settings, indicating that long-length documents are also supported.
[0107] The detailed settings screen 300C5 shown in FIG. 17(c) and the detailed settings screen 300C6 shown in FIG. 17(d) each allow the long document setting. In the detailed settings screen 300C5, the list 1704 includes the scan size "long document." The detailed settings screen 300C6 includes a control 1705 that allows the scan sizes "A4H," "A3," "B4," "LTR," and "LGL" and a check box 1706 that allows the scan size to be set to long document. When the check box 1706 is checked and the scan size is set to long document, the control 1705 is displayed, for example, grayed out. This prohibits operation of the control 1705. As described above, the detailed settings screen 300C6 includes two selectable options (the control 1705 and the check box 1706). In this case, selecting one of the two options (the check box 1706) prohibits selection of the other option (the control 1705). The number of options included in the advanced settings screen 300C6 is not limited to two, and may be, for example, three or more. If long documents cannot be read on the platen, selecting "Platen" in the control 305 may delete "Long Document" from the list 1704 or the check box 1706.
[0108] FIG. 18 is a diagram related to scan information (Variation 1). Table 1801 shown in FIG. 18(a) shows an example of a list of capability information acquired from the scanning device 102. As shown in table 1801, information 1802 can be acquired from the scanning device 102. The information 1802 is information independent of the scanning size, which includes "A4H," "A3," "B4," "LTR," and "LGL," and includes a function "long" and its option "630 mm." "630 mm" is the maximum scanning size of a document in the sub-scanning direction. The detailed setting screen 300C7 shown in FIG. 18(b) has a comment 1803 adjacent to the check box 1706. The comment 1803 indicates that the maximum scanning size of a document in the sub-scanning direction is "630 mm." This allows the user to understand the maximum scanning size of a document in the sub-scanning direction.
[0109] FIG. 19 is a diagram related to scan information (Variation 2). Table 1901 shown in FIG. 19(a) shows an example of a list of capability information acquired from the scanning device 102. As shown in table 1901, information 1902 and information 1903 can be acquired. Information 1902 is information indicating that the maximum document read size is "1000 mm" when the resolution is "400 x 400 dpi or less." Information 1903 is information indicating that the maximum document read size is "630 mm" when the resolution is "greater than 400 x 400 dpi." The detailed setting screen 300C8 shown in FIG. 19(b) includes comment 1904 and control 1905. When the resolution is entered as "400 x 400 dpi" in control 1905, comment 1904 displays that the maximum document read size is "1000 mm." This allows the user to understand the maximum scan size of the document when the resolution is "400 x 400 dpi." The detailed setting screen 300C9 shown in FIG. 19(c) includes a comment 1906 and a control 1907. When the resolution is input as "600 x 600 dpi" in the control 1907, the comment 1904 displays that the maximum scan size of the document is "630 mm." This allows the user to understand the maximum scan size of the document when the resolution is "600 x 600 dpi." In this way, the maximum scan size is changed according to the performance (capability information) of the scanning device 102, such as the resolution.
[0110] <<Fifth Embodiment>> The fifth embodiment will be described below with reference to FIGS. 20 to 22. The description will focus on differences from the previous embodiments, and similar details will not be repeated. FIG. 20 is a diagram relating to scan information in the fifth embodiment. An example of a list of capability information acquired from the scanning device 102 is shown in table 2001 in FIG. 20(a). As shown in table 2001, information 2002 can be acquired from the scanning device 102. The information 2002 is information relating to the scan reading area (reading range), which is one of the scanning conditions. The information 2002 includes width direction information 2002a and height direction (total length) information 2002b. The width direction information 2002a indicates that the width can be set within a range of 80 to 420 mm, for example. The height direction information 2002b indicates that the height can be set within a range of 70 to 297 mm, for example. Table 2004 shown in FIG. 20(b) includes all scan functions that can be executed (supported) by the extended application 204 and their setting values, and also indicates that the setting of the scan reading area can be executed.
[0111] The detailed setting screen 300C10 shown in FIG. 20(c) allows the user to set the scan reading area. The detailed setting screen 300C10 includes a comment 2005, a control 2006, and a control 2007. The comment 2005 indicates that the scan reading area can be set in millimeters. The width of the scan reading area can be entered in the control 2006 as any value within the range indicated by the width direction information 2002a. The height of the scan reading area can be entered in the control 2007 as any value within the range indicated by the height direction information 2002b. The scan reading area can be changed as needed using the controls 2006 and 2007. Note that the maximum or minimum value that can be entered may be entered in advance as an initial value in the controls 2006 and 2007, respectively. The setting information for the scan reading area may be a numerical value converted into pixels.
[0112] As shown in table 2001, the scan reading area can be set to a width of 80 to 420 mm and a height of 70 to 297 mm. Depending on the extension application 204, a scan reading area wider than the scan reading area shown in table 2001 may be set. In this embodiment, for example, the extension application 204 can read a width of 50 to 420 mm and a height of 50 to 297 mm. In this case, if the extension application 204 includes a unit that performs a scan size cropping process, the scan function information 203 can be updated to include the size of the scan reading area according to the extension application 204. The image data editing unit 207 can crop the scanned image data from the scanning device 102 based on the size setting of the scan reading area set by the user.
[0113] FIG. 21 is a flowchart showing the process of the scan function extension unit editing scan function information. In the flowchart shown in FIG. 21, similar to the flowchart shown in FIG. 9, steps S401 to S406 are executed, and then the process proceeds to step S901. As described above, the scanning device 102 supports scan reading areas of 80 to 420 mm in width and 70 to 297 mm in height. Therefore, after the repeated processes of steps S404 to S406 are completed, the scan function information 203 includes scan reading areas of 80 to 420 mm in width and 70 to 297 mm in height. If it is determined in step S901 that a size cut-off processing unit is present, the process proceeds to step S2101. In step S2101, the scanning function extension unit 206 determines whether the scan reading area that can be set by the extension application 204 is larger than the scan reading area that can be set by the scanning device 102. If the result of the determination in step S2101 is that the scan reading area that can be set by the extended application 204 is larger, the process proceeds to step S2102. On the other hand, if the result of the determination in step S2101 is that the scan reading area that can be set by the extended application 204 is not larger, the process ends. As described above, in this embodiment, the scan reading area that can be set by the extended application 204 is larger, so after step S2101 is executed, the process proceeds to step S2102.
[0114] In step S2102, the scan function extension unit 206 adds a scan reading area of 50 to 420 mm in width and 50 to 297 mm in height. This makes it possible to set a wider scan reading area settable by the extension application 204. After step S2102 is executed, the process ends.
[0115] FIG. 22 is a flowchart showing processing executed by the extended application. The flowchart shown in FIG. 22 differs from the flowchart shown in FIG. 12 in that step S2201 is executed instead of step S1201, step S2202 is executed instead of step S1202, and step S2203 is executed instead of step S1204. In step S2201 after step S707 is executed, the extended application 204 acquires capability information of the scanning device 102 from the shared information 208. The extended application 204 determines whether or not a scan reading area setting that cannot be executed (is not supported) by the scanning device 102 is present, based on the capability information, etc. As a result of this determination, if it is determined that a scan reading area setting is present, the process proceeds to step S2202. On the other hand, if it is determined that a scan reading area setting is not present, the process proceeds to step S708. In this embodiment, since the scanning device 102 is set to an unreadable width of 50 mm, the process proceeds to step S1202.
[0116] In step S2202, the extension application 204 creates a scan command by setting the minimum area setting that can be set by the scanning device 102 as the reading size, rather than the setting information. In this embodiment, the minimum area setting is set to a width of 80 mm. After step S2202 is executed, the process proceeds to step S709.
[0117] If it is determined in step S1203 that the necessary settings are present, the process proceeds to step S2203. In step S2203, the image data editing unit 207 performs cropping on the scanned image data based on the reading size settings set in step S703. After step S2203 is completed, the process proceeds to step S711.
[0118] <<Sixth Embodiment>> The sixth embodiment will be described below with reference to FIG. 23. The description will focus on differences from the previously described embodiments, and similar details will be omitted. FIG. 23 is a diagram related to scan information in the sixth embodiment. Table 2301 shown in FIG. 23(a) shows an example of a list of capability information acquired from the scan device 102. As shown in table 2301, information 2303 can be acquired from the scan device 102. The information 2303 is information related to the automatic scan size as scan size information. Table 2302 shown in FIG. 23(b) includes all scan functions that can be executed (supported) by the extension application 204 and their setting values, and it is also possible to set the automatic scan size. The detailed settings screen 300C11 shown in FIG. 23(c) allows automatic scan size setting. In the detailed settings screen 300C11, the scan size "Automatic (Automatic Scan Size Setting)" is included in the list 2304. In this embodiment, when the scanning device 102 is capable of automatic size detection and reading, it is possible to provide the user with a function for executing automatic reading size.
[0119] <<Seventh Embodiment>> The seventh embodiment will be described below with reference to FIG. 24. The description will focus on differences from the previously described embodiments, and similar details will be omitted. FIG. 24 is a diagram related to scan information in the seventh embodiment. Table 2401 shown in FIG. 24(a) shows an example of a list of capability information acquired from the scan device 102. As shown in table 2401, information 2403 can be acquired from the scan device 102. The information 2403 is information related to the scanning direction when reading a document, which is one of the scan conditions. The scanning direction includes a main scanning direction and a sub-scanning direction perpendicular to the main scanning direction. The main scanning direction corresponds to the document reading direction in which the document is read. The sub-scanning direction corresponds to the document transport direction in which the document is transported. The information 2403 includes short side transport information 2403a and long side transport information 2403b as document transport direction information. The short side transport information 2403a indicates that the document is transported along its short side. The long side transport information 2403b is information indicating that the document is transported along the long side of the document. The table 2402 shown in Fig. 24(b) includes all scan functions that can be executed (supported) by the extension application 204 and their setting values, and also indicates that the document transport direction can be set.
[0120] The detailed settings screen 300C12 shown in FIG. 24(c) allows the document feed direction to be set. The detailed settings screen 300C12 includes controls 2407 and 2408. Selecting control 2407 sets the document feed direction to the short edge direction, allowing for scanning appropriate for that short edge direction. Selecting control 2408 sets the document feed direction to the long edge direction, allowing for scanning appropriate for that long edge direction. The detailed settings screen 300C13 shown in FIG. 24(d) allows the document feed direction to be set, similar to the detailed settings screen 300C12. Operating control 307 on the detailed settings screen 300C13 displays a list 2410. The list 2410 includes document scanning sizes "A4H," "A4R," "A3," "B4," "LTR," and "LGL," with "A4H" selected as an example in FIG. 24(d). For example, for "A4," transport is possible in either the short-side transport or long-side transport direction. Therefore, list 2410 includes "A4H," which indicates long-side transport, and "A4R," which indicates short-side transport. In this way, the detailed settings screen 300C13 shown in FIG. 24(d) also allows the document transport direction to be set. For example, if "A4H" is selected, "A4H" may be written as the read size in the scan instruction command, or the read size "A4" and "long-side transport" may be written as the transport direction in the scan instruction command.
[0121] Furthermore, depending on the scanning device 102, for example, short-edge transport may be possible for "A3" size documents, but long-edge transport may not be possible. In this case, the control 2408 may be displayed grayed out or temporarily removed on the detailed settings screen 300C12. Thus, prior to scanning with the scanning device 102, a determination is made as to whether the scanning device 102 can read the document using the scanning conditions "A3" and "short-edge transport" accepted on the detailed settings screen 300C12 (a determination step). If it is determined that the document can be read using the scanning device 102 using "A3" and "short-edge transport," the scanning device 102 can read the document. On the other hand, if the scanning conditions "A3" and "long-edge transport" are set on the detailed settings screen 300C12, it is determined that the document cannot be read. Then, the scanning conditions are changed to "A3" and "short-edge transport," and the scanning device 102 can read the image.
[0122] <<Eighth Embodiment>> The eighth embodiment will be described below with reference to FIG. 25. The following description will focus on differences from the previously described embodiments, and similar aspects will not be repeated. FIG. 25 is a diagram showing an example of a screen displayed on a display unit of a scanning system according to the eighth embodiment. FIG. 25(a) shows a display screen 2501 that displays a preview image of the scanned document. The display screen 2501 includes a display area 2502 that displays the preview image and an instruction button 2503 that instructs the display of the preview image in the display area 2502. Operating the instruction button 2503 changes the display screen 2501 to the state shown in FIG. 25(b). As shown in FIG. 25(b), a preview image 2504 is displayed in the display area 2502 of the display screen 2501. Furthermore, the display screen 2501 in the state shown in FIG. 25(b) includes an edit button 2505 that edits the preview image 2504 and an instruction button 2506 that instructs the user to end editing the preview image 2504. Then, by operating edit button 2505, preview image 2504 can be edited. This editing is performed using, for example, pointing device 117 or keyboard 118. For example, if preview image 2504 contains the character string "ABC...XYZ," the character string is edited to read "ABC...STU." As a result, the edited content of preview image 2504 is reflected, and an edited preview image 2504' is displayed in display area 2502, as shown in FIG. 25(c). This allows the edited preview image 2504' to be confirmed, and the preview image 2504' can also be printed.
[0123] <<Other embodiments>> In the above-described embodiment, an example has been described in which image data generated by scanning an original document using the scanning device (scanner) 102 is transmitted to the host computer 101. However, the present invention is not limited to this. For example, the above-described setting of the scan size and the scanning process by the scanning device 102 may be applied to an example in which image data generated by scanning an original document using the scanning device (scanner) 102 is transmitted by fax via a modem (not shown). When applied to fax transmission, the fax destination may also be accepted on the screen of FIG. 3C, and the extension application 204 may include the destination number in the scan command to issue a fax instruction to the scanning device 102. When the scanning device 102 accepts the fax instruction, in step S617 the scanning device 102 transmits the image data by fax to the received destination number without transmitting it to the host computer 101.
[0124] Although preferred embodiments of the present invention have been described above, the present invention is not limited to the above-described embodiments and various modifications and variations are possible within the spirit and scope of the present invention. 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 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., an ASIC) that realizes one or more functions. The detailed setting screen can accept scan conditions such as the scan size, scan area, and scanning direction when reading an image separately, but is not limited to this. The detailed setting screen can accept at least one of these settings, or it may accept multiple settings.
[0125] The disclosure of each embodiment includes the following programs, media, methods, and configurations. (Program 1) An application program that supports software programs that can be used in common with image processing devices from multiple manufacturers, On the computer, a display control step of displaying a setting reception screen for receiving settings of reading conditions for an image to be read by the image processing device; a reading step of causing the image processing device to read the image under the reading conditions accepted on the setting acceptance screen. (Program 2) An application program described in Program 1, characterized in that the setting acceptance screen accepts settings of at least one of the reading size of the image, the reading range of the image, and the scanning direction when reading the image as the reading conditions. (Program 3) The application program according to Program 2, wherein the setting acceptance screen displays the maximum reading size of the image. (Program 4) The application program according to Program 3, wherein the maximum read size of the image is changed on the setting acceptance screen depending on the image processing device. (Program 5) The application program according to any one of Programs 2 to 4, wherein the setting acceptance screen is configured to allow input of an arbitrary value for the reading range of the image. (Program 6) The application program according to any one of Programs 1 to 5, wherein the setting acceptance screen includes a plurality of options from which the reading conditions can be selected. (Program 7) The application program according to Program 6, wherein the setting acceptance screen is configured to be able to prohibit selection of at least one option from among the plurality of options. (Program 8) The application program according to any one of Programs 1 to 7, wherein the setting acceptance screen includes a decision operation section for deciding to end the setting of the reading conditions. (Program 9) The application program according to Program 8, which causes the computer to execute the reading step when the decision operation unit is operated. (Program 10) The application program according to any one of Programs 1 to 9, wherein the display control step can switch whether or not the setting acceptance screen is displayed depending on the image processing device. (Program 11) An application program described in any one of Programs 1 to 10, characterized in that prior to the reading process, the computer is able to execute a judgment process to determine whether the image can be read by the image processing device under the reading conditions accepted on the setting acceptance screen. (Program 12) An application program described in Program 11, characterized in that in the reading process, if it is determined that the image can be read as a result of the judgment in the judgment process, the image processing device is caused to read the image under the reading conditions, and if it is determined that the image cannot be read, the reading conditions are changed and the image processing device is caused to read the image. (Program 13) The application program according to any one of Programs 1 to 12, characterized in that the application program can cause the computer to execute a preview image display step of displaying the result of reading the image in the reading step as a preview image. (Program 14) The preview image is configured to be editable, The application program according to program 13, characterized in that the processing content for the preview image can be reflected in the result of reading the image in the reading step. (Medium 1) A storage medium for storing an application program that supports software programs that can be used in common with image processing devices from multiple manufacturers, The application program is installed on a computer. a display control step of displaying a setting reception screen for receiving settings of reading conditions for an image to be read by the image processing device; a reading step of causing the image processing device to read the image under the reading conditions accepted on the setting acceptance screen. (Method 1) A control method for controlling image processing devices of multiple manufacturers to support software programs that can be used in common, comprising the steps of: a display control step of displaying a setting reception screen for receiving settings of reading conditions for an image to be read by the image processing device; a reading step of causing the image processing device to read the image under the reading conditions accepted on the setting acceptance screen. (Configuration 1) An information processing device that is communicably connected to image processing devices of a plurality of manufacturers and can process information between the image processing devices, a software program that can be used in common with the image processing devices of the plurality of manufacturers; an application program that supports the software program; The program is configured to: a display control step of displaying a setting reception screen for receiving settings of reading conditions for an image to be read by the image processing device; a reading step of causing the image processing device to read the image under the reading conditions accepted on the setting acceptance screen. [Explanation of symbols]
[0126] 101 host computer 102 Scanning Device 114 External storage device 202 General-purpose scanning software 204 Extended Applications 205 Scan Setting Screen Expansion Unit 206 Scan Function Expansion Unit 207 Image Data Editing Unit 300C detailed setting screen
Claims
1. An application program that supports software programs that can be commonly used for image processing devices of multiple manufacturers, On the computer, a display control step of displaying a setting reception screen for receiving settings of reading conditions for an image to be read by the image processing device; a reading step of causing the image processing device to read the image under the reading conditions accepted on the setting acceptance screen.
2. 2. The application program according to claim 1, wherein the setting acceptance screen accepts, as the reading conditions, settings of at least one of the reading size of the image, the reading range of the image, and the scanning direction when reading the image.
3. 3. The application program according to claim 2, wherein the setting acceptance screen displays a maximum read size of the image.
4. 4. The application program according to claim 3, wherein the maximum read size of the image is changed on the setting acceptance screen depending on the image processing device.
5. 3. The application program according to claim 2, wherein the setting acceptance screen is configured to allow input of an arbitrary value for the reading range of the image.
6. 2. The application program according to claim 1, wherein the setting acceptance screen includes a plurality of options for selecting the reading conditions.
7. 7. The application program according to claim 6, wherein the setting acceptance screen is configured to be able to prohibit selection of at least one option from among the plurality of options.
8. 2. The application program according to claim 1, wherein the setting acceptance screen includes a decision operation section for deciding to end the setting of the reading conditions.
9. 9. The application program according to claim 8, wherein the program causes the computer to execute the reading step when the decision operation unit is operated.
10. 2. The application program according to claim 1, wherein the display control step is capable of switching whether or not the setting acceptance screen is displayed depending on the image processing device.
11. The application program according to claim 1, characterized in that, prior to the reading process, the computer is caused to execute a judgment process for determining whether the image can be read by the image processing device under the reading conditions accepted on the setting acceptance screen.
12. The application program of claim 11, characterized in that in the reading process, if it is determined that the image can be read as a result of the judgment in the judgment process, the image processing device is caused to read the image under the reading conditions, and if it is determined that the image cannot be read, the reading conditions are changed and the image processing device is caused to read the image.
13. 2. The application program according to claim 1, further comprising a preview image display step of displaying a result of the image read in the reading step as a preview image.
14. The preview image is configured to be editable, 14. The application program according to claim 13, wherein edited content of the preview image can be reflected in the result of reading the image in the reading step.
15. A storage medium for storing an application program that supports software programs that can be commonly used for image processing devices of multiple manufacturers, The application program is installed on a computer. a display control step of displaying a setting reception screen for receiving settings of reading conditions for an image to be read by the image processing device; a reading step of causing the image processing device to read the image under the reading conditions accepted on the setting acceptance screen.
16. A control method for controlling image processing devices of multiple manufacturers to support a software program that can be used in common, comprising: a display control step of displaying a setting reception screen for receiving settings of reading conditions for an image to be read by the image processing device; a reading step of causing the image processing device to read the image under the reading conditions accepted on the setting acceptance screen.
17. An information processing device that is communicably connected to image processing devices of a plurality of manufacturers and is capable of processing information between the image processing devices, a software program that can be used in common with the image processing devices of the plurality of manufacturers; an application program that supports the software program; The application program is installed on a computer. a display control step of displaying a setting reception screen for receiving settings of reading conditions for an image to be read by the image processing device; a reading step of causing the image processing device to read the image under the reading conditions accepted on the setting acceptance screen.
Citation Information
Patent Citations
Server system and application
JP2021033526A