Program, information processing method, and information processing device that support general-purpose scanning software.
A program extends the functionality of standard scan drivers to include brightness adjustment, allowing users to adjust scanned image brightness across multiple manufacturers' devices.
Patent Information
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2024-09-13
- Publication Date
- 2026-03-26
AI Technical Summary
The standard scan driver in Windows does not support brightness adjustment functions, limiting users' ability to adjust the brightness of scanned images, even when using scanning devices from multiple manufacturers.
A program that extends the functionality of general-purpose scan software by allowing users to set brightness adjustment settings through a display screen, enabling the scan device to perform scans according to these settings.
Enables users to adjust the brightness of scanned images using scanning devices from different manufacturers, enhancing the functionality of standard scan drivers.
Smart Images

Figure 2026053859000001_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to a program, an information processing method, and an information processing apparatus that support general-purpose scanning software.
Background Art
[0002] There is known a configuration in which a scan driver installed in a host computer is used as software for controlling a scan device, and a read instruction is given to the scan device connected to the host computer. An operating system (OS), which is basic software, is installed in the host computer. The scan driver is configured according to the specifications defined by the OS and is called by the OS to operate. A vendor (manufacturer) that provides a scan device can provide a means for instructing the scan device to read using the OS by providing a scan driver that conforms to the specifications of the OS.
[0003] In recent years, in Windows (registered trademark), there has been an attempt to provide a standard class driver (hereinafter also referred to as "standard driver") that can be commonly used in scan devices provided by a plurality of vendors. Such a standard driver is included in the OS package and can be easily used by connecting an arbitrary scan device to the host computer. Therefore, it is not necessary to separately install a model-specific scan driver suitable for the scan device, and the convenience is high. Also, it is assumed that the standard driver is configured to be able to specify a scan function according to scan function information generated based on information acquired from the connected scan device. Thereby, a user who uses the standard driver can specify a scan function according to the capabilities of the connected scan device even though using only one standard driver. However, since this is only a function that can be realized by the standard driver alone, a function unique to the vendor (manufacturer) of the scan device cannot be specified. Therefore, Patent Document 1 discloses a program that extends the printing function of general-purpose software (see Patent Document 1). [Prior art documents] [Patent Documents]
[0004] [Patent Document 1] Japanese Patent Publication No. 2021-033526 [Overview of the project] [Problems that the invention aims to solve]
[0005] One of the features of the scan vendor's proprietary scan driver is the brightness adjustment function. The brightness adjustment function adjusts the brightness of the scanned image. However, when using the standard driver, the brightness adjustment function is not available, and users cannot adjust the brightness of the image. In view of the above issues, the present invention aims to provide a mechanism that extends the functionality of scan software that can be used commonly by scanning devices provided by multiple manufacturers, thereby enabling the use of a brightness adjustment function. [Means for solving the problem]
[0006] To solve the above problems, a program according to one aspect of the present invention has the following configuration. A program that supports the functions of general-purpose scan software that can be used in common with image processing devices provided by multiple manufacturers, characterized in that it causes a computer to display a display screen that accepts settings for adjusting the brightness of an image to be read by the image processing device, and causes the computer to output a read command that causes the image processing device to perform a scan according to the settings accepted on the display screen. [Effects of the Invention]
[0007] According to the present invention, a program that extends the functionality of general-purpose scanning software that can be used in common with scanning devices provided by multiple manufacturers makes it possible for users to use a brightness adjustment function. [Brief explanation of the drawing]
[0008] [Figure 1] Hardware configuration diagram of the scanning system in this embodiment [Figure 2] Software configuration diagram of the scanning system in this embodiment [Figure 3] Scan settings screen and detailed settings screen of Embodiment 1 [Figure 4] Editing process of scan function information by the extended application of Embodiment 1 [Figure 5] List of Scan Functions for Each Device in Embodiment 1 [Figure 6] Sequence diagram illustrating the scan operation of Embodiment 1 [Figure 7] Scanning process in the extended application of Embodiment 1 [Figure 8] Scanning process in the scanning device of Embodiment 1 [Figure 9] Additional processing for brightness adjustment function in the extended application of Embodiment 2 [Figure 10] Sequence diagram illustrating the scan operation of Embodiment 2 [Figure 11] Scanning process in the extended application of Embodiment 2 [Figure 12] Sequence diagram illustrating the scan operation of Embodiment 3 [Figure 13] Sequence diagram illustrating the scan operation of Embodiment 3 [Figure 14] Sequence diagram illustrating the scan operation of Embodiment 4 [Figure 15] Scanning process in the extended application of Embodiment 4 [Figure 16A] Table of capability information in Embodiment 5 [Figure 16B] Diagram of the display unit for the extended application in Embodiment 5 [Figure 17] Sequence diagram of the scan process operation in Embodiment 5 [Figure 18]Scan processing in the extended application of Embodiment 5 [Figure 19] Scan processing in the extended application of Embodiment 5 [Figure 20] Diagram of the display unit of the extended application of Embodiment 5 [Figure 21] Sequence diagram of the operation of the scan processing in Embodiment 5 [Figure 22] Scan processing in the extended application of Embodiment 5 [Figure 23] Sequence diagram explaining the scan operation in Embodiment 5 [Figure 24] Scan processing in the extended application of Embodiment 5
Mode for Carrying Out the Invention
[0009] Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings. Note that the following embodiments do not limit the present invention according to the claims, and not all combinations of the features described in the present embodiment are essential for the solution means of the present invention.
[0010] [Embodiment 1] Scanning system hardware configuration FIG. 1 is a block diagram showing the hardware configuration of a scan system. (Host computer) In FIG. 1, the host computer 101 is an example of an information processing apparatus, and has an input interface 110, a CPU 111, a ROM 112, a RAM 113, an external storage device 114, an output interface 115, and an input / output interface 116. Further, input devices such as a keyboard 118 and a pointing device 117 are connected to the input interface 110, and display devices such as a display unit 119 are connected to the output interface 115. The NETIF 120 is a network interface and controls data transfer with external devices via the network.
[0011] ROM112 stores the initialization program. The external storage device 114 is, for example, an HDD (Hard Disk Drive) or an SSD (Solid State Drive). The external storage device 114 stores application programs, the operating system (OS), and various other types of data. RAM 113 is used as work memory for executing various programs stored in the external storage device 114, enabling these programs to run within the host computer 101. In this embodiment, the CPU 111 performs processing according to the program code stored in the ROM 112, thereby executing the functions and flowchart-related processing described later in the host computer 101.
[0012] (Scanning device) The scanning device 102 is an example of an image processing device, and is connected to the host computer 101 via the input / output interface 198 of the scanning device 102 and the input / output interface 116 of the host computer 101. The connection between the input / output interface 198 of the scanning device 102 and the input / output interface 116 of the host computer 101 may be a wired network or a wireless network. The image processing device, the scanning device 102, includes a CPU 191, ROM 192, RAM 193, operation unit 194, reading unit 195, printing unit 196, NETIF 197, and input / output interface 198. The CPU 191 provides overall control over the scanning device 102. ROM192 is the memory that stores the program. RAM193 is memory used to temporarily store programs and image data. The reading unit 195 is a scanner that reads the image of the document. The printing unit 196 prints an image onto a sheet based on the image data. Note that the printing unit 196 is not mandatory. NETIF197 is a network interface that controls data transfer between external devices over a network. The image processing unit 190 performs various image editing processes on the input image data.
[0013] In this embodiment, the host computer 101 and the scanning device 102 are configured separately, but they may also be configured as a single information processing device. Furthermore, the reading settings screen and detailed settings screen described later are displayed on the display unit 119. In this embodiment, an electrophotographic digital multifunction device with multiple functions such as copying, printing, and faxing is used as an example of the scanning device. However, this embodiment is not limited to this; it can also be applied to devices using other processes, such as inkjet technology, or scanners that only read images. Also, the host computer 101 may be a desktop computer, a smartphone, or a laptop computer.
[0014] Scanning system software configuration Figure 2 schematically shows the software configuration of the scanning system. The software configuration in Figure 2 is stored in the external storage device 114 shown in Figure 1. Here, we will explain the scanning system assuming a host computer 101 equipped with Microsoft's Windows® 11 as the operating system. Note that standard drivers are also provided for Apple's macOS, and this technology can be applied to it as well. Figure 2(a) shows a typical configuration when the extended application 204 is not associated with the general-purpose scanning software 202 and the scanning device 102. Figure 2(b) shows the configuration when the extended application 204 is associated with the general-purpose scanning software 202 and the scanning device 102.
[0015] Scanning system software configuration (no associated extension applications) First, using Figure 2(a), we will describe the configuration of the scanning system when the extended application 204 is not associated. The scan application 201 is software that captures scanned content (image data). For example, this could be a document creation application or an image editing application. When the scan application 201 receives a scan request from the user, it issues a scan command to the OS. The scan command includes scan setting information to instruct the operation of the general-purpose scan software 202 and the scan device 102.
[0016] The scan application 201 can display a scan settings screen provided by either the general-purpose scan software 202, the OS, or the scan application 201 itself in order to execute a scan command. Furthermore, if the "Advanced Settings" button is pressed within the scan settings screen, the general-purpose scan software 202 will display an additional advanced settings screen. The scan settings screen and advanced settings screen will be described later using Figure 3. The advanced settings screen includes setting items (hereinafter also referred to as "control items") that indicate the configurable scan functions according to the capability information (configurable information) of the general-purpose scan software 202, and control items that indicate their setting values. The general-purpose scanning software 202 determines the scanning capability based on the scanning function information 203. Scan function information 203 is data indicating the scan function, which includes all configurable scan functions, their settings, and the mutual exclusion relationships between the settings. Scan function information 203 is included in the configuration file of the general-purpose scan software 202 and is placed on the external storage device 114 as an immutable file. Alternatively, scan function information 203 can be dynamically generated by the general-purpose scan software 202.
[0017] Specifically, the general-purpose scanning software 202 or OS can be configured to acquire attribute data of the scanning device 102 and generate scanning function information 203 according to the attribute information in the acquired attribute data. The general-purpose scanning software 202 acquires scanning function information 203 from the scanning device 102 and receives image data generated by scanning the document by the scanning device 102 using IPP (Internet Printing Protocol). If the scanning function information 203 is generated dynamically, the generated scanning function information 203 is editable. The attribute data of the scanning device acquired from the scanning device 102 includes attribute information indicating the functions that can be specified by the scanning device 102 (scanning device capabilities) and setting values related to that attribute information. This information is stored in RAM 113.
[0018] With this configuration, the general-purpose scan software 202 can be configured so that the user can specify the scan functions available on each connected scan device 102, depending on the connected scan device 102. In other words, even when scan devices with different functions or scan devices developed by different vendors are connected, the general-purpose scan software 202 can be configured so that the user can specify the scan functions available on each connected scan device. Furthermore, the general-purpose scan software 202 can generate scan instructions that can be interpreted by multiple scan devices from different vendors and output these scan instructions to each of the multiple scan devices from different vendors. Note that the vendor may be the manufacturer of the scan device 102. Here, the general-purpose scan software 202 is a standard class driver that performs scans based on a standard scan protocol called Mopria. The general-purpose scan software 202 acquires capability information of the connected scan device 102 and generates scan function information 203 based on that information so that the user can specify the scan functions supported by the connected scan device 102. However, the general-purpose scan software 202 does not support brightness adjustment functionality. This is because the brightness adjustment function is a proprietary feature of the scanning device vendor (scanning manufacturer).
[0019] • Brightness adjustment function The brightness adjustment function adjusts the brightness of the scanned image. By using this function to scan a document, the user can make the overall image data brighter or darker, allowing them to obtain the desired image data. The brightness adjustment function allows you to set the adjustment level. Automatic setting is also available, enabling the system to automatically acquire image data with the appropriate brightness. In this embodiment, an example is shown where the adjustment level is set within a range of 10 steps, but this is not the only way to set this function. A wider or narrower setting range may also be used.
[0020] Scanning system software configuration (with associated extension applications) Next, Figure 2(b) will be used to describe the configuration of the scanning system when the extended application 204 is associated. Note that the same configuration as in Figure 2(a) will not be explained. The extension application 204 is software that extends or supports the functionality of the general-purpose scanning software 202, and is also called a support application. The extension application 204 is software that is not pre-installed (not bundled) with the OS. Therefore, the user needs to operate the host computer 101 to download and install the extension application 204 from a server via the internet. Alternatively, it may be automatically installed based on the connection of the scanning device 102 to the host computer 101. Specifically, when the scanning device 102 is connected to the host computer 101, the OS obtains device identification information from the scanning device 102. The OS may download and install the extension application 204 corresponding to the obtained device identification information from a server via the internet. In other words, the general-purpose scanning software 202 and the extension application 204 are kept as separate files on the host computer 101.
[0021] The general-purpose scan software 202 and the extended application 204 may be updated and upgraded, but these update processes are performed at different times. In other words, the timing at which the host computer 101 acquires the general-purpose scan software 202 and the timing at which the extended application 204 is acquired are different. Also, the triggers for the host computer 101 to acquire the general-purpose scan software 202 and the triggers for the host computer 101 to acquire the extended application 204 are different. When the extended application 204 is installed, the OS associates the extended application 204 with the general-purpose scan software 202 and the scan device 102.
[0022] The extended application 204 described in this embodiment 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 extended application 204 also includes shared information 208 that can be accessed from all units in common. The shared information 208 is actually a file stored in the external storage device 114 or information stored on the RAM 113. The extended application 204 writes to and reads information from the shared information 208 by using the API (Application Program Interface) provided by the OS. The extended application 204 may terminate its operation after each unit has finished processing. In that case, the OS will start the extended application 204 each time a request to use each unit is received. Furthermore, the extended application 204 may cancel processing after each unit has finished processing. If canceled, the OS will delete the job that was in progress.
[0023] When the scan application 201 receives a scan request from the user, it issues a scan command to the OS. In this configuration, as in the configuration shown in Figure 2(a), the scan application 201 can display the scan settings screen. In this configuration, the detailed settings screen provided by the extension application 204 is displayed. Specifically, the detailed settings screen provided by the scan settings screen extension unit 205 of the extension application 204 is displayed. Furthermore, the scan settings screen extension unit 205 can save the detailed settings configured by the user to the shared information 208.
[0024] The extended application 204 includes an image data editing unit 207. The image data editing unit 207 acquires image data from the scanning device 102 and performs editing. The image data editing unit 207 acquires detailed setting information from the shared information 208 and performs image editing on the image data according to the detailed settings. The extended application 204 may also be configured to acquire image data acquired by the general-purpose scanning software 202 and perform image editing on the image data according to the detailed settings. In addition, even in the configuration of Figure 2(b), the user may not perform brightness adjustment. In that case, as in the configuration of Figure 2(a), the general-purpose scanning software 202 may issue a scan request instruction to the scanning device 102 without going through the extended application 204.
[0025] The extended application 204 includes a scan function extension unit 206. 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 the scan function extension unit 206 to add functions provided by the extended application 204. In addition, the scan function extension unit 206 can add functions supported by the scan device 102 but not by the general-purpose scan software 202 (such as brightness adjustment function), and add mutual exclusion relationships between scan function settings. The OS starts the scan function extension unit 206 when the extended application 204 is first associated with the scan device 102 and the general-purpose scan software 202. Furthermore, the OS may start the scan function extension unit 206 at other times, such as when the OS starts up.
[0026] Furthermore, the extended application 204 has a notification unit 209. The notification unit 209 can display a notification to the user in response to an error occurring in the scanning device 102, which is an image processing device. For example, if a read jam error occurs in the scanning device 102, the general-purpose scanning software 202 detects it, and the OS uses a notification function called a toast notification, which is a function of the OS, to display a message on the display unit 119. When the user presses this toast notification, the notification unit 209 of the extended application 204 is called by the OS, and the UI screen of the notification unit 209 is displayed. The UI screen of the notification unit 209 can display, for example, a detailed message about the scan jam error and instructions on how to clear the jam.
[0027] Furthermore, the configuration of the extended application 204 for realizing this embodiment is not limited to having all of the aforementioned functions (units), but may have only some of the functions or other functions. Also, the extended application 204 is sometimes simply called scan software. As described above, the extended application 204 can be said to have at least one of the following functions. The first is a function to display the settings screen (scan settings screen extension unit 205). The second feature is a function (image data editing unit 207) that edits image data according to detailed settings. The third feature is a function that extends the capabilities of the image data generation software (scan function extension unit 206). The fourth feature is a function (notification unit 209) that displays a screen in response to an error occurring in the scanning device 102.
[0028] <Scan Settings Screen / Advanced Settings Screen> Next, examples of the scan settings screen and detailed settings screen in this embodiment will be explained using Figure 3. Figure 3(a) shows the scan settings screen displayed by the scan application 201. Figure 3(b) shows the detailed settings screen displayed when the extended application 204 shown in Figure 2(a) is not present. Figure 3(c) shows the detailed settings screen displayed when the extended application 204 shown in Figure 2(b) is present. Note that the units and modules that display the scan settings screen are not limited to those described above. For example, the scan settings screen extension unit 205 may be configured solely to generate the display screen. In that case, the scan settings screen extension unit 205 sends 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 display screen acquired via the general-purpose scan software 202.
[0029] <Scan settings screen (scan application)> First, we will explain the scan settings screen displayed by the scan application 201 shown in Figure 3(a). Control 301 has objects that allow the user to set the scanner (the scanner used for reading) to scan the image data. Control 302 is an advanced settings button. When Control 302 is pressed, an additional scan screen is displayed by the general-purpose scan software 202 or the scan settings screen expansion unit 205. Control 303 is the scan start button, and control 304 is the scan cancel button.
[0030] <Advanced Settings Screen (General-Purpose Scan Software)> Next, we will describe the additional settings screen displayed by the general-purpose scanning software 202 when the extended application 204 shown in Figure 3(b) is not available. Control 305 indicates that the scanning destination can be set and that the document glass is selected. Control 306 is the setting completion button; when Control 306 is pressed, the system returns to the scan settings screen shown in Figure 3(a).
[0031] <Advanced Settings Screen (Scan Settings Screen Extension Unit)> Next, Figure 3(c) will be explained. Figure 3(c) is an additional settings screen displayed by the scan settings screen extension unit 205 when the extension application 204 is present. Unlike Figure 3(b), control 307, list 308, and controls 309 and 310 have been added. Control 307 is a button that allows you to select the brightness adjustment setting, and it indicates that "Automatic" is selected. List 308 shows the brightness adjustment settings when Control 307 is pressed. List 308 indicates that in addition to the currently selected "Automatic," there is also a "Manual" option. "Automatic" is a setting that automatically adjusts the brightness based on the scanned image. "Manual" is a setting where the user manually adjusts the brightness, by moving the bar on Control 309 left or right to adjust the brightness of the scanned image. Control 310 indicates the brightness level set by the user when “Manual” is selected in List 308. In subsequent embodiments, the behavior when “Automatic” is selected in List 308 will be described, but the behavior when “Manual” is selected and the user sets the brightness level is the same. In this embodiment, manual settings are configured using a bar, but input methods such as direct numerical input or buttons for selecting numerical values are also acceptable. Alternatively, a configuration that displays icons representing brightness and allows selection is also possible.
[0032] Here, we will explain why the scan settings differ between Figure 3(b) and Figure 3(c). The detailed settings screen is generated by referring to the scan capability generated based on the scan function information. However, the general-purpose scan software 202 does not support the brightness adjustment function, and therefore cannot add the brightness adjustment function to the scan function information. Furthermore, even if the scan function information originally included the brightness adjustment function, the general-purpose scan software 202 cannot interpret the brightness adjustment function included in the scan function information. Therefore, the brightness adjustment setting cannot be displayed on the detailed settings screen. However, the scan function expansion unit 206 is configured to add the brightness adjustment function to the scan function information 203, and the scan settings screen expansion unit 205 is configured to display the detailed settings screen by referring to the scan capability. With these configurations, the expansion application 204 can display the brightness adjustment setting on the detailed settings screen. Note that Figure 3(c) may also include additional expansion functions other than the brightness adjustment function.
[0033] [Editing process for scan function information: Scan function expansion unit] Here, using Figure 4, we will explain the processing flow in which the scan function expansion unit 206 edits the scan function information 203. Each step is realized by the execution of each unit, which is a program read from the external storage device 114 to the RAM 113 by the CPU 111.
[0034] In S401, the scan function expansion unit 206 acquires capability information from the scan device 102. The capability information consists of attribute information indicating the functions that can be specified on the scan device 102 and the setting values associated with that attribute information. Table 501 in Figure 5 shows an example of a list of capability information obtained from the scanning device 102. As shown in Table 501, the scanning device 102 can provide information on functions such as specifying the reading size, as well as configurable options for each function. In S402, the scan function expansion unit 206 retrieves a list of scan functions supported by the expansion application 204 from the shared information 208. The list of scan functions supported by the expansion application 204 is stored in the shared information 208 and contains all scan functions that the expansion application 204 can process and their settings. An example of the list of scan functions supported by the expansion application 204 is shown in Table 502 of Figure 5. The list of scan functions supported by the expansion application 204 may be updated due to updates to the expansion application 204, etc.
[0035] In S403, the scan function expansion unit 206 obtains scan function information 203 created by the general-purpose scan software 202 from the OS. Table 503 in Figure 5 shows an example of a list of scan functions supported by the general-purpose scan software 202. The scan function information 203 created by the general-purpose scan software 202 is created based on the capability information (Table 501 in Figure 5) obtained by the general-purpose scan software 202 from the scan device 102. The scan function information created by the general-purpose scan software 202 only includes the scan functions that the general-purpose scan software 202 supports from the capability information obtained from the scan device 102, so the functionality of the scan function information is limited. For example, the capability information obtained from the scan device 102 (Table 501 in Figure 5) includes a brightness adjustment function, but the general-purpose scan software 202 does not support the brightness adjustment function, and therefore the brightness adjustment function is not included in the scan function information. The scan function expansion unit 206 adds functions and options to the scan function information, enabling the expansion application 204 to compensate for the shortcomings of the general-purpose scan software 202. The scan function expansion unit 206 can also remove unnecessary functions and options from the scan function information created by the general-purpose scan software 202.
[0036] The following steps S404, S405, and S406 are processes that are repeatedly performed on the list of functions contained in the capability information acquired from the scanning device in S401. In this embodiment, these processes are repeatedly performed on the 11 types included in Table 501, from reading size: A4H to brightness adjustment: manual (level). In S404, the scan function expansion unit 206 determines whether the function / option being processed exists in the scan function information 203 generated by the general-purpose scan software 202. If the function / option being processed exists in the scan function information 203 (Yes in S404), the unit returns to the beginning of the loop. Specifically, it selects the next item from the functions / options of the scan function acquired from the scan device 102 and performs S404 again. If the last item from the functions / options of the capability information acquired from the scan device 102 is being processed, the unit exits the loop and terminates the flowchart in Figure 4. If the function / option being processed does not exist in the scan function information 203 (No in S404), the process proceeds to S405. In this embodiment, for example, the scan function of the scan device 102, "Scanning destination: document glass" shown in Table 501, also exists in Table 503, which is the scan function of the general-purpose scan software 202, so it is determined to be Yes in S404. On the other hand, “Reading size: A4H” shown in Table 501 is not present in Table 503, so it is determined to be No, and the process proceeds to S405.
[0037] In S405, the scan function expansion unit 206 determines whether the function / option being processed exists among the functions / options supported by the expansion application 204. If it is determined that the function / option being processed exists among the supported functions / options (Yes in S405), the CPU 111 proceeds to S406. If it is determined that the function / option being processed does not exist (No in S405), the process returns to S404, as in the case where Yes was determined in S404, or the main process shown in Figure 4 is terminated. In this embodiment, for example, if the function being processed is Brightness Adjustment: Automatic, it also exists in Table 502, which is the capability information of the expansion application 204, so it is determined to be Yes in S405, and the CPU 111 proceeds to S406. In S406, the scan function expansion unit 206 adds the function / option being processed to the scan function information 203. After processing in S406, either S404 is repeated, as in the case where Yes was determined in S404, or the main process shown in Figure 4 is terminated. As described above, the scan function expansion unit 206 adds functions and options that are not supported by the general-purpose scan software 202 but are supported by the scan device 102 and the expansion application 204 to the scan function information 203. Based on the scan function information edited by this process, the scan capabilities are generated. Furthermore, the scan setting screen expansion unit 205 generates a display screen based on the generated scan capabilities, thereby extending the functions not supported by the general-purpose scan software 202 and enabling the display of the detailed settings screen shown in Figure 3(c).
[0038] Scanning process sequence Next, using Figure 6, the sequence of the scan application 201, general-purpose scan software 202, extended application 204, and scan device 102 after the scan application 201 accepts the scan settings will be explained. Note that each step in Figure 6, except for the scan device 102, is performed by the CPU 111 reading the scan application 201, general-purpose scan software 202, and extended application 204 from the external storage device 114 into the RAM 113 and executing them. Each step of the scan device 102 in Figure 6 is realized by the CPU 191 of the scan device 102 reading the program stored in the ROM 192 or external storage device 199 into the RAM 193 and executing it.
[0039] In S601, the scan application 201 accepts scan settings from the user. The user can instruct the scan application 201 to configure scan settings by operating the pointing device 117 or the keyboard 118. In S602, the scan application 201 displays the scan settings screen shown in Figure 3(a) on the display unit 119. In S603, the scan application 201 accepts detailed setting instructions. The user can specify detailed settings by operating the pointing device 117 or keyboard 118 and selecting control 302. In S604, the scan application 201 requests the general-purpose scan software 202 to display detailed settings. In S605, the general-purpose scan software 202 requests the extended application 204 to display the detailed settings. As mentioned above, in the configuration shown in Figure 2(b), the general-purpose scan software 202 will display the detailed settings screen shown in Figure 3(c).
[0040] In S606, the scan settings screen extension unit 205 of the extended application 204 displays the detailed settings screen shown in Figure 3(c) on the display unit 119. This is because, as explained in Figure 4, the scan function extension unit 206 has added brightness adjustment settings to the scan function information. The scan settings screen extension unit 205 displays the detailed settings screen shown in Figure 3(c) on the display unit 119 by referring to the scan capability generated based on the added scan function information. In this embodiment, the extended application 204 supports only one resolution, 300 x 300 dpi, so there is no need for the user to select it, and it is not displayed on the detailed settings screen. Even if it is not selectable, it may be configured to display it on the detailed settings screen to make it clear to the user. In S607, the scan settings screen extension unit 205 accepts detailed settings. In this embodiment, as shown in Figure 3(c), the user selects: Scan destination: Document glass, Brightness adjustment: Automatic. The accepted settings are stored in RAM 113 by CPU 111.
[0041] In S608, the scan settings screen extension unit 205 receives confirmation that the detailed settings have been completed and instructs the system to write the received settings to the scan settings information. The user can signal the completion of the detailed settings by operating the pointing device 117 or keyboard 118 and selecting control 306. When writing to the scan settings information, it is also possible to configure the system to write items that have not been selected by the user, such as resolution. In S609, the extended application 204 sends a message to the general-purpose scanning software 202 indicating that the detailed settings have been completed. In the S610, the general-purpose scan software 202 sends a message to the scan application 201 indicating that the detailed settings have been completed. In S611, the scan application 201 receives a scan command. The user can initiate a scan by operating the pointing device 117 or keyboard 118 and selecting control 503.
[0042] In S612, the scan application 201 issues a scan command to the general-purpose scan software 202. In S613, the general-purpose scan software 202 issues a scan command to the extended application 204. In S614, the extended application 204 creates a scan command based on the scan configuration information written in S608. If items that were not selected by the user, such as resolution, are not written to the scan configuration information in S608, the extended application 204 may add them when creating the scan command in S614. Alternatively, it may be configured to operate with the default values of the scan device 102 without adding anything.
[0043] In step S615, the extended application 204 sends a scan command to the scanning device 102 to perform a scan. In S616, the scanning device 102 interprets the scan instruction command and executes the scan. During the scan, it performs the necessary image processing on the image data in accordance with the scan instruction. In this embodiment, if the scan settings shown in Figure 3(c) are configured, the image processing unit 190 performs brightness adjustment on the image data obtained by scanning, as described later. The reading unit 195 may also be configured to perform the reading operation while adjusting the brightness. In any case, image data adjusted to the specified brightness will be generated. In other words, image data adjusted to the specified brightness will be generated. In S617, the scanning device 102 sends the generated image data to the extended application 204. In S618, the extended application 204 sends the received image data to the general-purpose scanning software 202. In S619, the general-purpose scanning software 202 sends the received image data to the scanning application 201. In S620, the scan application 201 accepts image data. In S621, the scan application 201 displays the received image data.
[0044] [Scanning process: Extended application] Here, using Figure 7, we will explain the flow in which the extended application 204 performs the scan process. Each step is realized by the execution of each unit, which is a program read from the external storage device 114 to the RAM 113 by the CPU 111. In S701, the extended application 204 accepts a request to display detailed settings. In S702, the scan settings screen extension unit 205 of the extended application 204 displays the detailed settings screen shown in Figure 3(c) on the display unit 119. This is because, as explained in Figure 4, the scan function extension unit 206 has added brightness adjustment settings to the scan function information. The scan settings screen extension unit 205 displays the detailed settings screen shown in Figure 3(c) on the display unit 119 by referring to the scan capability generated based on the added scan function information.
[0045] In S703, the scan settings screen extension unit 205 determines whether the user has set a function. If the user has set a function (Yes in S703), the CPU 111 proceeds to S704; if the user has not set a function (No in S703), the CPU 111 proceeds to S705. In S704, CPU111 accepts the detailed settings, stores the accepted settings in RAM113, and then proceeds to S705 for processing. In S705, the scan settings screen extension unit 205 determines whether the user has given an instruction to finish the settings. If an instruction to finish the settings is given (Yes in S705), the CPU 111 accepts that the detailed settings have been completed, writes the accepted settings to the scan settings information, and proceeds to S706. If there is no instruction to finish the settings (No in S705), the CPU 111 returns to S703 and determines again whether the user has given any function settings. In S706, the extended application 204 sends a message to the general-purpose scan software 202 that the CPU 111 has finished configuring the detailed settings.
[0046] In S707, the extended application 204 determines whether there is a scan command from the general-purpose scan software 202. If there is a scan command (Yes in S707), the CPU 111 proceeds to S708; otherwise, it returns to S707 and determines again whether there is a scan command from the general-purpose scan software 202. In S708, the extended application 204 creates scan command instructions based on the scan configuration information written in S705. One way to create scan command instructions in S708 is to extend the standard protocol commands. This extension method involves writing dedicated commands in the extension area of the standard protocol commands. Furthermore, there are methods such as adding proprietary commands to the end of the standard protocol commands, or having the extension application 204 overwrite the standard protocol commands with its own command system. Furthermore, when issuing instructions from the extended application 204, the configuration may be such that instructions and communication are performed using a vendor-specific protocol, regardless of the standard protocol.
[0047] In S709, the extended application 204 sends a scan command to the scanning device 102 to perform a scan. In S710, the extended application 204 determines whether it has received all the image data from the scanning device 102. If all the image data has been received (Yes in S710), the CPU 111 proceeds to S711; otherwise (No in S710), it returns to S710 to determine whether all the image data has been transmitted from the scanning device 102. In step S711, the extended application 204 sends the received image data to the general-purpose scanning software 202 and terminates this process.
[0048] [Scanning process: Scanning device] Next, using Figure 8, we will explain the scan process flow of the scanning device 102 that receives a scan command from the extended application 204. Note that each step shown in the flowchart of Figure 8 is realized by the CPU 191 executing a program stored in RAM 192. In S801, CPU 191 receives scan instructions sent from extended application 204. In S802, the scan command received in S801 is analyzed and converted into a reading setting that allows the scanning device 102 to perform the reading process. In this embodiment, the scanning settings on the document glass are set to brightness adjustment: automatic and resolution: 300 x 300 dpi.
[0049] In S803, the CPU 191 determines the ASIC of the image processing unit 190 to be used to perform the scan according to the reading settings converted in S802, and configures the ASIC. In S804, the CPU 191 sends a reading instruction to the reading unit 195 according to the reading settings. In this embodiment, an instruction is sent to perform reading on the document glass. In S805, the CPU 191 acquires image data from the reading unit 195. In S806, the CPU 191 and the image processing unit 190 perform image processing on the received image data. In this embodiment, the resolution is converted to 300 x 300 dpi and brightness is adjusted. Brightness adjustment is performed by analyzing the image data using the ASIC configured in S803 and automatically adjusting it to an appropriate brightness. If the reading unit 195 is capable of reading at 300 x 300 dpi, the reading unit 195 may acquire the image data at 300 x 300 dpi, and S806 may not perform image processing. In this embodiment, brightness adjustment was performed in the image processing unit 190, but the reading unit 195 may also be configured to perform the reading operation while adjusting the brightness.
[0050] In S807, CPU 191 saves image data to external storage device 199. In S808, CPU191 determines whether the scanning process for all pages has finished. If it determines that it has not finished (S808 is No), CPU191 proceeds to S805 and executes the scanning process for the next page. If it determines that it has finished (S808 is Yes), CPU191 proceeds to S809. In S809, the CPU 191 and the image processing unit 190 convert the image data saved in S807 according to the transmission format setting received in S801. In this embodiment, the transmission format is not included in the scan instruction received from the extended application 204. Therefore, it is converted to the default JPEG of the scanning device 102, but the transmission format to be converted is not limited to this; any format that can be handled by the information processing device is acceptable. In S810, the converted image data is sent to the extended application 204, and all processing is completed.
[0051] As described above, in this embodiment, the scan setting screen extension unit 205 of the extension application 204 modifies the scan function information 203 based on the general-purpose scan software 202, the extension application 204, and the capability information of the scan device 102. Furthermore, when the user requests a detailed settings screen, the settings screen is displayed based on the scan capability generated from the scan function information 203, allowing the user to adjust the brightness. Subsequently, when the scan device 102 receives a scan instruction that reflects the brightness adjustment, it performs a reading process that generates image data adjusted to the specified brightness. Through this series of processes, the scan device 102 can be equipped with a brightness adjustment function, and the brightness adjustment function can be provided to the user.
[0052] In this embodiment, the detailed settings screen shown in Figure 3(c) was used under the configuration shown in Figure 2(b) for the explanation, but the present invention is not limited thereto. For example, when a request to display detailed settings is made to the general-purpose scan software 202 in S604, the general-purpose scan software 202 may display the detailed settings screen shown in Figure 3(b). Subsequently, after the detailed settings shown in Figure 3(b) are completed, the general-purpose scan software 202 requests the extended application 204 to display an additional detailed settings screen. Next, the extended application 204 may display an additional detailed settings screen that allows for brightness adjustment settings. Furthermore, while the configuration is such that scan commands to the extended application 204 are issued from the general-purpose scan software 202, this is not limited to this. For example, the scan application 201 could issue commands to the extended application 204, or a control for issuing scan commands could be placed on the detailed settings screen, allowing the user to directly issue commands to the extended application 204. Additionally, the image data could be transferred directly from the extended application 204 to the scan application 201 without going through the general-purpose scan software 202, or from the scan device 102 to the scan application 201. Moreover, the received image data could be saved to the external storage device 114, and only the file path information of the save location could be transferred. Furthermore, in this embodiment, when there are multiple image data, the method is to receive all image data before passing it on, but it is also possible to configure the system to pass on transmitted image data as it is received.
[0053] [Embodiment 2] Embodiment 2 of the present invention will now be described. In Embodiment 1 described above, first, the scanning device 102 interprets the scan setting information, including brightness adjustment, and performs the scan process with the brightness adjustment setting specified on the scanning device 102. However, some scanning devices may not be able to perform brightness adjustment. In such cases, even if the extended application supports it and can generate scan setting information including brightness adjustment specifications, it may not be possible to have the scanning device perform the brightness adjustment process.
[0054] Therefore, in Embodiment 2, first, it is determined from the capability information of the scanning device whether or not brightness adjustment is possible. Next, if brightness adjustment is possible with the scanning device, scan setting information including the brightness adjustment setting specified by the user is generated and passed to the scanning device. On the other hand, if brightness adjustment is not possible with the scanning device, scan setting information without the brightness adjustment setting is generated and passed to the scanning device. After that, the brightness of the image data read by the scanning device is adjusted using the extended application. This makes it possible to provide the user with image data adjusted to the desired brightness even if brightness adjustment is not possible with the scanning device. In the following, we will only describe the differences from Embodiment 1.
[0055] First, assume that the scanning device 102 is a scanning device that does not support brightness adjustment. The extended application 204 has a different configuration from the extended application 204 of Embodiment 1. The scanning function extension unit 206 adds a brightness adjustment specification to the scanning function information 203 even if there is no brightness adjustment in the capability information acquired from the scanning device, as long as there is a unit in the extended application 204 that performs such adjustment processing on image data. The image data editing unit 207 performs brightness adjustment processing on the image data received from the scanning device 102 based on the brightness setting of the brightness adjustment specification function set by the user. Details will be described later.
[0056] [Editing process for scan function information: Scan function expansion unit] The scan function information editing process by the scan function extension unit 206 in Embodiment 2 will be explained using Figure 9. Steps common to both Figure 4 and this embodiment are given the same numbering and their explanations are omitted; the differences will be explained primarily. Note that each step in Figure 9 is realized by the execution of each unit read from the external storage device 114 to the RAM 113 by the CPU 111. When the scan function expansion unit 206 completes the repetitive processing from S404 to S406, it proceeds to processing S901. At this point, the scan device 102 does not support the brightness adjustment function. Therefore, the scan function information 203 after the completion of processing S404 to S406 does not include the brightness adjustment function.
[0057] Therefore, S901 and S902 perform a process to add functions to the scan function information according to the modules that the extended application 204 has, even though they are not included in the capability information returned from the scan device 102. Specifically, in S901, the scan function expansion unit 206 refers to the capability information of the scanning device (Table 501 in Figure 5) and the scan function information 203 to determine whether the expansion application 204 has a module that performs brightness adjustment processing. If it is determined that there is a module that performs brightness adjustment processing (Yes in S901), the process proceeds to S902; if it is determined that there is no such module (No in S901), the process ends. In this embodiment 2, since the image data editing unit 207 can perform brightness adjustment processing, it is determined that the expansion application 204 has a module that performs brightness adjustment processing. Next, in S902, the scan function expansion unit 206 adds a brightness adjustment function and then terminates this process.
[0058] As described above, the scan function expansion unit 206 first adds functions and options that are not supported by the general-purpose scan software 202 but are supported by the scan device 102 and the expansion application 204 to the scan function information 203. Then, it determines whether the expansion application 204 can perform brightness adjustment processing, and if it can, it adds the brightness adjustment function to the scan function information. This process makes it possible to display the detailed settings screen shown in Figure 3(c) by generating a display screen based on the scan function information 203 using the scan setting screen expansion unit 205, even if the scan device 102 does not support the brightness adjustment function.
[0059] Scanning process sequence Next, using Figure 10, the sequence of the scan application 201, general-purpose scan software 202, extended application 204, and scan device 102 after the scan application 201 accepts the scan settings will be explained. Note that each step in Figure 10 other than the scan device 102 is performed by the CPU 111 reading the scan application 201, general-purpose scan software 202, and extended application 204 from the external storage device 114 into RAM 113 and executing them. Each step of the scan device 102 in Figure 10 is realized by the CPU 191 of the scan device 102 reading the program stored in ROM 192 or external storage device 199 into RAM 193 and executing it.Hereafter, steps common to Figure 6 will be given the same number and their explanations will be omitted, and the differences will be explained in detail.
[0060] In S1001, the extended application 204 creates a read command. The detailed operation at this time is explained in the flowchart in Figure 11. In step S1002, the image data editing unit 207 performs brightness adjustment on the received image data. This embodiment automatically adjusts the brightness of the image data to the optimal level. Here, using Figure 11, we will explain the flow in which the extended application 204 performs the scan process. Steps common to Figure 7 are given the same number and their explanations are omitted, while the differences will be explained primarily. Each step is realized by the execution of each unit read from the external storage device 114 to the RAM 113 by the CPU 111.
[0061] [Scanning process: Extended application] In S1101, the extended application 204 obtains capability information for the scanning device 102 from the shared information 208. If capability information for the scanning device 102 is not available, the scanning function extension unit 206 may request capability information from the scanning device 102 and save it to the shared information 208. The extended application 204 determines from the acquired capability information and setting information whether there are any function settings that are not supported by the scanning device 102. If it is determined that a function not supported by the scanning device 102 is set (Yes in S1101), the CPU 111 proceeds to S1102. In Embodiment 2, since the brightness adjustment function not supported by the scanning device 102 is set, the process proceeds to S1102. If it is determined that no function not supported by the scanning device 102 is set (No in S1101), the CPU 111 proceeds to S708. Next, in S1102, a scan command is created from the extended application 204, excluding unsupported function settings. In this embodiment, the brightness adjustment function is not included in the scan command. Then the process proceeds to S709.
[0062] Next, we will explain the process that follows when S710 determines that it has received the previous image data. In S1103, the extended application 204 determines from the configuration information whether there are any settings that need editing in the image data editing unit 207. If it is determined that there are settings that need editing (Yes in S1103), the CPU 111 proceeds to S1104. In Embodiment 2, a brightness adjustment function that the scanning device 102 cannot execute is set, so the process proceeds to S1104. On the other hand, if it is determined that there are no settings that need editing (No in S1103), the CPU 111 proceeds to S711. In S1104, the image data editing unit 207 automatically adjusts the brightness of the received image data to the optimal level based on the brightness adjustment function settings configured in S703, and then proceeds to processing in S711.
[0063] In this embodiment, function settings not supported by the scanning device were excluded from the scan instruction command. However, even if such a function were included in the scan instruction command, the scanning device would not be able to interpret the unsupported instruction command and therefore would not be able to execute the function. For this reason, unsupported functions may be included in the scan instruction command without being excluded. As described above, in Embodiment 2, even if the scanning device does not support a brightness adjustment function, it is possible to provide the user with a brightness adjustment function.
[0064] [Embodiment 3] Embodiment 3 of the present invention will now be described. In Embodiments 1 and 2 described above, the extended application 204 and the scanning device 102 are configured to communicate with each other. In Embodiment 3, the general-purpose scanning software 202 interacts with the scanning device 102, and the extended application 204 is configured to perform only scan command extensions and image editing. In the following, we will only describe the differences from Embodiments 1 and 2.
[0065] Scanning process sequence (command extension) Figure 12 illustrates the sequence of the scan application 201, general-purpose scan software 202, extended application 204, and scan device 102 after the scan application 201 receives the scan settings. Steps common to both Figure 6 and Figure 12 are given the same numbering and their explanations are omitted, while the differences are primarily explained. Note that each step in Figure 12, except for the scan device 102, is performed by the CPU 111 reading the scan application 201, general-purpose scan software 202, and extended application 204 from the external storage device 114 into the RAM 113 and executing them. Each step of the scan device 102 in Figure 12 is achieved by the CPU 191 of the scan device 102 reading a program stored in the ROM 192 or external storage device 199 into the RAM 193 and executing it.
[0066] In S1201, the general-purpose scan software 202 creates a scan command. At this time, functions that the general-purpose scan software 202 does not support are not included in the scan command. In S1202, the general-purpose scan software 202 passes the created scan command to the extended application 204. In S1203, the extended application 204 extends the command by adding instructions for functions not supported by the general-purpose scan software 202 to the received scan instruction command or by modifying existing instructions. In this embodiment, in S1201, since the scan instruction command created by the general-purpose scan software 202 does not include brightness adjustment settings, brightness adjustment settings are added. In S1204, the extended application 204 passes the extended scan command to the general-purpose scan software 202. In step S1205, the general-purpose scan software 202 sends a scan command to the scan device 102 and performs the scan command. In S1206, the general-purpose scanning software 202 receives image data from the scanning device 102.
[0067] Scanning process sequence (image editing) Next, using Figure 13, we will explain the sequence of events when the general-purpose scan software 202 and the scan device 102 communicate and image editing is performed using an extended application. Steps common to both Figure 12 and Figure 13 are given the same numbering and their explanations are omitted; the differences will be explained primarily. Note that each step in Figure 13 other than that of the scan device 102 is performed by the CPU 111 reading the scan application 201, the general-purpose scan software 202, and the extended application 204 from the external storage device 114 into the RAM 113 and executing them. Each step of the scan device 102 in Figure 13 is realized by the CPU 191 of the scan device 102 reading a program stored in the ROM 192 or external storage device 199 into the RAM 193 and executing it.
[0068] In S1301, the general-purpose scanning software 202 transmits the received image data to the extended application 204. In S1002, the extended application 204 performs image editing. In this embodiment, brightness adjustment is performed on the received image data based on the brightness adjustment settings configured in the same way as in S1104 in Figure 11. In S1302, the extended application 204 sends the edited image data to the general-purpose scanning software 202.
[0069] As described above, in this embodiment, the extended application 204 extends the brightness adjustment specification command, thereby enabling the scanning device 102 to implement a brightness adjustment function, and making it possible to provide the user with a brightness adjustment function.
[0070] [Embodiment 4] Embodiment 4 of the present invention will now be described. In Embodiments 1 to 3 described above, the commands used in the standard protocol were extended and configured to communicate with the scanning device 102. Embodiment 4 describes a configuration in which the standard protocol commands are not extended, and functions supported only by the extended application 204 are communicated with the scanning device 102 using separate commands. In the following, we will only describe the differences from the previously described embodiment.
[0071] Scanning process sequence (sending separate commands) Figure 14 illustrates the sequence of the scan application 201, general-purpose scan software 202, extended application 204, and scan device 102 after the scan application 201 accepts the scan settings. Note that each step in Figure 14, except for the scan device 102, is performed by the CPU 111 reading the scan application 201, general-purpose scan software 202, and extended application 204 from the external storage device 114 into the RAM 113 and executing them. Each step of the scan device 102 in Figure 14 is achieved by the CPU 191 of the scan device 102 reading a program stored in the ROM 192 or external storage device 199 into the RAM 193 and executing it. Steps common to both Figure 6 and Figure 14 are given the same numbering, their explanations are omitted, and the differences are primarily explained.
[0072] In S1401, the general-purpose scan software 202 creates a standard scan instruction command in accordance with the standard protocol. At this time, functions not supported by the standard protocol are not included in the scan instruction command. In S1402, the extended application 204 creates an extended scan command for features that are supported only by the extended application 204. In S1403, the extended application 204 sends a standard scan instruction command to the scanning device 102 and performs a scan instruction. In S1404, the extended application 204 sends an extended scan command to the scanning device 102 and performs a scan command. In S1405, the scanning device 102 interprets the received standard scan instruction command and extended scan instruction command, respectively, and executes the scan process.
[0073] [Scanning process: Extended application] Here, using Figure 15, we will explain the flow in which the extended application 204 performs the scan process. Each step is realized by the execution of each unit read from the external storage device 114 to the RAM 113 by the CPU 111. Steps common to Figure 7 are given the same number and their explanations are omitted, while the differences will be explained in detail. In S1501, the extended application 204 creates a standard scan instruction command that conforms to the standard protocol. In S1502, the extended application 204 creates an extended scan command for features not supported by the standard protocol. In S1503, the extended application 204 sends the standard scan instruction command created in S1501 to the scanning device 102. In S1504, the extended application 204 sends the extended scan instruction command created in S1502 to the scanning device 102. As described above, in Embodiment 4, the extended application can provide the user with a brightness adjustment function by sending a separate scan command for functions not supported by the standard protocol.
[0074] [Embodiment 5] Embodiment 5 of the present invention will be described below. Embodiment 5 describes a method that allows the user to perform a scan while viewing a preview image and confirming what kind of image data can be obtained depending on the brightness adjustment setting. Below, we will refer to Figures 16A and 16B (hereinafter collectively referred to as "Figure 16") and explain only the differences from the previously described embodiment.
[0075] Figure 16(a) shows an example of a list of capability information obtained from the scanning device 102 in this embodiment, as Table 1601. As shown in Table 1601, the scanning device 102 has obtained information that the preview function is supported (1603). As shown in Table 1602 in Figure 16(b), the extended application 204 also supports preview (1604).
[0076] Figure 16(c) shows an example of the detailed settings screen where the preview function is available. Figure 16(c) shows the area 1605 that displays the preview image and the control 1606 that instructs the user to perform the preview.
[0077] Scanning process sequence (preview) Using Figure 17, the sequence of the scan application 201, general-purpose scan software 202, extended application 204, and scan device 102 when displaying a preview will be explained. Note that each step in Figure 17 other than the scan device 102 is performed by the CPU 111 reading the scan application 201, general-purpose scan software 202, and extended application 204 from the external storage device 114 into RAM 113 and executing them. Each step of the scan device 102 in Figure 17 is realized by the CPU 191 of the scan device 102 reading the program stored in ROM 192 or external storage device 199 into RAM 193 and executing it. Steps common to Figure 6 are given the same number and their explanations are omitted, and the differences will be explained mainly.
[0078] In S1701, the extended application 204 accepts a preview display. The user can initiate the preview display by operating the pointing device 117 or keyboard 118 to select control 1606. In S1702, the extended application 204 sends a preview command to the scanning device 102 and issues a scan command for preview. The scan command is created based on the settings received at this point. In this embodiment, a scan command including the received brightness adjustment is created. In S1703, the scanning device 102 interprets the received preview instruction command and executes the scan process. In this embodiment, the scan process will be performed with the instructed brightness adjustment. Next, in S1704, the scanning device 102 sends the generated image data to the extended application 204. In S1705, the extended application 204 displays the received preview image.
[0079] [Scanning process: Extended application] Here, using Figure 18, we will explain the flow in which the extended application 204 performs the scan process. Each step is realized by the execution of each unit read from the external storage device 114 to the RAM 113 by the CPU 111. Steps common to Figure 7 are given the same number and their explanations are omitted, while the differences are mainly explained.
[0080] In S1801, the scan settings screen extension unit 205 determines whether the user has requested a preview display. If a preview display request has been made (Yes in S1801), the process proceeds to S1802; otherwise (No in S1801), the process proceeds to S705. In S1802, the extended application 204 creates a preview image instruction command based on the configuration information stored in S704. In S1802, one way to create preview image instruction commands is to extend standard protocol commands, similar to how scan instruction commands are created. This extension method involves writing dedicated commands in the extension area of the standard protocol commands. Furthermore, it includes methods such as adding proprietary commands to the end of standard protocol commands, or having the extension application 204 overwrite standard protocol commands with its own command system. Furthermore, when issuing instructions from the extended application 204, the configuration may be such that instructions and communication are performed using a vendor-specific protocol, regardless of the standard protocol. Next, in S1803, the extended application 204 sends a preview image instruction command to the scanning device 102 to perform a scan.
[0081] In S1804, the extended application 204 determines whether it has received all of the preview image data from the scanning device 102. If it has received all of the preview image data (Yes in S1804), it proceeds to S1805; otherwise (No in S1804), it returns to S1804 to determine whether it has received the preview image data from the scanning device 102. In S1805, the extended application 204 displays the received preview image data. In this embodiment, the preview image is generated using the same processing as the actual image data, but a configuration that generates image data specifically for previewing is also acceptable. For example, to speed up the preview display, methods such as lowering the resolution or increasing the compression ratio to reduce the image size can be used.
[0082] Furthermore, the preview image may be discarded after the S608's detailed settings are completed or when the detailed settings are canceled, or it may be retained until the final image data is acquired for the purpose of redisplaying it when detailed settings are accepted again.
[0083] Next, we will describe how to update the preview image in the image data editing unit 207 of the extended application 204 if image processing is possible in the image data editing unit 207 after the preview image has been displayed and the settings have been changed. In this case, it is not necessary to perform another scan with the scanning device 102, and although it differs from the actual final image data, an image of the output can be easily and quickly provided to the user. For example, with brightness adjustment as in this embodiment, it is possible to visualize how the image will change by changing the setting value.
[0084] [Preview image update process: Extended application] Figure 19 illustrates the flow in which the extended application 204 updates the preview image. Each step is realized by the execution of each unit read from the external storage device 114 to the RAM 113 by the CPU 111. Steps common to both Figure 18 and Figure 18 are given the same numbering and their explanations are omitted; the differences are the main focus of this explanation. In S1901, the extended application 204 determines whether the preview image has already been displayed. If it has been displayed (No in S1901), the process proceeds to S1801; otherwise, the process proceeds to S1902. In S1902, the extended application 204 determines whether the setting change function received in S703 can be processed by the image data editing unit 207. If it can be processed by the image data editing unit (Yes in S1902), the process proceeds to S1903. If it cannot be processed by the image data editing unit (No in S1902), the process proceeds to S1801. In this embodiment, brightness adjustment can be processed by the image data editing unit 207, so the process proceeds to S1903. In S1903, the image data editing unit 207 performs image processing on the preview image. In S1904, the extended application 204 displays the preview image data after image processing.
[0085] Next, we will describe a configuration in which, after displaying the preview image, if the user decides to use the previewed image data as is, the system does not perform another scan, but instead passes the preview image to the actual scan application 201.
[0086] <Advanced Settings Screen> Figure 20 shows an example of a detailed settings screen where a preview image can be saved. Figure 20 displays Control 2001, which is used to instruct the user to save the preview image. When Control 2001 is pressed, the process of saving the preview image is executed.
[0087] Scanning process sequence (using preview image data) Using Figure 21, the sequence of the scan application 201, general-purpose scan software 202, extended application 204, and scan device 102 when saving a preview will be explained. Note that each step in Figure 21 other than the scan device 102 is performed by the CPU 111 reading the scan application 201, general-purpose scan software 202, and extended application 204 from the external storage device 114 into RAM 113 and executing them. Each step of the scan device 102 in Figure 21 is realized by the CPU 191 of the scan device 102 reading the program stored in ROM 192 or external storage device 199 into RAM 193 and executing it. Steps common to Figure 17 are given the same number and their explanations are omitted, and the differences will be explained mainly.
[0088] The S1704 accepts scanned images. In S2101, the extended application 204 accepts the saving of a preview image. The user can instruct the system to save the preview image by operating the pointing device 117 or keyboard 118 and selecting control 2001. Upon receiving the instruction to save, the extended application 204 passes the image data to the general-purpose scanning software 202. The general-purpose scanning software 202 then passes the image data to the scanning application 201, allowing the scanning application 201 to handle the image data.
[0089] [Scanning process: Extended application] Here, using Figure 22, we will explain the flow in which the extended application 204 performs the scan process. Each step is realized by the execution of each unit read from the external storage device 114 to the RAM 113 by the CPU 111. Steps common to Figure 18 are given the same number and their explanations are omitted, while the differences are mainly explained. In S2201, the scan settings screen extension unit 205 determines whether the user has requested to save a preview image. If there is a request to save a preview image (Yes in S2201), the process proceeds to S711; if there is no request to save a preview image (No in S2201), the process proceeds to S705. S711 sends the preview image to the general-purpose scanning software 202.
[0090] Next, we will describe a configuration in which the preview is displayed using image data that has been pre-stored internally by the extended application 204, rather than using the actual document data as the preview image. By using pre-stored image data, although it differs from the actual image data, it is possible to provide the user with an image of the output easily and quickly without the need for scanning. For example, with brightness adjustment as in this embodiment, it is possible to visualize how the image will change by changing the setting value.
[0091] Scanning process sequence (utilization of saved image data) Using Figure 23, the sequence of the scan application 201, general-purpose scan software 202, extended application 204, and scan device 102 when displaying a pre-held preview image will be explained. Note that each step in Figure 23 other than the scan device 102 is performed by the CPU 111 reading the scan application 201, general-purpose scan software 202, and extended application 204 from the external storage device 114 into RAM 113 and executing them. Each step of the scan device 102 in Figure 23 is realized by the CPU 191 of the scan device 102 reading a program stored in ROM 192 or external storage device 199 into RAM 193 and executing it. Steps common to Figure 17 are given the same number and their explanations are omitted, and the differences will be explained mainly.
[0092] In S2301, the extended application 204 displays a preview image corresponding to the received settings. The preview image displayed at this time may be configured to either keep multiple separate preview images corresponding to various settings and display the image that matches the settings, or to perform image processing on a specific preview image data each time and then display it.
[0093] [Scanning process (preview image update): Extended application] Figure 24 illustrates the flow in which the extended application 204 updates the preview image. Each step is realized by the execution of each unit read from the external storage device 114 to the RAM 113 by the CPU 111. Steps common to both Figure 18 and Figure 18 are given the same numbering and their explanations are omitted; the differences are the main focus of this explanation. In S2401, the extended application 204 determines whether the preview has already been displayed. If the preview has already been displayed (Yes in S2401), the process proceeds to S2402; otherwise (No in S2401), the process proceeds to S1801. In S2402, extended application 204 updates and displays the preview image according to the settings. If it is determined in S1801 that the user has requested a preview display (if the answer in S1801 is Yes), the process proceeds to S2403. In S2403, extended application 204 displays a preview image according to the settings. As described above, in Embodiment 6, the preview image is displayed in the extended application. By changing the preview image according to the settings, it becomes possible to provide the brightness adjustment function in a way that allows the user to easily visualize the final product.
[0094] (Other examples) The present invention can also be realized by supplying a program that implements one or more of the functions of the above-described embodiments to a system or device via a network or storage medium, and by having one or more processors in the computer of that system or device read and execute the program. It can also be realized by a circuit (e.g., an ASIC) that implements one or more functions. This embodiment includes the following programs, methods, and configurations. (Program 1) A program that supports the functions of general-purpose scanning software that can be used in common with image processing devices provided by multiple manufacturers, to the computer The image processing device displays a screen that accepts settings for adjusting the brightness of the image it reads. A program characterized by causing the image processing device to perform a scan according to the settings received on the display screen. (Program 2) The program according to Program 1, characterized in that the display screen that accepts the above settings changes the items to be displayed based on the scanning capability of the image processing device. (Program 3) The program according to Program 2, characterized in that the aforementioned settings include a setting to automatically adjust the brightness level of the image to be read. (Program 4) The program according to Program 2, characterized in that the aforementioned setting includes a setting that allows the user to manually adjust the brightness level of the image to be read. (Program 5) The system determines whether the brightness adjustment settings received can be implemented by the image processing device. The program according to any one of programs 1 to 5, characterized in that, if it is determined that the received settings cannot be implemented by the image processing device, it causes the scanned and acquired image data to perform a brightness adjustment process on the image based on the received settings. (Program 6) The brightness adjustment setting received above is determined to be implementable by the reading device. The program according to Program 5, characterized in that, if it is determined that the received settings cannot be implemented by the image processing device, the image processing device outputs an instruction command that does not include an instruction for brightness adjustment. (Program 7) A program according to any one of programs 1 to 6, characterized in that the reading instruction is output to the image processing device via the general-purpose scanning software. (Program 8) When issuing a read instruction to the image processing device that performs the scan, A program as described in any of Programs 1 to 7, characterized by sending instruction commands that extend the instruction commands of the standard protocol. (Program 9) A program according to any one of programs 1 to 7, characterized in that, when issuing a read instruction to the image processing device that performs the scan, it does not send a standard protocol instruction command, but instead sends a proprietary instruction command. (Program 10) A program according to any one of programs 1 to 7, characterized in that, when issuing a read instruction to the image processing device that performs the scan, it sends an extended instruction command in addition to the instruction command of the standard protocol. (Program 11) A program according to any one of programs 1 to 10, characterized in that, based on the settings received, it outputs a read command to the image processing device and displays the image read by the image processing device as a preview image on the display screen. (Program 12) The program according to program 11, characterized in that it sends a preview image instruction command when causing the image processing device to output a read instruction. (Program 13) The program according to program 11 or 12, characterized in that the preview image is saved or accepted on the display screen. (Program 14) A program according to any of programs 11 to 13 that displays the image data saved based on the settings received on the display screen as a preview image on the display screen. (Program 15) The program according to program 14, characterized in that it updates the preview image based on the settings received. (Method 1) A control method for an information processing device having general-purpose scanning software that can be used in common with image processing devices provided by multiple manufacturers, and an application that supports the functions of the general-purpose scanning software, A display step that displays a display screen that accepts settings for adjusting the brightness of the image read by the image processing device, Output process: Outputs a read command to the image processing device to perform a scan according to the settings received on the display screen. A control method characterized by having the following features. (Composition 1) An information processing device having general-purpose scanning software that can be used in common with image processing devices provided by multiple manufacturers, and an application that supports the functions of the general-purpose scanning software, A display means that displays a display screen that accepts settings for adjusting the brightness of an image read by the image processing device, Output means that outputs a reading instruction to the image processing device to perform a scan according to the settings received on the display screen. An information processing device characterized by having the following features. [Explanation of Symbols]
[0095] 102 Scanning device 111,191 CPU 112,192 ROM 113,193 RAM 119 Display section 201 Scanning Application 202 General-purpose scanning software 203 Scan Function Information 204 Extended Applications 102 Scanning device
Claims
1. A program that supports the functions of general-purpose scanning software that can be used in common with image processing devices provided by multiple manufacturers, to the computer The image processing device displays a screen that accepts settings for adjusting the brightness of the image it reads. A program characterized by causing the image processing device to output a read command to perform a scan according to the settings received on the display screen.
2. The program according to claim 1, characterized in that the display screen that accepts the above settings changes the items to be displayed based on the scanning capability of the image processing device.
3. The program according to claim 2, characterized in that the aforementioned settings include a setting to automatically adjust the brightness level of the image to be read.
4. The program according to claim 2, characterized in that the aforementioned settings include a setting that allows the user to manually adjust the brightness level of the image to be read.
5. The system determines whether the brightness adjustment settings received can be implemented by the image processing device. The program according to claim 1, characterized in that, if it is determined that the received settings cannot be implemented by the image processing device, it causes the scanned and acquired image data to perform a brightness adjustment process on the image based on the received settings.
6. The brightness adjustment setting received above is determined to be implementable by the reading device. The program according to claim 5, characterized in that, if it determines that the received settings cannot be implemented by the image processing device, it causes the image processing device to output an instruction command that does not include an instruction for brightness adjustment.
7. The program according to claim 1, characterized in that it outputs the reading instruction to the image processing device via the general-purpose scanning software.
8. When issuing a read instruction to the image processing device that performs the scan, The program according to claim 1, characterized in that it causes the program to send instruction commands that are extensions of instruction commands of a standard protocol.
9. The program according to claim 1, characterized in that, when issuing a read instruction to the image processing device that performs the scan, it does not send a standard protocol instruction command, but instead sends a proprietary instruction command.
10. The program according to claim 1, characterized in that, when issuing a read instruction to the image processing device that performs the scan, it sends an extended instruction command in addition to the instruction command of the standard protocol.
11. The program according to claim 1, characterized in that it outputs a read command to the image processing device based on the settings received, and displays the image read by the image processing device as a preview image on the display screen.
12. The program according to claim 11, characterized in that it transmits a preview image instruction command when causing the image processing device to output a read instruction.
13. The program according to claim 11, characterized in that the preview image is saved or accepted on the display screen.
14. The program according to claim 1, characterized in that it displays saved image data as a preview image on the display screen based on the settings received on the display screen.
15. The program according to claim 14, characterized in that it updates the preview image based on the received settings.
16. A control method for an information processing device having general-purpose scanning software that can be used in common with image processing devices provided by multiple manufacturers, and an application that supports the functions of the general-purpose scanning software, A display step that displays a display screen that accepts settings for adjusting the brightness of the image read by the image processing device, Output process: Outputs a read command to the image processing device to perform a scan according to the settings received on the display screen. A control method characterized by having the following features.
17. An information processing device having general-purpose scanning software that can be used in common with image processing devices provided by multiple manufacturers, and an application that supports the functions of the general-purpose scanning software, A display means that displays a display screen that accepts settings for adjusting the brightness of an image read by the image processing device, Output means that outputs a reading instruction to the image processing device to perform a scan according to the settings received on the display screen. An information processing device characterized by having the following features.
Citation Information
Patent Citations
Server system and application
JP2021033526A