Program, control method of information processing apparatus, and information processing apparatus

A program and extension application allow users to adjust scanned image sharpness, overcoming the limitations of standard drivers by supporting manufacturer-specific functions, thereby improving image quality.

JP2025163869APending Publication Date: 2025-10-30CANON KK
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
JP2024067463
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Filing Date
2024-04-18
Publication Date
2025-10-30

AI Technical Summary

Technical Problem

The standard driver in Windows OS does not support manufacturer-specific functions such as sharpness adjustment, preventing users from utilizing this feature when scanning documents.

Method used

A program that supports a general-purpose scan software and an extension application, allowing the display of a setting screen for adjusting scanned image sharpness and enabling the scanner to execute scan processes with user-defined settings.

Benefits of technology

Enables users to utilize the sharpness adjustment function, enhancing image clarity and reducing moiré effects in scanned documents.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2025163869000001_ABST
    Figure 2025163869000001_ABST
Patent Text Reader

Abstract

To provide a program configured to allow a user to use sharpness adjustment function.SOLUTION: An extension application 204 is installed on a host computer 101 connected to a scan device 102. The extension application 204 causes a display unit 119 to display a detail setting screen 305b for accepting settings for sharpness adjustment function. The extension application 204 outputs a scan instruction command to cause the scan device 102 to execute scanning with a value set in the detail setting screen 305b.SELECTED DRAWING: Figure 3
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] The present invention relates to a program, a control method for an information processing device, and an information processing device. [Background technology]

[0002] A known configuration uses a scan driver installed on a host computer as software for controlling the scanning device, and instructs the scanning device connected to the host computer to execute a scan process. An operating system (OS), which is the basic software, is installed on the host computer, and the scan driver is configured according to the specifications defined by the OS and runs when called by the OS. By providing a scan driver that conforms to the OS specifications, manufacturers of scanning devices can provide a means for instructing the scanning device to execute a scan process using the OS.

[0003] Meanwhile, Windows (registered trademark) is about to provide a standard class driver (hereinafter also referred to as a "standard driver") that can be used with scanning devices from multiple manufacturers. Such a standard driver is included in the OS package and can be easily used by connecting any scanning device to a host computer. This eliminates the need to separately install a model-specific scan driver suitable for the scanning device, providing high convenience. Furthermore, the standard driver is expected to be configured to allow specification of scanning functions based on the scanning function information of the scanning device connected to the host computer. This allows users of the standard driver to specify scanning functions appropriate to the capabilities of the scanning device connected to the host computer, even while using a single standard driver. However, this is limited to functions that can be realized by the standard driver alone, and does not allow specification of manufacturer-specific functions. In response to this issue, Patent Document 1 proposes a technology that allows manufacturers to use their own unique functions. Patent Document 1 discloses a program that expands the printing functions of general-purpose software. [Prior art documents] [Patent documents]

[0004] [Patent Document 1] Patent Publication No. 2021-033526 Summary of the Invention [Problem to be solved by the invention]

[0005] Here, there is a sharpness adjustment function that is unique to the manufacturer. The sharpness adjustment function adjusts the clarity of the scanned image. By scanning a document using the sharpness adjustment function, the user can obtain image data with clear outlines of characters and lines, or image data with reduced moiré by blurring the outlines of halftone dots on halftone documents.

[0006] However, because the standard driver does not support the sharpness adjustment function, a host computer that uses the standard driver to instruct a scanning device to execute a scan process cannot allow a user to use the sharpness adjustment function.

[0007] An object of the present invention is to provide a program that allows a user to utilize a sharpness adjustment function, a control method for an information processing device, and an information processing device. [Means for solving the problem]

[0008] In order to achieve the above object, the program of the present invention is a program that supports a general-purpose program that outputs instructions that can be interpreted commonly by scanners from multiple manufacturers, and causes a computer to display a setting screen that accepts settings for adjusting the sharpness of a scanned image, and outputs a command to cause the scanner to execute a scan process using the settings accepted on the setting screen. [Effects of the Invention]

[0009] According to the present invention, the user can utilize the sharpness adjustment function. [Brief explanation of the drawings]

[0010] [Figure 1] 1 is a block diagram schematically illustrating a hardware configuration of a communication system according to an embodiment of the present invention. [Figure 2] 2 is a block diagram schematically illustrating a software configuration for the host computer of FIG. 1 to instruct the scanning device to execute a scan process. [Figure 3] FIG. 2 is a diagram showing an example of a screen displayed on the display unit of FIG. 1. [Figure 4] 3 is a flowchart showing the procedure of an edit control process executed by the scan function extension unit of FIG. 2(b). [Figure 5] 3A and 3B are diagrams showing examples of various information used by the scan function extension unit of FIG. 2B. [Figure 6]2 is a sequence diagram showing the procedure of a scan control process executed in the communication system of FIG. 1. [Figure 7] 3 is a flowchart showing the procedure of a scan instruction command generation process executed by the extension application of FIG. 2; [Figure 8] 2 is a flowchart showing the procedure of a control process executed by the scanning device of FIG. [Figure 9] 10 is a flowchart showing the procedure of an edit control process executed by a scan function extension unit according to a second embodiment. [Figure 10] FIG. 10 is a sequence diagram illustrating a procedure of a scan control process executed in a communication system according to a second embodiment. [Figure 11] 10 is a flowchart illustrating a procedure for a scan instruction command generation process executed by an extension application according to the second embodiment. [Figure 12] FIG. 11 is a sequence diagram illustrating a procedure of a scan control process executed in a communication system according to a third embodiment. [Figure 13] FIG. 13 is a sequence diagram illustrating a procedure of a scan control process executed in a communication system according to a fourth embodiment. [Figure 14] FIG. 13 is a sequence diagram illustrating a procedure of a scan control process executed in a communication system according to a fifth embodiment. [Figure 15] 13 is a flowchart illustrating a procedure for a scan instruction command generation process executed by an extension application according to the fifth embodiment. [Figure 16] 13A to 13C are diagrams illustrating an example of capability information of a scanning device used in a communication system according to a sixth embodiment, a list of extended application support functions, and a detailed setting screen. [Figure 17] FIG. 20 is a sequence diagram illustrating a procedure of a scan control process executed in a communication system according to a sixth embodiment. [Figure 18] 13 is a flowchart illustrating a procedure for a scan instruction command generation process executed by an extension application according to the sixth embodiment. [Figure 19] 13 is a flowchart illustrating another procedure of the scan instruction command generating process executed by the extension application according to the sixth embodiment. [Figure 20] FIG. 23 illustrates an example of a detailed setting screen displayed on a display unit of a host computer according to a seventh embodiment. [Figure 21] FIG. 22 is a sequence diagram illustrating a procedure of a scan control process executed in a communication system according to a seventh embodiment. [Figure 22] 13 is a flowchart illustrating a procedure for a scan instruction command generation process executed by an extension application according to the seventh embodiment. [Figure 23] FIG. 20 is a sequence diagram illustrating a procedure of a scan control process executed in a communication system according to an eighth embodiment. [Figure 24] 13 is a flowchart illustrating a procedure for a scan instruction command generating process executed by an extension application according to the eighth embodiment. DETAILED DESCRIPTION OF THE INVENTION

[0011] Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings. Note that the following embodiments do not limit the scope of the present invention as defined in the claims, and not all of the combinations of features described in the embodiments are necessarily essential to the solution of the present invention.

[0012] First, a program, a communication system, an information processing device, and a control method for an information processing device according to a first embodiment of the present invention will be described.

[0013] 1 is a block diagram showing a hardware configuration of a communication system according to the present embodiment. In FIG. 1, the communication system is made up of a host computer 101 and a scanning device 102.

[0014] The host computer 101 is an example of an information processing device, and includes an input interface 110, a CPU 111, a ROM 112, a RAM 113, an external storage device 114, an output interface 115, and an input / output interface 116. Input devices such as a keyboard 118 and a pointing device 117 are connected to the input interface 110, and display devices such as a display unit 119 are connected to the output interface 115. The host computer 101 further includes a NETIF 120. The NETIF 120 is a network interface that controls data communication with external devices via a network (not shown).

[0015] An initialization program is stored in the ROM 112. The external storage device 114 is, for example, a hard disk drive (HDD) or a solid state drive (SSD). The external storage device 114 stores a group of application programs, an operating system (OS), and various other data. The RAM 113 is used as a work memory or the like when executing the programs stored in the external storage device 114. In this embodiment, the CPU 111 performs processing in accordance with the code of the programs stored in the ROM 112, thereby executing the functions of the host computer 101 described below and the processing related to the flowcharts described below.

[0016] The scanning device 102 is an example of an image processing device, and is connected to the host computer 101 via an input / output interface 198 of the scanning device 102 and an input / output interface 116 of the host computer 101. The input / output interface 198 of the scanning device 102 and the input / output interface 116 of the host computer 101 may be connected via a wired network or a wireless network.

[0017] The scanning device 102 includes an image processing unit 190 , a CPU 191 , a ROM 192 , a RAM 193 , an operation unit 194 , a reading unit 195 , a printing unit 196 , a NETIF 197 , an input / output interface 198 , and an external storage device 199 .

[0018] The CPU 191 comprehensively controls the scanning device 102. The ROM 192 is a memory that stores programs. The RAM 193 is a memory that temporarily stores programs and image data. The reading unit 195 is a scanner that reads an image of a document and generates image data. The printing unit 196 prints an image on a sheet based on the image data. In this embodiment, the scanning device 102 is described as having the printing unit 196, but the configuration of the scanning device 102 is not limited to this configuration, and the scanning device 102 does not need to have the printing unit 196. The NETIF 197 is a network interface that controls data communication with external devices via a network (not shown). The image processing unit 190 performs various image editing processes on input image data.

[0019] 1, the host computer 101 and the scanning device 102 are shown as separate devices, but they may also be configured as a single information processing device. In this embodiment, the scanning device 102 is described as an electrophotographic digital multifunction peripheral having multiple functions such as copying, printing, and faxing, but the scanning device 102 is not limited to a digital multifunction peripheral. The scanning device 102 may also be, for example, a device using another process such as an inkjet system, or a scanner that only reads images. The host computer 101 may also be a desktop personal computer, a smartphone, or a laptop computer.

[0020] 2 is a block diagram schematically illustrating a software configuration for the host computer 101 in FIG. 1 to instruct the scanning device 102 to execute a scan process. In this embodiment, as an example, the host computer 101 is described as being equipped with Microsoft Windows 11 as its OS.

[0021] FIG. 2A shows a software configuration for a host computer 101 that does not include an extension application 204 to instruct a scanning device 102 to execute a scan process.

[0022] 2(a), the host computer 101 includes a scan application 201 and general-purpose scan software 202 as software for instructing the scan device 102 to execute a scan process. The processing by these pieces of software is realized by the CPU 111 executing a program stored in the external storage device 114. The host computer 101 also includes scan function information 203.

[0023] The scan application 201 is software that imports content (image data) generated by scanning a document, such as a document creation application or an image editing application. When the scan application 201 receives a scan request from a user, it issues a scan instruction to the OS of the host computer 101. The scan instruction includes scan setting information for instructing the operation of the general-purpose scan software 202 and the scan device 102.

[0024] A scan setting screen provided by the general-purpose scan software 202, the OS of the host computer 101, or the scan application 201 is displayed on the display unit 119 of the host computer 101 as a screen for accepting a scan request from the user. When an advanced settings button on this scan setting screen is pressed, the general-purpose scan software 202 displays the advanced settings screen on the display unit 119 of the host computer 101. The configuration of the scan setting screen and the advanced settings screen will be described later with reference to FIG. 3. The advanced settings screen includes setting items (hereinafter also referred to as "control items") that indicate scan functions supported by the general-purpose scan software 202 according to the capability information of the general-purpose scan software 202, and control items that indicate the setting values ​​for those setting items.

[0025] The generic scanning software 202 is a general-purpose program that can be used with scanning devices from multiple manufacturers and generates and outputs instructions that can be interpreted by scanning devices from multiple manufacturers. The generic scanning software 202 is, for example, a standard class driver that controls the execution of scanning processes based on a standard scanning protocol called Mopria. The generic scanning software 202 determines scanning capabilities based on the scanning function information 203.

[0026] The scan function information 203 is data indicating all scan functions supported by the general-purpose scan software 202, their setting values, and the exclusive relationships between the setting values. The scan function information 203 is included in a configuration file of the general-purpose scan software 202 and stored in the external storage device 114 as an unmodifiable file. Alternatively, the scan function information 203 is dynamically generated by the general-purpose scan software 202 or the OS of the host computer 101. Specifically, the general-purpose scan software 202 or the OS of the host computer 101 acquires attribute data of the scan device 102 from the scan device 102 and generates the scan function information 203 based on the acquired attribute data. The attribute data of the scan device 102 includes attribute information indicating functions (scan device capabilities) that can be specified by the scan device 102 and setting values ​​corresponding to the attribute information. The attribute data of the scan device 102 acquired from the scan device 102 is stored in the RAM 113. If the scan function information 203 is dynamically generated, the generated scan function information 203 is editable.

[0027] By dynamically generating scan function information 203 in this manner, the general-purpose scan software 202 allows the user to specify scan functions that it supports and that can be used by the scan device 102 connected to the host computer 101. In other words, even if a scan device with different functions or a scan device developed by any manufacturer is connected to the host computer 101, the user can specify scan functions that the general-purpose scan software 202 supports and that can be used by the connected scan device. However, because the general-purpose scan software 202 does not support manufacturer-specific functions, it cannot allow the user to specify manufacturer-specific scan functions that can be used by the scan device connected to the host computer 101. An example of a manufacturer-specific scan function is a sharpness adjustment function.

[0028] The sharpness adjustment function adjusts the clarity of the scanned image. By scanning a document using the sharpness adjustment function, users can obtain image data with clear outlines of characters and lines, or image data with reduced moiré by blurring the outlines of halftone dots on halftone documents.

[0029] In this embodiment, the user can set, as setting values ​​for the sharpness adjustment function, an adjustment level that indicates the clarity of a text area in a scanned image and an adjustment level that indicates the clarity of a photographic area / image area in a scanned image. Below, as an example, a configuration will be described in which adjustment levels can be set within a range of -3 to +3 for the text area and the photographic area / image area. The range of settable adjustment levels is not limited to this range, and adjustment levels may be set within a wider or narrower range than this range. In this embodiment, -3 is the setting that weakens sharpness (i.e., strongly blurs edges), 0 is the default, and +3 is the setting that strengthens sharpness (i.e., strongly highlights edges).

[0030] Note that the same adjustment level may be set for text areas and photo / image areas without distinction. Alternatively, the adjustment level may be set for text areas only, or for photo / image areas only. Alternatively, the adjustment level may be set for additional areas with attributes for which adjustment levels can be set, in addition to text areas and photo / image areas. Alternatively, the adjustment level may be set for each of the specified areas by specifying multiple areas in the image data.

[0031] Next, a software configuration for the host computer 101 having the extension application 204 to instruct the scanning device 102 to execute a scan process will be described.

[0032] 2(b) shows a software configuration for the host computer 101 equipped with the extension application 204 to instruct the scanning device 102 to execute a scan process. Note that in FIG. 2(b), configurations and processes that are not specifically mentioned are the same as those in FIG. 2(a).

[0033] 2(b), the host computer 101 includes the above-described scan application 201 and general-purpose scan software 202, as well as an extension application 204, as software for instructing the scan device 102 to execute a scan process. The processing by these pieces of software is realized by the CPU 111 executing a program stored in the external storage device 114.

[0034] The extension application 204 is software that supports the general-purpose scan software 202 and is not pre-installed (not bundled) in the OS of the host computer 101. Therefore, the user must operate the host computer 101 to download and install the extension application 204 from a server via the Internet. Alternatively, the extension application 204 may be automatically installed when the scanning device 102 is connected to the host computer 101. Specifically, when the scanning device 102 is connected to the host computer 101, the OS of the host computer 101 acquires device identification information from the scanning device 102. The OS of the host computer 101 may download and install the extension application 204 corresponding to the acquired device identification information from a server via the Internet. In other words, the general-purpose scan software 202 and the extension application 204 are stored in the host computer 101 as separate files.

[0035] The general-purpose scanning software 202 and the extension application 204 may be updated and upgraded, but these update processes are also performed at different times. That is, the timing at which the host computer 101 acquires the general-purpose scanning software 202 is different from the timing at which the extension application 204 is acquired. Furthermore, the trigger at which the host computer 101 acquires the general-purpose scanning software 202 is different from the trigger at which the extension application 204 is acquired. When the extension application 204 is installed in the host computer 101, the OS of the host computer 101 associates the extension application 204 with the general-purpose scanning software 202 and the scanning device 102.

[0036] The extension application 204 includes a scan setting screen extension unit 205, a scan function extension unit 206, an image data editing unit 207, and a notification unit 209. The extension application 204 also includes shared information 208 that can be commonly accessed by each unit. The shared information 208 is actually a file saved in the external storage device 114 or information stored in the RAM 113. The extension application 204 writes and reads information to and from the shared information 208 by using an API (Application Program Interface) provided by the OS of the host computer 101.

[0037] The extended application 204 may terminate its operation each time the processing of each unit is completed. In this case, the OS of the host computer 101 starts the extended application 204 each time a request to use each unit is received.

[0038] Furthermore, the extension application 204 may cancel the processing of each unit during its processing. If the processing is canceled, the job being processed is deleted by the OS of the host computer 101.

[0039] When the scan application 201 receives a scan request from a user, it issues a scan instruction to the OS of the host computer 101. In the configuration of FIG. 2(b), as in the configuration of FIG. 2(a), the scan application 201 can display a scan setting screen. In the configuration of FIG. 2(b), a detailed setting screen provided by the extension application 204 is displayed. Specifically, a detailed setting screen provided by the scan setting screen extension unit 205 of the extension application 204 is displayed. In addition, the scan setting screen extension unit 205 saves the setting values ​​set by the user on the detailed setting screen in the shared information 208.

[0040] The image data editing unit 207 edits the image data acquired from the scanning device 102. The image data editing unit 207 acquires the setting values ​​set on the detailed setting screen from the shared information 208 and performs image editing on the image data according to the setting values. The 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 setting values. Also, even in the configuration of FIG. 2(b), there are cases where the user does not set the sharpness adjustment function. In such cases, as in the configuration of FIG. 2(a), the general-purpose scanning software 202 may issue a scan instruction to the scanning device 102 without going through the extended application 204.

[0041] The scan function extension unit 206 can edit the scan function information 203 generated by the general-purpose scan software 202 or the OS of the host computer 101. This allows the scan function extension unit 206 to add functions provided by the extension application 204 to the scan function information 203. The scan function extension unit 206 can also add scan functions supported by the scan device 102 but not supported by the general-purpose scan software 202, and add exclusive relationships between setting values ​​of these scan functions. An example of a scan function supported by the scan device 102 but not supported by the general-purpose scan software 202 is a sharpness adjustment function. The OS of the host computer 101 launches the scan function extension unit 206 when the extension application 204 is first associated with the scan device 102 and the general-purpose scan software 202. The OS of the host computer 101 may also launch the scan function extension unit 206 at other times, such as when the OS of the host computer 101 is launched.

[0042] The notification unit 209 can display a notification to the user in response to the occurrence of an error in the scanning device 102. For example, when a reading jam error occurs in the scanning device 102, the general-purpose scanning software 202 detects it. The OS of the host computer 101 uses a notification function of the OS called a toast notification to display a message on the display unit 119. When the user presses this toast notification, the OS of the host computer 101 calls the notification unit 209 of the extension application 204, and the UI screen of the notification unit 209 is displayed. The UI screen of the notification unit 209 displays, for example, detailed information about the reading jam error and how to clear the jam.

[0043] The configuration of the extension application 204 is not limited to having all of the above-mentioned functions (units), but may have only some of the functions or other functions. The extension application 204 is sometimes simply called scan software. As described above, the extension application 204 can be said to have at least one of the following functions: The first is a function to display a setting screen (scan setting screen extension unit 205). The second is a function to edit image data according to detailed settings (image data editing unit 207). The third is a function to extend functions that can be specified by the user (scan function extension unit 206). The fourth is a function to display a screen in response to the occurrence of an error in the scan device 102 (notification unit 209).

[0044] Next, an example of the scan setting screen and the detailed setting screen displayed on the display unit 119 of the host computer 101 will be described with reference to FIG.

[0045] Fig. 3(a) is an example of a scan setting screen 300 displayed by the scan application 201 of Fig. 2(a). As shown in Fig. 3(a), the scan setting screen 300 includes a control 301, a scan button 302, a cancel button 303, and an advanced settings button 304.

[0046] The control 301 has an object that allows the user to specify the scanning device to be used for scanning the document. The scan button 302 is a button for instructing the user to start scanning. The cancel button 303 is a button for instructing the user to stop scanning. The advanced settings button 304 is a button for instructing the display unit 119 to display an advanced settings screen. In this embodiment, the configuration of the advanced settings screen displayed on the display unit 119 differs depending on whether the host computer 101 is equipped with the extension application 204.

[0047] For example, the display unit 119 of a host computer 101 (see, for example, FIG. 2A) that does not include the extension application 204 displays an advanced settings screen 305a shown in FIG. 3B. The advanced settings screen 305a is displayed on the display unit 119 by the general-purpose scan software 202 when the user presses the advanced settings button 304. The advanced settings screen 305a includes a control 306a and an end settings button 307a. The control 306a allows the user to set the reading destination, and in FIG. 3B, as an example, "platen" is set. The end settings button 307a is a button for ending the settings on the advanced settings screen 305a. When the user presses the end settings button 307a, the screen of the display unit 119 returns to the scan settings screen 300.

[0048] Meanwhile, the display unit 119 of the host computer 101 (see, for example, FIG. 2B) equipped with the extension application 204 displays the advanced settings screen 305b shown in FIG. 3C. When the user presses the advanced settings button 304, the advanced settings screen 305b is displayed on the display unit 119 by the scan settings screen expansion unit 205. Note that, in this embodiment, a configuration in which the scan settings screen expansion unit 205 displays the advanced settings screen 305b on the display unit 119 will be described, but this configuration is not limiting. For example, the scan settings screen expansion unit 205 may be configured to only generate display data for the advanced settings screen 305b. In this case, the scan settings screen expansion unit 205 transmits the generated display data to the scan application 201 via the general-purpose scan software 202. The scan application 201 uses the acquired display data to display the advanced settings screen 305b on the display unit 119.

[0049] The detailed setting screen 305b includes a control 306b having the same function as the above-described control 306a, a setting end button 307b having the same function as the above-described setting end button 307a, and controls 308b to 311b.

[0050] Control 308b is a slide bar for selecting an adjustment level that indicates the sharpness of the text area in the scanned image. The user can increase or decrease the sharpness of the text area by moving this slide bar left or right. The currently selected adjustment level can also be confirmed from control 309b. The adjustment level of the text area can also be set by directly entering a value into control 309b. In FIG. 3(c), as an example, "+2" is selected as the adjustment level for the text area. Controls 308b and 309b are linked, and when the user changes the setting value using one of them, the display of the setting value for the other control also changes accordingly.

[0051] Control 310b is a slide bar for selecting an adjustment level indicating the sharpness of the photo area / image area in the scanned image. The user can increase or decrease the sharpness of the photo area / image area by moving this slide bar left or right. The currently selected adjustment level can also be confirmed from control 311b. The adjustment level of the photo area / image area can also be set by directly entering a value into control 311b. In FIG. 3(c), as an example, "-2" is selected as the adjustment level of the photo area / image area. In this embodiment, the adjustment level is set by two means, that is, by using a slide bar or by directly entering a value. However, only one of these means may be used, or a different setting means, such as inputting a value using a button to select a value, may be provided.

[0052] Here, the reason why the setting items differ between the detailed setting screen 305a and the detailed setting screen 305b will be explained.

[0053] The advanced settings screen 305a displayed on the display unit 119 of a host computer 101 that does not have an extension application 204 is generated by referring to the scan capabilities generated based on the scan function information 203. As described above, the scan function information 203 includes information on the scan functions supported by the general-purpose scan software 202. However, because the general-purpose scan software 202 does not support a sharpness adjustment function, the scan function information 203 does not include information on the sharpness adjustment function. As a result, the advanced settings screen 305a does not include controls 308b to 311b for configuring settings related to the sharpness adjustment function.

[0054] Meanwhile, the advanced settings screen 305b displayed on the display unit 119 of the host computer 101 equipped with the extension application 204 is generated by referring to the scan capabilities generated based on the scan function information 203 edited by the scan function extension unit 206. Information about the sharpness adjustment function has been added to this scan function information 203 by the scan function extension unit 206. As a result, the advanced settings screen 305b includes controls 308b to 311b for configuring settings related to the sharpness adjustment function. Note that the advanced settings screen 305b may also include setting items for manufacturer-specific scan functions other than the sharpness adjustment function.

[0055] Next, an edit control process in which the scan function extension unit 206 edits the scan function information 203 will be described.

[0056] Fig. 4 is a flowchart showing the procedure of the edit control process executed by the scan function extension unit 206 in Fig. 2(b). The edit control process in Fig. 4 is realized by the CPU 111 executing the program of the extension application 204 that is read from the external storage device 114 to the RAM 113. The edit control process in Fig. 4 is executed, for example, when the extension application 204 is started, when the scan device 102 is selected by the control 301 on the scan setting screen 300, etc.

[0057] 4, first, in S401, the scan function extension unit 206 acquires capability information from the scanning device 102 connected to the host computer 101. This capability information is attribute information indicating functions that can be specified in the scanning device 102 and setting values ​​related to that attribute information. Table 501 in FIG. 5(a) is an example of capability information acquired from the scanning device 102. As shown in Table 501, it is possible to acquire from the scanning device 102 information on functions such as reading size and sharpness adjustment, as well as option information, which is setting values ​​that can be set for each function.

[0058] Next, in S402, the scan function extension unit 206 acquires a list of scan functions supported by the extension application 204 (hereinafter referred to as the "extended application supported function list"). The extended application supported function list is capability information of the extension application 204, and is registered in the shared information 208. The extended application supported function list includes all scan functions supported by the extension application 204 and their setting values. Table 502 in FIG. 5(b) is an example of the extended application supported function list. The extended application supported function list may be updated by updating the extension application 204, etc.

[0059] Next, in S403, the scan function extension unit 206 obtains the scan function information 203 created by the general-purpose scan software 202 from the OS. Table 503 in FIG. 5(c) is an example of the scan function information 203 created by the general-purpose scan software 202. The general-purpose scan software 202 creates the scan function information 203 based on the capability information obtained from the scan device 102 (see, for example, Table 501 in FIG. 5(a)). The scan function information 203 created by the general-purpose scan software 202 records only the scan functions supported by the general-purpose scan software 202 out of the multiple scan functions recorded in the capability information obtained from the scan device 102. Therefore, the functions recorded in the scan function information 203 are limited. For example, the capability information in FIG. 5(a) includes information about a sharpness adjustment function, but the general-purpose scan software 202 does not support the sharpness adjustment function (see, for example, Table 503 in FIG. 5(c)). Therefore, information about the sharpness adjustment function is not recorded in the scan function information 203. In this embodiment, the scan function extension unit 206 adds functions and options to the scan function information 203, which enables the extension application 204 to compensate for the lack of functions of the general-purpose scan software 202. In addition, the scan function extension unit 206 can also delete unnecessary functions and options from the scan function information 203 created by the general-purpose scan software 202.

[0060] Next, the scan function extension unit 206 performs a process for adding a scan function. Specifically, the scan function extension unit 206 performs S404, S405, and S406. The process for adding a scan function is a process that is repeatedly performed for each function option recorded in the capability information acquired from the scan device 102 in S401. In this embodiment, the process for adding a scan function is repeatedly performed for 11 items ranging from "A4H," which is the reading size option in the capability information of FIG. 5(a), to "Photo / Image (-3 to +3)," which is the sharpness adjustment function option. The scan function extension unit 206 selects one of the options in the capability information acquired in S401.

[0061] First, in S404, the scan function extension unit 206 determines whether the selected option is included in the scan function information 203 generated by the general-purpose scan software 202. For example, if "Platen" is selected as the read destination option from the capability information in FIG. 5(a), this "Platen" is included in the scan function information 203 in FIG. 5(c). In such a case, in S404, it is determined that the selected option is included in the scan function information 203 generated by the general-purpose scan software 202. On the other hand, if "A4H" is selected as the read size option from the capability information in FIG. 5(a), this "A4H" is not included in the scan function information 203 in FIG. 5(c). In such a case, in S404, it is determined that the selected option is not included in the scan function information 203 generated by the general-purpose scan software 202.

[0062] If it is determined in S404 that the selected option is included in the scan function information 203 generated by the general-purpose scan software 202, the scan function extension unit 206 selects the next option, and the edit control process returns to S404. Note that if the option determined in S404 is the last option in the capability information acquired in S401 (for example, "Photo / Image (-3 to +3)" in FIG. 5(a)), the scan function addition process ends, and the edit control process ends.

[0063] If it is determined in S404 that the selected option is not included in the scan function information 203 generated by the general-purpose scan software 202, the edit control process proceeds to S405.

[0064] In S405, the scan function extension unit 206 determines whether the selected option is included in the list of extended application support functions acquired in S402. For example, if the resolution option "100 x 100 dpi" is selected from the capability information in FIG. 5(a), this "100 x 100 dpi" is not included in the list of extended application support functions in FIG. 5(b). In such a case, in S404, it is determined that the selected option is not included in the list of extended application support functions, the scan function extension unit 206 selects the next option, and the editing control process returns to S404. Note that if the option determined in S405 is the last option in the capability information acquired in S401, the process of adding the scan function ends, and the editing control process also ends.

[0065] On the other hand, if "Character (-3 to +3)", which is an option for the sharpness adjustment function, is selected from the capability information in Fig. 5(a), this "Character (-3 to +3)" is included in the list of extended application support functions in Fig. 5(b). In such a case, in S405, it is determined that the selected option is included in the list of extended application support functions, and the editing control process proceeds to S406.

[0066] In S406, the scan function extension unit 206 adds the selected option to the scan function information 203. Next, the scan function extension unit 206 selects the next option, and the editing control process returns to S404. Note that if the option added to the scan function information 203 in S406 is the last option in the capability information acquired in S401, the process of adding the scan function ends, and the editing control process also ends.

[0067] In this way, the scan function extension unit 206 adds scan function options that are not supported by the general-purpose scan software 202 but are supported by the scan device 102 and the extension application 204 to the scan function information 203. Scan capabilities are generated based on the scan function information 203 edited by the edit control process of Fig. 4 described above. Furthermore, the scan setting screen extension unit 205 generates display data for the advanced setting screen based on the generated scan capabilities. This makes it possible to display the advanced setting screen 305b of Fig. 3(c) on which scan functions that are not supported by the general-purpose scan software 202 but are supported by the scan device 102 and the extension application 204 can be set.

[0068] Next, a scan control process in the communication system of FIG. 1, from when scan settings are accepted to when image data generated by scanning an original document using the scanning device 102 is displayed, will be described.

[0069] FIG. 6 is a sequence diagram showing the steps of a scan control process executed in the communication system of FIG. 1. The process by the host computer 101 in FIG. 6 is realized by the CPU 111 reading each program (scan application 201, general-purpose scan software 202, and extension application 204) from the external storage device 114 to the RAM 113 and executing them. The process by the scanning device 102 in FIG. 6 is realized by the CPU 191 of the scanning device 102 reading a program stored in the ROM 192 or the external storage device 199 to the RAM 193 and executing them. Note that in this embodiment, the scan control process will be described for a configuration in which the host computer 101 includes the extension application 204, as shown in FIG. 2(c) above. In addition, in the scan control process of FIG. 6, it is assumed that the edit control process of FIG. 4 above has already been executed. Through this edit control process, an option for a scan function (e.g., a sharpness adjustment function) that is not supported by the general-purpose scan software 202 but is supported by the scanning device 102 and the extension application 204 is added to the scan function information 203.

[0070] 6, first, in S601, the scan application 201 receives a scan setting instruction from the user. The scan setting instruction is an instruction to set scan settings to be used in the scan process executed by the scan device 102 connected to the host computer 101. The user can issue the scan setting instruction to the scan application 201 by operating the pointing device 117 or keyboard 118.

[0071] Next, in S602, the scan application 201 displays the scan setting screen 300 on the display unit 119 in accordance with the received scan setting instruction.

[0072] Next, in S603, the scan application 201 receives an instruction to display a detailed settings screen. The user can issue an instruction to display the detailed settings screen by operating the pointing device 117 or the keyboard 118 to select the detailed settings button 304 on the scan settings screen 300.

[0073] Next, in S604, the scan application 201 requests the general-purpose scan software 202 to display the detailed setting screen in accordance with the received instruction to display the detailed setting screen.

[0074] Next, in S605, in accordance with the received display request, the general-purpose scan software 202 requests the extension application 204 to display a detailed setting screen. Note that, as shown in FIG. 2(b) above, in a configuration in which the host computer 101 does not include the extension application 204, the general-purpose scan software 202 causes the display unit 119 to display the detailed setting screen 305a.

[0075] Next, in S606, the scan setting screen expansion unit 205 of the extension application 204 displays the detailed setting screen 305b on the display unit 119. Specifically, the scan setting screen expansion unit 205 references the scan capabilities generated based on the scan function information 203 to which options such as a sharpness adjustment function have been added in the editing control process of FIG. 4, and displays the detailed setting screen 305b on the display unit 119. As described above, the detailed setting screen 305b includes controls 308b to 311b for setting the setting value of the sharpness adjustment function. In this embodiment, the extension application 204 supports only one resolution, 300×300 dpi, as shown in FIG. 5(b). Therefore, there is no need for the user to select this resolution, and the detailed setting screen 305b does not include this setting item. Note that this configuration is merely an example, and the detailed setting screen 305b may also include a resolution setting item with 300×300 dpi selected.

[0076] Next, in S607, the scan setting screen expansion unit 205 accepts settings made by the user on the detailed setting screen 305b. The detailed setting screen 305b in FIG. 3C shows an example in which the user has set "Platen" as the reading destination, set "+2" as the adjustment level for the text area, and set "-2" as the adjustment level for the photo area / image area. The values ​​set on the detailed setting screen 305b are stored in the RAM 113 by the CPU 111.

[0077] Next, in S608, the scan setting screen expansion unit 205 receives an instruction from the user to end the detailed settings. The user can issue an instruction to end the detailed settings by operating the pointing device 117 or keyboard 118 to select the End Settings button 307b. Upon receiving the instruction to end the detailed settings, the scan setting screen expansion unit 205 writes the setting values ​​set on the detailed settings screen 305b into the scan setting information. Note that the scan setting screen expansion unit 205 may also be configured to write setting values ​​for items that the user is not allowed to select, such as resolution, into the scan setting information. The scan setting information is stored in the RAM 113, etc.

[0078] Next, in S609, the extension application 204 notifies the general-purpose scan software 202 of the completion of the detailed settings.

[0079] Next, in S610, the general-purpose scan software 202 notifies the scan application 201 of the completion of the detailed settings.

[0080] Upon receiving this notification, the scan application 201 switches the screen of the display unit 119 to the scan setting screen 300. In addition, the scan application 201 accepts a scan instruction from the user in S611. The user can issue a scan instruction by operating the pointing device 117 or keyboard 118 and selecting the scan button 302.

[0081] Next, in S612, the scan application 201 issues a scan instruction to the general-purpose scan software 202.

[0082] Next, in S613, the general-purpose scan software 202 issues a scan instruction to the extension application 204.

[0083] Next, in S614, the extension application 204 creates a scan instruction command based on the scan setting information written in S608. If the setting values ​​of items that are not selectable by the user, such as resolution, have not been written to the scan setting information in S608, the extension application 204 may add those setting values ​​to the scan instruction command when creating the scan instruction command in S614. Alternatively, the extension application 204 may not add those setting values ​​and instead operate the scan device 102 using its default values.

[0084] Next, in S615, the extension application 204 transmits (outputs) a scan instruction command to the scanning device 102.

[0085] Next, in S616, the scanning device 102 interprets the received scan instruction command and executes scanning processing. In S616, image processing corresponding to the scan instruction command is performed on the image data obtained by scanning the document. In this embodiment, if a setting value for the sharpness adjustment function is set on the detailed setting screen 305b, sharpness adjustment corresponding to the set setting value is performed. As a result, image data in which sharpness adjustment corresponding to the set setting value has been performed on the character area and photo area / image area is generated.

[0086] Next, in S617, the scanning device 102 transmits the generated image data to the extension application 204. The above-described processing of S616 and S617 executed by the scanning device 102 will be described later with reference to FIG.

[0087] Next, in S618, the extension application 204 transmits the received image data to the general-purpose scan software 202. The above-described processes of S606, S607, S608, S609, S614, S615, and S618 executed by the extension application 204 will be described later with reference to FIG.

[0088] Next, in S619, the general-purpose scan software 202 transmits the received image data to the scan application 201.

[0089] Next, in S620, the scan application 201 receives the image data. Next, in S621, the scan application 201 displays the received image data on the display unit 119. For example, the display unit 119 displays image data that has been generated by the scan process using the scan device 102 and has undergone sharpness adjustment using the setting value set in the control 308b. When the process of S621 is completed, this process ends.

[0090] Next, a description will be given of the scan instruction command generation process executed by the extension application 204. The scan instruction command generation process includes the processes of S606, S607, S608, S609, S614, S615, and S618 described above.

[0091] Fig. 7 is a flowchart showing the procedure of the scan instruction command generation process executed by the extension application 204 of Fig. 2. The scan instruction command generation process of Fig. 7 is realized by the CPU 111 executing the program of the extension application 204 that has been read from the external storage device 114 to the RAM 113.

[0092] 7, first, in S701, the extension application 204 receives a request to display a detailed setting screen from the general-purpose scan software 202. Next, in S702, the scan setting screen extension unit 205 of the extension application 204 displays the detailed setting screen 305b on the display unit 119 in accordance with the received display request (see, for example, S606 described above).

[0093] Next, in S703, the scan setting screen expansion unit 205 determines whether or not a function setting has been received from the user on the detailed setting screen 305b.

[0094] If it is determined in S703 that the user has set the function on the detailed setting screen 305b (see, for example, S607 described above), the extension application 204 saves the setting value set on the detailed setting screen 305b in the RAM 113 (S704). Then, the process proceeds to S705.

[0095] If it is determined in S703 that no function settings are to be received from the user on the detailed setting screen 305b, the process also proceeds to S705.

[0096] In S705, the scan setting screen expansion unit 205 determines whether or not an instruction to end the detailed setting has been received from the user.

[0097] If it is determined in S705 that an instruction to end the detailed settings has not been received from the user, the process returns to S703. If it is determined in S705 that an instruction to end the detailed settings has been received from the user (for example, see S608 described above), the process proceeds to S706. Note that if the determinations in both S703 and S705 are YES, the scan setting screen expansion unit 205 writes the setting values ​​set on the detailed setting screen 305b to the scan setting information. Thereafter, the process proceeds to S706.

[0098] In S706, the extension application 204 notifies the general-purpose scan software 202 of the end of the detailed settings (see, for example, S609 described above).

[0099] Next, in S707, the extension application 204 determines whether a scan instruction has been received from the general-purpose scan software 202. The extension application 204 waits until a scan instruction is received. If a scan instruction is received (YES in S707), in S708, the extension application 204 creates a scan instruction command based on the scan setting information written in S705 (see, for example, S614 described above). One method for creating a scan instruction command is to extend the function of a command conforming to a standard protocol. Examples of methods for extending the function of a command conforming to a standard protocol include recording a setting value for a sharpness adjustment function or the like as a dedicated command in an extension field of this command, or adding a command conforming to a manufacturer's proprietary standard to the end of this command. Another method for creating a scan instruction command is for the extension application 204 to convert a command conforming to a standard protocol into a unique command system. Furthermore, when issuing an instruction from the extension application 204, instructions and communication may be performed using a manufacturer's proprietary protocol, regardless of the standard protocol.

[0100] Next, in S709, the extension application 204 transmits (outputs) a scan instruction command to the scanning device 102 (see, for example, S615 described above).

[0101] Next, in S710, the extension application 204 determines whether all image data has been received from the scanning device 102. The extension application 204 waits until all image data has been received, and when all image data has been received (YES in S710), in S711, it sends the received image data to the general-purpose scanning software 202 (see, for example, S618 described above). Then, this process ends.

[0102] Next, a description will be given of the control processing executed by the scanning device 102. The control processing includes the above-mentioned steps S616 and S617.

[0103] Fig. 8 is a flowchart showing the procedure of the control process executed by the scanning device 102 of Fig. 1. The control process of Fig. 8 is realized by the CPU 191 executing a program stored in the RAM 192.

[0104] 8, first, in step S801, the CPU 191 acquires a scan instruction command sent from the extension application 204.

[0105] Next, in S802, the CPU 191 analyzes the scan instruction command acquired in S801 and converts it into read settings to be used by the scanning device 102 in the scan process. In the present embodiment, as an example, it is assumed that the CPU 191 converts the read settings to set the read destination to "platen," the adjustment level for the text area to "+2," the adjustment level for the photo area / image area to "-2," and the resolution to "300 x 300 dpi." Next, in S803, the CPU 191 sets the ASIC of the image processing unit 190 to be used in executing the scan process based on the read settings converted in S802.

[0106] Next, in S804, CPU 191 transmits a read instruction corresponding to the read setting to reading unit 195. In this embodiment, for example, CPU 191 transmits a read instruction specifying the read destination as "original platen" to reading unit 195. Upon receiving this instruction, reading unit 195 performs a read operation of the original set on the original platen.

[0107] Next, in S805, the CPU 191 acquires image data from the reading unit 195. Next, in S806, the CPU 191 controls the image processing unit 190 to perform image processing on the acquired image data. In S806, the acquired image data is subjected to, for example, a process of converting the resolution to "300 x 300 dpi" and a sharpness adjustment corresponding to the adjustment level. In the sharpness adjustment, the ASIC set in S803 is used to analyze the image data and adjust the clarity for the text area, photo area, and image area using the adjustment level set in the detailed setting screen 305b. Note that if the reading unit 195 is capable of reading at "300 x 300 dpi" and acquires image data at "300 x 300 dpi," the image processing of converting the resolution to "300 x 300 dpi" in step S806 may not be performed.

[0108] Next, in S807, the CPU 191 stores the image data in the external storage device 199. Next, in S808, the CPU 191 determines whether or not reading of all pages has been completed.

[0109] If it is determined in S808 that reading of any page has not been completed, the process returns to S805.

[0110] If it is determined in S808 that reading of all pages has been completed, the process proceeds to S809. In S809, the CPU 191 controls the image processing unit 190 to convert the image data saved in S807 into the specified transmission format. In this embodiment, the transmission format is not included in the scan instruction command acquired in S801, and in S809, the image data is converted into the JPEG format, which is the default setting of the scanning device 102, but the destination transmission format is not limited to this. The destination transmission format may be a format other than JPEG as long as it is a format supported by the host computer 101. Next, in S810, the CPU 191 controls the NETIF 197 to send the image data converted in S809 to the extension application 204. Then, the process ends.

[0111] According to the above-described embodiment, the extension application 204 displays the detailed setting screen 305b, which accepts settings for the sharpness adjustment function, on the display unit 119. The extension application 204 also outputs a scan instruction command for causing the scanning device 102 to execute a scan process using the setting value (adjustment level) set on the detailed setting screen 305b. This allows the user to use the sharpness adjustment function.

[0112] In the above-described embodiment, the user sets an adjustment level indicating the sharpness of the image data generated by the scan process on the advanced settings screen 305b, which allows the user's intention to reflect the sharpness of the generated image data.

[0113] In the above-described embodiment, the user can set one of a plurality of different setting values ​​on the detailed setting screen 305b, thereby allowing the user to select a preferred setting value for sharpness from a plurality of candidates.

[0114] In the above-described embodiment, the detailed setting screen 305b allows a setting value to be set for each attribute of an area in the image data generated by the scan process, thereby allowing an intended setting value for sharpness to be set for each attribute of an area in the image data.

[0115] In the above-described embodiment, the scan instruction command is a command created by extending the functionality of a command conforming to the standard protocol, which allows the scanning device 102 to execute a scan process using the standard protocol to generate image data whose sharpness has been adjusted using the settings set on the advanced settings screen 305b.

[0116] Furthermore, in the above-described embodiment, the scan instruction command is a command that is obtained by converting a command conforming to the standard protocol into a command system unique to the extension application 204. This allows the settings of a scan function that is not supported by the standard protocol to be reflected in the scan instruction command.

[0117] Furthermore, in the above-described embodiment, the setting items displayed on the advanced setting screen 305b are determined using the capability information of the scanning device 102 specified by the user. This allows the setting items of the scanning functions that are not supported by the general-purpose scanning software 202 but are supported by the scanning device 102 to be included on the advanced setting screen 305b.

[0118] In the above-described embodiment, the detailed setting screen 305b is displayed on the display unit 119 of the host computer 101 (see, for example, FIG. 2B) equipped with the extension application 204. However, the present invention is not limited to this. For example, upon receiving a display request for the detailed setting screen in S604, the general-purpose scanning software 202 may display the detailed setting screen 305a on the display unit 119. After completing the settings on the detailed setting screen 305a, the general-purpose scanning software 202 requests the extension application 204 to display an additional detailed setting screen. In response to this display request, the extension application 204 displays, for example, a detailed setting screen (not shown) on the display unit 119 that does not include the control 306b and is configured with a setting end button 307b and controls 308b to 311b. Even with this configuration, the user can utilize the sharpness adjustment function.

[0119] In the above-described embodiment, the general-purpose scan software 202 issues a scan instruction to the extension application 204 in step S613, but the present invention is not limited to this. For example, the scan application 201 may directly issue a scan instruction to the extension application 204. Alternatively, a control for issuing a scan instruction may be placed on the advanced settings screen 305b, and the user may directly issue an instruction to the extension application 204.

[0120] In the above-described embodiment, the configuration has been described in which the extended application 204 passes image data received from the scanning device 102 to the scanning application 201 via the general-purpose scanning software 202, but the configuration is not limited to this. For example, the extended application 204 may pass the image data directly to the scanning application 201 without passing it through the general-purpose scanning software 202. Alternatively, the scanning device 102 may pass the image data to the scanning application 201. Alternatively, the image data acquired from the scanning device 102 may be saved in the external storage device 114, and only file path information indicating the save destination may be passed.

[0121] In the above embodiment, the transfer of image data starts after it is determined in step S710 that all image data has been received, but the present invention is not limited to this. For example, the transferred image data may be transferred as needed.

[0122] Furthermore, in the above-described embodiment, the scanning device 102 is configured to transmit the generated image data to the host computer 101, but this configuration is not limiting. For example, the scanning device 102 may transmit the generated image data by fax or email to a specified destination. The destination may be stored in the scanning device 102, and processing may be completed by the scanning device 102 after a scan instruction is issued. Alternatively, the scanning device 102 may acquire information stored in an address book of a personal computer, smartphone, or the like. Alternatively, the scanning device 102 may display a destination input screen / field to allow the user to set the destination.

[0123] Next, a program, a communication system, an information processing device, and a control method for an information processing device according to a second embodiment will be described. The second embodiment is basically the same as the first embodiment in terms of configuration and operation, but differs from the first embodiment in that the scanning device 102 does not support a sharpness adjustment function. Therefore, a description of the overlapping configuration and operation will be omitted, and the following description will focus on the different configuration and operation.

[0124] In the first embodiment described above, the extended application 204 creates a scan instruction command including a setting value for the sharpness adjustment function, and the scanning device 102 executes the scan process in accordance with the scan instruction command. However, there are cases where the scanning device 102 does not support the sharpness adjustment function in the first place. In such cases, the user cannot use the sharpness adjustment function.

[0125] Therefore, in the second embodiment, the extension application 204 determines whether the scanning device 102 supports a sharpness adjustment function based on the capability information of the scanning device 102. If the scanning device 102 supports the sharpness adjustment function, the extension application 204 creates a scan instruction command including the setting value set on the detailed settings screen 305b and sends this scan instruction command to the scanning device 102. On the other hand, if the scanning device 102 does not support the sharpness adjustment function, the extension application 204 creates a scan instruction command that does not include the setting value of the sharpness adjustment function and sends this scan instruction command to the scanning device 102. Thereafter, the extension application 204 acquires image data generated by the scanning device 102 in accordance with this scan instruction command and performs sharpness adjustment on this image data corresponding to the setting value set on the detailed settings screen 305b. This allows the user to use the sharpness adjustment function even if the scanning device 102 does not support the sharpness adjustment function.

[0126] The following will explain the differences from the first embodiment described above.

[0127] In the second embodiment, the scanning device 102 is assumed to be a scanning device that does not support a sharpness adjustment function. If the capability information acquired from the scanning device 102 does not include information on the sharpness adjustment function, the scanning function extension unit 206 of the extension application 204 performs processing different from that of the first embodiment described above. Specifically, if the acquired capability information does not include information on the sharpness adjustment function and the extension application 204 has a unit for performing sharpness adjustment, the scanning function extension unit 206 adds information on the sharpness adjustment function to the scanning function information 203. The image data editing unit 207 performs sharpness adjustment on the image data acquired from the scanning device 102 based on the setting value of the sharpness adjustment function set by the user. Details will be described later.

[0128] Fig. 9 is a flowchart showing the procedure of edit control processing executed by the scan function extension unit 206 of the second embodiment. Note that the edit control processing of Fig. 9 is similar to the edit control processing of Fig. 4 described above, and the following will particularly describe the differences from the edit control processing of Fig. 4 described above. Like the edit control processing of Fig. 4 described above, the edit control processing of Fig. 9 is also realized by the CPU 111 executing the program of the extension application 204 read from the external storage device 114 to the RAM 113. Like the edit control processing of Fig. 4 described above, the edit control processing of Fig. 9 is also executed, for example, when the extension application 204 is started.

[0129] 9, first, the above-described steps S401 to S403 are performed, and then the process of adding the scan function (S403 to S406) is performed. Here, since the scanning device 102 does not support the sharpness adjustment function, the process of adding the scan function (S403 to S406) does not add information about the sharpness adjustment function to the scan function information 203.

[0130] Next, in S901, the scan function extension unit 206 determines whether or not the extension application 204 includes a unit that performs sharpness adjustment. The unit that performs sharpness adjustment is, for example, the image data editing unit 207.

[0131] If it is determined in S901 that the extension application 204 has a unit that performs sharpness adjustment, the scan function extension unit 206 adds information about the sharpness adjustment function to the scan function information 203 (S902). After that, this process ends.

[0132] If it is determined in step S901 that the extension application 204 does not have a unit for performing sharpness adjustment, this process ends.

[0133] In this way, the scan function extension unit 206 first adds functions / options that are not supported by the general-purpose scan software 202 but are supported by both the scan device 102 and the extension application 204 to the scan function information 203. Furthermore, if the scan device 102 does not support the sharpness adjustment function and the extension application 204 has a unit that performs sharpness adjustment, the scan function extension unit 206 adds information about the sharpness adjustment function to the scan function information 203. By using this scan function information 203, the display unit 119 displays the detailed setting screen 305b based on the scan capability generated by this scan function information 203. In this way, in the second embodiment, the setting items displayed on the detailed setting screen 305b are determined using the list of extended application supported functions (capability information of the extension application 204). As a result, even if the scan device 102 does not support the sharpness adjustment function, it is possible to accept settings for the sharpness adjustment function from the user.

[0134] FIG. 10 is a sequence diagram showing the steps of scan control processing executed in a communication system according to the second embodiment. The scan control processing in FIG. 10 is similar to the scan control processing in FIG. 6 described above, and the following description will focus on differences from the scan control processing in FIG. 6 described above. The processing by the host computer 101 in FIG. 10 is implemented by the CPU 111 reading the scan application 201, the general-purpose scan software 202, and the extension application 204 from the external storage device 114 to the RAM 113 and executing them. The processing by the scanning device 102 in FIG. 10 is implemented by the CPU 191 of the scanning device 102 reading the programs stored in the ROM 192 or the external storage device 199 to the RAM 193 and executing them. This embodiment describes the scan control processing in a configuration in which the host computer 101 includes the extension application 204, as shown in FIG. 2(c) described above. The scan control processing in FIG. 10 assumes that the edit control processing in FIG. 9 described above has already been executed. By this editing control process, the scan function information 203 is added with an option for a sharpness adjustment function that is incompatible with the general-purpose scan software 202 and the scan device 102 but is supported by the extension application 204 .

[0135] In Fig. 10, first, the above-mentioned steps S601 to S613 are performed. Next, in S1001, the extension application 204 creates a scan instruction command. Details of creating the scan instruction command will be explained with reference to the flowchart in Fig. 11. Next, the above-mentioned steps S615 to S617 are performed.

[0136] Next, in S1002, the extended application 204 uses the image data editing unit 207 to edit the image data received from the scanning device 102. Details of editing the image data received from the scanning device 102 will be explained with reference to the flowchart in Fig. 11. Thereafter, the above-mentioned steps S618 to S621 are performed, and this processing ends.

[0137] Next, a description will be given of the scan instruction command generation process executed by the extension application 204 according to the second embodiment. This scan instruction command generation process includes the processes of S606, S607, S608, S609, S1001, S615, S1002, and S618 described above.

[0138] Fig. 11 is a flowchart showing the procedure of a scan instruction command generation process executed by the extension application 204 of the second embodiment. Note that the scan instruction command generation process of Fig. 11 is similar to the scan instruction command generation process of Fig. 7 described above, and the following will particularly describe the differences from the scan instruction command generation process of Fig. 7 described above. Note that the scan instruction command generation process of Fig. 11, like the scan instruction command generation process of Fig. 7 described above, is also realized by the CPU 111 executing the program of the extension application 204 read from the external storage device 114 to the RAM 113.

[0139] 11, first, the above-described steps S701 to S707 are performed. When a scan instruction is received (YES in S707), the extension application 204 acquires the capability information of the scan device 102 from the shared information 208. If the capability information of the scan device 102 is not available, the scan function extension unit 206 of the extension application 204 may request the capability information from the scan device 102 and store it in the shared information 208.

[0140] Next, in S1101, the extension application 204 determines whether or not the scan setting information includes setting values ​​for scan functions that the scan device 102 does not support, based on the acquired capability information.

[0141] If it is determined in S1101 that the scan setting information does not include setting values ​​for scan functions that are not supported by the scan device 102, the process proceeds to S708, and then to S709.

[0142] If it is determined in S1101 that the scan setting information includes a setting value for a function that is not supported by the scanning device 102, the process proceeds to S1102. In S1102, the extended application 204 creates a scan instruction command that does not include a setting value for a scan function that is not supported by the scanning device 102. In this embodiment, the scan instruction command created in S1102 does not include a setting value for a sharpness adjustment function that is not supported by the scanning device 102. Next, the process proceeds to S709 described above, and the created scan instruction command is sent to the scanning device 102. Next, the process proceeds to S710. When all image data has been received from the scanning device 102 (YES in S710), the process proceeds to S1103.

[0143] In S1103, the extension application 204 determines whether the scan setting information includes a setting value for a scan function that requires editing by the image data editing unit 207. The setting value for a scan function that requires editing by the image data editing unit 207 is, for example, a setting value for a sharpness adjustment function.

[0144] If it is determined in S1103 that the scan setting information does not include any setting values ​​for scan functions that require editing by the image data editing unit 207, the process proceeds to S711. In S711, the image data received from the scanning device 102 is sent directly to the general-purpose scan software 202. Thereafter, the process ends.

[0145] If it is determined in S1103 that the scan setting information contains setting values ​​for scan functions that require editing by the image data editing unit 207, the process proceeds to S1104.

[0146] In S1104, the extended application 204 uses the image data editing unit 207 to edit the image data received from the scanning device 102. Specifically, the image data editing unit 207 performs sharpness adjustment in the text area corresponding to the adjustment level for the text area, and performs sharpness adjustment in the photo area and image area corresponding to the adjustment level for the photo area / image area, for the image data received from the scanning device 102. Thereafter, the process proceeds to S711, where the image data whose sharpness has been adjusted in S1104 is sent to the general-purpose scanning software 202. Thereafter, the process ends.

[0147] In the second embodiment described above, when it is determined that the scanning device 102 does not support the sharpness adjustment function, the extension application 204 causes the scanning device 102 to send a scan instruction command that does not include the setting value set on the advanced setting screen 305b. Furthermore, the extension application 204 performs sharpness adjustment on image data generated by the scanning process executed by the scanning device 102 in accordance with the scan instruction command. This allows the user to use the sharpness adjustment function even if the scanning device 102 does not support the sharpness adjustment function.

[0148] Note that, in the present embodiment, a configuration has been described in which a scan instruction command that does not include a setting value for a sharpness adjustment function that the scan device 102 does not support is transmitted to the scan device 102, but this configuration is not limited to this. Even if the scan device 102 receives a scan instruction command that includes a setting value for a scan function that the scan device 102 does not support, the scan device 102 will not be able to interpret the setting value for the scan function and will not use the scan function in the scan process. In other words, even if the scan device 102 receives a scan instruction command that includes a setting value for the scan function, the scan device 102 will execute a scan process equivalent to the scan process corresponding to the scan instruction command that does not include the setting value for the scan function. For this reason, the scan device 102 may be configured to receive a scan instruction command that includes a setting value for a sharpness adjustment function that the scan device 102 does not support.

[0149] Next, a program, a communication system, an information processing device, and a control method for an information processing device according to a third embodiment will be described. The third embodiment is basically the same as the first embodiment in terms of configuration and operation, but differs from the first embodiment in that the extension application 204 edits the scan instruction command created by the general-purpose scan software 202. Therefore, a description of the overlapping configuration and operation will be omitted, and the following description will focus on the different configuration and operation.

[0150] FIG. 12 is a sequence diagram illustrating the steps of scan control processing executed in the communication system of the third embodiment. The scan control processing in FIG. 12 is similar to the scan control processing in FIG. 6 described above, and the following description focuses on differences from the scan control processing in FIG. 6 described above. The processing by the host computer 101 in FIG. 12 is implemented by the CPU 111 reading the scan application 201, general-purpose scan software 202, and extension application 204 programs from the external storage device 114 to the RAM 113 and executing them. The processing by the scanning device 102 in FIG. 12 is implemented by the CPU 191 of the scanning device 102 reading the programs stored in the ROM 192 or the external storage device 199 to the RAM 193 and executing them. The scan control processing in FIG. 12 will also be described for a configuration in which the host computer 101 includes the extension application 204, as shown in FIG. 2(c) described above. The scan control processing in FIG. 12 also assumes that the edit control processing in FIG. 4 described above has already been executed. By this editing control process, the scan function information 203 is added with an option for a scan function (for example, a sharpness adjustment function) that is not supported by the general-purpose scan software 202 but is supported by the scan device 102 and the extension application 204.

[0151] 12, the above-mentioned steps S601 to S612 are performed. Next, in step S1201, the general-purpose scanning software 202 creates a scan instruction command. Note that the scan instruction command created in step S1201 does not include setting values ​​for scan functions that the general-purpose scanning software 202 does not support, such as a sharpness adjustment function.

[0152] Next, in S1202, the general-purpose scan software 202 sends the created scan instruction command to the extension application 204.

[0153] Next, in S1203, the extension application 204 edits the received scan instruction command. Specifically, the extension application 204 adds instructions for scan functions not supported by the general-purpose scan software 202 or changes existing instructions to the received scan instruction command. Here, the scan instruction command created by the general-purpose scan software 202 in S1201 does not include setting values ​​for scan functions not supported by the general-purpose scan software 202, for example, setting values ​​for the sharpness adjustment function. Therefore, in S1203, the setting values ​​set on the advanced settings screen 305b (setting values ​​for the sharpness adjustment function) are added to the received scan instruction command. Hereinafter, the scan instruction command obtained in S1203 will be referred to as a function-extended scan instruction command.

[0154] Next, in S1204, the extension application 204 sends the function-extended scan instruction command to the general-purpose scan software 202.

[0155] In S1205, the general-purpose scan software 202 sends the function-enhanced scan instruction command to the scan device 102. Next, the above-described S616 is performed, and the scan device 102 interprets the function-enhanced scan instruction command and executes the scan process.

[0156] Next, in S1206, the scanning device 102 transmits the generated image data to the general-purpose scanning software 202. Thereafter, the above-described steps S619 to S621 are performed, and this processing ends.

[0157] In the third embodiment described above, the extension application 204 adds the setting value of the sharpness adjustment function set on the detailed setting screen 305b to the scan instruction command created by the general-purpose scan software 202. This allows the scanning device 102 to execute the scan process using the setting value set on the detailed setting screen 305b, thereby providing the user with image data whose sharpness has been adjusted using the setting value.

[0158] Next, a program, a communication system, an information processing device, and a control method for an information processing device according to a fourth embodiment will be described. The fourth embodiment is basically the same as the first embodiment in terms of configuration and operation. However, the fourth embodiment differs from the first embodiment in that the extension application 204 edits the scan instruction command created by the general-purpose scan software 202 and the scan device 102 does not support the sharpness adjustment function. Therefore, a description of the overlapping configuration and operation will be omitted, and the following description will focus on the different configuration and operation.

[0159] FIG. 13 is a sequence diagram illustrating the steps of a scan control process executed in a communication system according to a fourth embodiment. In the fourth embodiment, it is assumed that the scanning device 102 does not support a sharpness adjustment function. The scan control process in FIG. 13 is similar to the scan control processes in FIGS. 10 and 12 described above. The following describes differences from the scan control processes in FIGS. 10 and 12. The process by the host computer 101 in FIG. 13 is implemented by the CPU 111 loading the scan application 201, general-purpose scanning software 202, and extension application 204 from the external storage device 114 to the RAM 113 and executing them. The process by the scanning device 102 in FIG. 13 is implemented by the CPU 191 of the scanning device 102 loading the programs stored in the ROM 192 or the external storage device 199 to the RAM 193 and executing them. The scan control process in FIG. 13 will also be described for a configuration in which the host computer 101 includes the extension application 204, as shown in FIG. 2(c) described above. 13, it is assumed that the edit control process of Fig. 9 has already been executed. By this edit control process, an option for a sharpness adjustment function that is incompatible with the general-purpose scan software 202 and the scan device 102 but is supported by the extension application 204 is added to the scan function information 203.

[0160] 13, first, the above-described steps S601 to S612 are performed, followed by the above-described steps S1201 to S1205, S616, and S1206. In the fourth embodiment, the scan instruction command obtained by editing in S1203 is described as not including a setting value for the sharpness adjustment function that is not supported by the scan device 102 and is supported by the extension application 204. However, this is not limited to this. If the scan device 102 does not support the sharpness adjustment function, even if the scan device 102 receives a scan instruction command including a setting value for the sharpness adjustment function, the scan device 102 cannot interpret the setting value for the sharpness adjustment function. The scan device 102 performs a scan process using setting values ​​included in the scan instruction command other than the setting value for the sharpness adjustment function. In this way, even if a scan instruction command including a setting value for the sharpness adjustment function is received by a scan device 102 that does not support the sharpness adjustment function, the scan process is performed in the same manner as if the scan instruction command not including the setting value for the sharpness adjustment function was received. For this reason, in the fourth embodiment, the scan instruction command obtained by editing in S1203 may include the setting value of the sharpness adjustment function.

[0161] Next, in S1301 , the general-purpose scan software 202 transmits the image data received from the scanning device 102 to the extension application 204 .

[0162] Next, in S1302, similar to S1002 described above, the extended application 204 uses the image data editing unit 207 to edit the image data received from the scanning device 102. Specifically, the image data editing unit 207 performs sharpness adjustment in the text area corresponding to the adjustment level of the text area for the image data received from the scanning device 102, and performs sharpness adjustment in the photo area and image area corresponding to the adjustment level of the photo area / image area for the image data.

[0163] Next, in S1303, the extension application 204 transmits the image data obtained in S1302 to the general-purpose scan software 202. After that, the above-mentioned steps S619 to S621 are performed.

[0164] Even with the configuration of the fourth embodiment, the user can utilize the sharpness adjustment function.

[0165] Next, a program, a communication system, an information processing device, and a control method for an information processing device according to a fifth embodiment will be described. The fifth embodiment is basically the same as the first embodiment in terms of configuration and operation, but differs from the first embodiment in that the standard scan instruction command conforming to the standard protocol is not extended, but an extended scan instruction command is separately created. Therefore, a description of the overlapping configuration and operation will be omitted, and the following description will focus on the different configuration and operation.

[0166] FIG. 14 is a sequence diagram illustrating the steps of scan control processing executed in the communication system of the fifth embodiment. The scan control processing in FIG. 14 is similar to the scan control processing in FIG. 6 described above, and the following description focuses on differences from the scan control processing in FIG. 6 described above. The processing by the host computer 101 in FIG. 14 is implemented by the CPU 111 reading the scan application 201, the general-purpose scan software 202, and the extension application 204 from the external storage device 114 to the RAM 113 and executing them. The processing by the scanning device 102 in FIG. 14 is implemented by the CPU 191 of the scanning device 102 reading the programs stored in the ROM 192 or the external storage device 199 to the RAM 193 and executing them. The scan control processing in FIG. 14 will also be described for a configuration in which the host computer 101 includes the extension application 204, as shown in FIG. 2(c) described above. The scan control processing in FIG. 14 also assumes that the edit control processing in FIG. 4 described above has already been executed. By this editing control process, the scan function information 203 is added with an option for a scan function (for example, a sharpness adjustment function) that is not supported by the general-purpose scan software 202 but is supported by the scan device 102 and the extension application 204.

[0167] 14, first, the above-described steps S601 to S613 are performed. Next, in S1401, the extension application 204 creates a standard scan instruction command that complies with the standard protocol. Note that the standard scan instruction command created in S1401 does not record scan functions that are not supported by the standard protocol. For example, if the sharpness adjustment function is not supported by the standard protocol, the standard scan instruction command does not include the setting value of the sharpness adjustment function that was set on the advanced settings screen 305b.

[0168] Next, in S1402, the extension application 204 creates an extended scan command to implement a scan function that is not supported by the standard protocol. The extended scan command includes, for example, setting values ​​for a scan function that is not supported by the standard protocol but is supported by the extension application 204. For example, if the sharpness adjustment function is not supported by the standard protocol, the extended scan command includes setting values ​​for the sharpness adjustment function that were set on the detailed settings screen 305b.

[0169] Next, in S1403, the extension application 204 transmits a standard scan instruction command to the scanning device 102. Also, in S1404, the extension application 204 transmits an extended scan instruction command to the scanning device 102.

[0170] Next, in S1405, the scanning device 102 interprets the received standard scan instruction command and extended scan instruction command, respectively, and executes the scan process. After that, the above-mentioned steps S617 to S621 are performed, and this process ends.

[0171] Here, a description will be given of the scan instruction command generation process executed by the extension application 204 in the fifth embodiment. This scan instruction command generation process includes the processes of S606, S607, S608, S609, S1401, S1402, S1403, S1404, and S618 described above.

[0172] Fig. 15 is a flowchart showing the procedure of a scan instruction command generation process executed by the extension application 204 of the fifth embodiment. Note that the scan instruction command generation process of Fig. 15 is similar to the scan instruction command generation process of Fig. 7 described above, and the following will particularly describe the differences from the scan instruction command generation process of Fig. 7 described above. The scan instruction command generation process of Fig. 15, like the scan instruction command generation process of Fig. 7 described above, is also realized by the CPU 111 executing the program of the extension application 204 read from the external storage device 114 to the RAM 113.

[0173] 15, the above-described steps S701 to S707 are performed. Upon receiving a scan instruction (YES in step S707), the extension application 204 generates a standard scan instruction command conforming to the standard protocol in step S1501 (see, for example, step S1401 described above). Next, in step S1502, the extension application 204 generates an extended scan instruction command for implementing a scan function not supported by the standard protocol (see, for example, step S1402 described above). Next, in step S1503, the extension application 204 transmits the standard scan instruction command generated in step S1501 to the scanning device 102 (see, for example, step S1403 described above). Next, in step S1504, the extension application 204 transmits the extended scan instruction command generated in step S1502 to the scanning device 102 (see, for example, step S1404 described above). Thereafter, the above-described steps S710 to S711 are performed, and the process ends.

[0174] In the fifth embodiment described above, a standard scan instruction command conforming to the standard protocol and an extended scan instruction command for implementing a scan function not supported by the standard protocol are both transmitted to the scan device 102. This allows the settings of the scan function not supported by the standard protocol to be reflected in the scan instruction command.

[0175] Next, a program, a communication system, an information processing device, and a control method for an information processing device according to a sixth embodiment will be described. The sixth embodiment is basically the same as the first embodiment in terms of configuration and operation, but differs from the first embodiment in that a preview image is displayed on the detailed setting screen 305b. Therefore, a description of the overlapping configuration and operation will be omitted, and the following description will focus on the different configuration and operation.

[0176] 16A is an example of capability information acquired from the scanning device 102 according to the sixth embodiment. As shown in table 1601, information 1602 indicating that the scanning device 102 supports a preview function can be acquired from the scanning device 102.

[0177] 16B is an example of a list of extended application support functions. In the sixth embodiment, as shown in information 1604 in table 1603, the extended application also supports the preview function.

[0178] Fig. 16(c) is a diagram showing an example of a detailed settings screen 305b on which the preview function can be used. In addition to the above-mentioned control 306b, setting end button 307b, and controls 308b to 311b, detailed settings screen 305b in Fig. 16(c) includes an area 1605 for displaying a preview image and a control 1606 for issuing a command to display the preview.

[0179] FIG. 17 is a sequence diagram illustrating the steps of scan control processing executed in a communication system according to the sixth embodiment. The scan control processing in FIG. 17 is similar to the scan control processing in FIG. 6 described above, and the following description focuses on differences from the scan control processing in FIG. 6 described above. The processing by the host computer 101 in FIG. 17 is implemented by the CPU 111 reading the scan application 201, the general-purpose scan software 202, and the extension application 204 from the external storage device 114 to the RAM 113 and executing them. The processing by the scanning device 102 in FIG. 17 is implemented by the CPU 191 of the scanning device 102 reading the programs stored in the ROM 192 or the external storage device 199 to the RAM 193 and executing them. FIG. 17 illustrates the scan control processing in a configuration in which the host computer 101 includes the extension application 204, as shown in FIG. 2(c) described above. The scan control processing in FIG. 17 assumes that the edit control processing in FIG. 4 described above has already been executed. By this editing control process, the scan function information 203 is added with an option for a scan function (for example, a sharpness adjustment function) that is not supported by the general-purpose scan software 202 but is supported by the scan device 102 and the extension application 204.

[0180] 17, first, the above-described steps S601 to S607 are performed. Next, in step S1701, the extension application 204 receives an instruction to display a preview. The user can issue an instruction to display a preview by operating the pointing device 117 or the keyboard 118 to select the control 1606.

[0181] Next, in S1702, the extended application 204 transmits a preview instruction command, which is a scan instruction for previewing, to the scanning device 102. In S1702, for example, a preview instruction command for executing a scan process with the setting value of the sharpness adjustment function set on the advanced setting screen 305b at this time point is transmitted to the scanning device 102.

[0182] Next, in S1703, the scanning device 102 interprets the received preview instruction command and executes scanning processing. In this scanning processing, for example, the scanning device 102 performs sharpness adjustment on the image data generated by reading the document, in accordance with the setting value set by the user on the advanced setting screen 305b at the time of S1702.

[0183] Next, in S1704, the scanning device 102 transmits the image data generated by the scanning process in S1703 to the extension application 204.

[0184] Next, in S1705, the extension application 204 uses the received image data to display a preview image in the area 1605 of the detailed setting screen 305b. The display of the preview image will be described with reference to the flowchart in Fig. 18. Next, the above-mentioned steps S608 to S621 are performed, and this process ends.

[0185] Next, a description will be given of the scan instruction command generation process executed by the extension application 204 according to the sixth embodiment. This scan instruction command generation process includes the processes of S606, S607, S1701, S1702, S1705, S608, S609, S614, S615, and S618 described above.

[0186] Fig. 18 is a flowchart showing the procedure of a scan instruction command generation process executed by the extension application 204 of the sixth embodiment. Note that the scan instruction command generation process of Fig. 18 is similar to the scan instruction command generation process of Fig. 7 described above, and the following will particularly describe the differences from the scan instruction command generation process of Fig. 7 described above. Note that the scan instruction command generation process of Fig. 18, like the scan instruction command generation process of Fig. 7 described above, is also realized by the CPU 111 executing the program of the extension application 204 read from the external storage device 114 to the RAM 113.

[0187] 18, first, the above-described steps S701 to S704 are performed. Next, in step S1801, the scan setting screen extension unit 205 of the extension application 204 determines whether or not a preview display instruction has been received from the user.

[0188] If it is determined in S1801 that a preview display instruction has not been received from the user, the process proceeds to S705. The subsequent process is the same as the scan instruction command generation process described above with reference to FIG.

[0189] If it is determined in S1801 that a preview display instruction has been received from the user, the process proceeds to S1802. In S1802, the extension application 204 creates a preview instruction command based on the setting values ​​saved in S704. Note that in S1802, the preview instruction command is created in the same manner as the scan instruction command created in S708 described above.

[0190] Next, in S1803, the extended application 204 sends a preview instruction command to the scanning device 102 (see, for example, S1702 described above). Next, in S1804, the extended application 204 determines whether image data has been received from the scanning device 102. The extended application 204 waits until image data has been received from the scanning device 102, and when image data has been received from the scanning device 102 (YES in S1804), the process proceeds to S1805.

[0191] In S1805, the extension application 204 uses the received image data to display a preview image in the area 1605 of the detailed setting screen 305b. Then, the process proceeds to S705. The subsequent process is the same as the scan instruction command generation process in FIG. 7 described above.

[0192] In the sixth embodiment described above, a preview image is displayed using the settings configured on the advanced settings screen 305b, allowing the user to check the clarity of the image data in a pre-scan before issuing an instruction to perform a main scan.

[0193] Furthermore, in the sixth embodiment described above, in response to a preview display instruction received from a user, a preview instruction command is output to cause the scanning device 102 to execute a scan process for generating image data to be used for displaying a preview image. This allows the image data generated by the scanning device 102 to be used to display a preview image corresponding to the setting values ​​set on the advanced setting screen 305b.

[0194] Furthermore, in the sixth embodiment described above, the preview image is displayed in area 1605 on detail setting screen 305b, which allows the user to easily check, on the same screen, the sharpness corresponding to the setting value set on detail setting screen 305b.

[0195] In the sixth embodiment described above, the preview image may be displayed on a screen different from the detailed setting screen 305b. For example, when the user selects the control 1606 for issuing a preview display instruction, the screen of the display unit 119 switches from the detailed setting screen 305b to a preview screen (not shown). On this preview screen, the preview image is displayed, for example, full screen. This allows the user to check in more detail the clarity corresponding to the setting value set on the detailed setting screen 305b.

[0196] In addition, in the sixth embodiment described above, the host computer 101 may be configured to discard the preview image when it receives an instruction from the user in S608 to end the detailed settings or when it receives an instruction from the user to cancel the detailed settings.

[0197] Furthermore, in the sixth embodiment described above, the preview image may be held until image data is acquired by a main scan so that the preview image can be displayed again in accordance with an instruction received from the user.

[0198] Furthermore, in the sixth embodiment described above, if the user changes the setting value of the sharpness adjustment function after the preview image is displayed, the image data editing unit 207 may edit this preview image and display the edited preview image.

[0199] Fig. 19 is a flowchart showing another procedure of the scan instruction command generation process executed by the extension application 204 of the sixth embodiment. Note that the scan instruction command generation process of Fig. 19 is similar to the scan instruction command generation process of Fig. 18 described above, and the following will particularly describe the content that differs from the scan instruction command generation process of Fig. 18 described above. Note that the scan instruction command generation process of Fig. 19, like the scan instruction command generation process of Fig. 18 described above, is also realized by the CPU 111 executing the program of the extension application 204 that has been read from the external storage device 114 to the RAM 113.

[0200] 19, first, the above-described steps S701 to S704 are performed. Next, in step S1901, the extension application 204 determines whether or not the preview image has already been displayed.

[0201] If it is determined in S1901 that the preview image has not been displayed, the process proceeds to S1801. The subsequent processes are the same as the scan instruction command generation process in FIG.

[0202] If it is determined in S1901 that the preview image has already been displayed, the process proceeds to S1902. In S1902, the extension application 204 determines whether the function whose setting was changed in S703 can be processed by the image data editing unit 207. For example, if the function whose setting was changed in S703 is a sharpness adjustment function, the sharpness adjustment function can be processed by the image data editing unit 207, so it is determined that the function whose setting was changed in S703 can be processed by the image data editing unit 207. In this case, the process proceeds to S1903.

[0203] In S1903, the image data editing unit 207 performs image processing to reflect the setting change. For example, if the function whose setting was changed in S703 is a sharpness adjustment function, the image data editing unit 207 performs sharpness adjustment at the changed adjustment level on the image data used to display the preview image.

[0204] Next, in S1904, the extension application 204 displays a preview image in the area 1605 of the detailed setting screen 305b using the image data that has undergone image processing. The process then proceeds to S1801. The subsequent process is the same as the scan instruction command generation process in FIG. 18 described above.

[0205] If it is determined in S1902 that the function whose setting was changed in S703 cannot be processed by the image data editing unit 207, the process proceeds to S1801. The subsequent process is the same as the scan instruction command generation process in FIG. 18 described above.

[0206] 19, if the setting values ​​are changed on the detailed setting screen 305b while a preview image is displayed, the image data used to display the preview image is subjected to sharpness adjustment using the changed setting values. This sharpness-adjusted image data is displayed as the preview image. This makes it possible to provide a preview image corresponding to the changed setting values ​​without having the scanning device 102 perform another scan.

[0207] Next, a program, a communication system, an information processing device, and a control method for an information processing device according to a seventh embodiment will be described. The seventh embodiment is basically the same as the first embodiment in terms of configuration and operation, but differs from the first embodiment in that image data used to display a preview image can be saved in accordance with a user instruction. Therefore, a description of the overlapping configuration and operation will be omitted, and the following description will focus on the different configuration and operation.

[0208] 20, the advanced settings screen 305b in the seventh embodiment includes a control 2001 for instructing saving of the image data used to display the preview image. This allows the user to save the image data used to display the preview image if the preview image has the intended clarity.

[0209] FIG. 21 is a sequence diagram illustrating the steps of scan control processing executed in a communication system according to the seventh embodiment. The scan control processing in FIG. 21 is similar to the scan control processing in FIG. 6 described above, and the following description focuses on differences from the scan control processing in FIG. 6 described above. The processing by the host computer 101 in FIG. 21 is implemented by the CPU 111 reading the scan application 201, general-purpose scan software 202, and extension application 204 programs from the external storage device 114 to the RAM 113 and executing them. The processing by the scanning device 102 in FIG. 21 is implemented by the CPU 191 of the scanning device 102 reading the programs stored in the ROM 192 or the external storage device 199 to the RAM 193 and executing them. Note that FIG. 21 also describes scan control processing in a configuration in which the host computer 101 includes the extension application 204, as shown in FIG. 2(c) described above. The scan control processing in FIG. 21 assumes that the edit control processing in FIG. 4 described above has already been executed. By this editing control process, the scan function information 203 is added with an option for a scan function (for example, a sharpness adjustment function) that is not supported by the general-purpose scan software 202 but is supported by the scan device 102 and the extension application 204.

[0210] 21, first, the above-described steps S601 to S607 are performed, and then the above-described steps S1701 to S1705 are performed. Note that the detailed setting screen 305b on which the preview image is displayed in S1705 includes a control 2001 for instructing saving of the image data used to display the preview image.

[0211] Next, in S2101, the extension application 204 receives an instruction to save the preview image. The user can issue an instruction to save the preview image by operating the pointing device 117 or the keyboard 118 to select the control 2001. When the save instruction is received, the process proceeds to S618 described above, where the extension application 204 passes the image data used to display the preview image to the general-purpose scan software 202. Thereafter, S619 to S620 described above are executed, and the process ends.

[0212] Next, a description will be given of the scan instruction command generation process executed by the extension application 204 of the seventh embodiment. This scan instruction command generation process includes the processes of S606, S607, S1701, S1702, S1705, S2101, and S618 described above.

[0213] Fig. 22 is a flowchart showing the procedure of a scan instruction command generation process executed by the extension application 204 of the seventh embodiment. Note that the scan instruction command generation process of Fig. 22 is similar to the scan instruction command generation process of Fig. 7 and Fig. 18 described above, and the following will particularly describe the differences from the scan instruction command generation process of Fig. 7 and Fig. 18 described above. Note that the scan instruction command generation process of Fig. 22, like the scan instruction command generation process of Fig. 7 and Fig. 18 described above, is also realized by the CPU 111 executing the program of the extension application 204 read from the external storage device 114 to the RAM 113.

[0214] In FIG. 22, first, the above-mentioned steps S701 to S704 and S1801 are performed.

[0215] If it is determined in S1801 that a preview display instruction has not been received from the user, the process proceeds to S705. The subsequent process is the same as the scan instruction command generation process described above with reference to FIG.

[0216] If it is determined in S1801 that a preview display instruction has been received from the user, the process proceeds to S1802. Next, S1803 to S1805 are performed. Next, in S2201, the scan setting screen extension unit 205 of the extension application 204 determines whether a preview image saving instruction has been received from the user.

[0217] If it is determined in S2201 that the user has not given an instruction to save the preview image, the process proceeds to S705. The subsequent processes are the same as the scan instruction command generation process in FIG.

[0218] If it is determined in S2201 that an instruction to save the preview image has been received from the user, the process proceeds to S711, where the extension application 204 transmits the image data used to display the preview image to the general-purpose scan software 202. Then, the process ends.

[0219] Next, a program, a communication system, an information processing device, and a control method for an information processing device according to an eighth embodiment will be described. The eighth embodiment is basically the same as the first embodiment in terms of configuration and operation, but differs from the first embodiment in that a preview image is displayed using image data previously stored in the extension application 204, rather than image data obtained by scanning a document. Therefore, a description of the overlapping configuration and operation will be omitted, and the following description will focus on the different configuration and operation.

[0220] FIG. 23 is a sequence diagram illustrating the steps of scan control processing executed in a communication system according to the eighth embodiment. The scan control processing in FIG. 23 is similar to the scan control processing in FIGS. 6 and 17 described above. Below, differences from the scan control processing in FIGS. 6 and 17 will be described. The processing by the host computer 101 in FIG. 23 is implemented by the CPU 111 reading the scan application 201, general-purpose scan software 202, and extension application 204 programs from the external storage device 114 to the RAM 113 and executing them. The processing by the scanning device 102 in FIG. 23 is implemented by the CPU 191 of the scanning device 102 reading the programs stored in the ROM 192 or the external storage device 199 to the RAM 193 and executing them. Note that FIG. 23 also describes scan control processing in a configuration in which the host computer 101 includes the extension application 204, as shown in FIG. 2(c) described above. The scan control processing in FIG. 23 also assumes that the edit control processing in FIG. 4 described above has already been executed. By this editing control process, the scan function information 203 is added with an option for a scan function (for example, a sharpness adjustment function) that is not supported by the general-purpose scan software 202 but is supported by the scan device 102 and the extension application 204.

[0221] In FIG. 23, first, the above-mentioned steps S601 to S607 and S1701 are performed.

[0222] Next, in S2301, the extension application 204 displays a preview image corresponding to the setting value set on the detail setting screen 305b in the area 1605 of the detail setting screen 305b. In S2301, for example, from among a plurality of image data for preview that are stored in advance in the external storage device 114 or the like and that correspond to each adjustment level, image data corresponding to the setting value set on the detail setting screen 305b is displayed as the preview image. Alternatively, sharpness adjustment corresponding to the setting value set on the detail setting screen 305b is performed on the preview image data that is stored in advance in the external storage device 114 or the like, and the image data after the sharpness adjustment is displayed as the preview image. Thereafter, S608 to S621 are performed, and this processing ends.

[0223] Next, a description will be given of the scan instruction command generation process executed by the extension application 204 according to the eighth embodiment. This scan instruction command generation process includes the processes of S606, S607, S1701, S2301, S608, S609, S614, S615, and S618 described above.

[0224] Fig. 24 is a flowchart showing the procedure of a scan instruction command generation process executed by the extension application 204 of the eighth embodiment. Note that the scan instruction command generation process of Fig. 24 is similar to the scan instruction command generation process of Fig. 7 and Fig. 18 described above, and the following will particularly describe the differences from the scan instruction command generation process of Fig. 7 and Fig. 18 described above. Note that the scan instruction command generation process of Fig. 24, like the scan instruction command generation process of Fig. 7 described above, is also realized by the CPU 111 executing the program of the extension application 204 read from the external storage device 114 to the RAM 113.

[0225] In FIG. 24, first, the above-mentioned steps S701 to S703 are performed.

[0226] If it is determined in S703 that the user has set the function on the detailed setting screen 305b, the process proceeds to S704, and then to S2401.

[0227] If it is determined in S703 that the user has not set the function on the detailed setting screen 305b, the process proceeds to S2401. In S2401, the extension application 204 determines whether the preview image has already been displayed.

[0228] If it is determined in S2401 that the preview image has not already been displayed, the process proceeds to S1801 described above.

[0229] If it is determined in S2401 that the preview image has already been displayed, the process proceeds to S2402. In S2402, the extension application 204 updates the preview image based on the setting values ​​saved in S704. Specifically, the extension application 204 uses the image data editing unit 207 to adjust the sharpness of the image data used to display the preview image, corresponding to the setting values ​​saved in S704. The extension application 204 displays the preview image using the image data after the sharpness adjustment in the area 1605 of the detailed setting screen 305b. Next, the process proceeds to S1801 described above.

[0230] If it is determined in S1801 that a preview display instruction has not been received from the user, the process proceeds to S705. The subsequent process is the same as the scan instruction command generation process described above with reference to FIG.

[0231] If it is determined in S1801 that a preview display instruction has been received from the user, the process proceeds to S2403. In S2403, the extension application 204 displays a preview image corresponding to the setting values ​​saved in S704 in the area 1605 of the advanced setting screen 305b (see, for example, S2301 described above). Thereafter, the process proceeds to S705. The subsequent process is the same as the scan instruction command generation process described above in FIG. 7.

[0232] In the eighth embodiment described above, a preview image is displayed using image data previously stored in the extension application 204. That is, there is no need to have the scanning device 102 execute a scan process to generate image data used to display the preview image. This allows the user to quickly check a preview image that differs from the actual image data but corresponds to the setting values ​​set on the advanced setting screen 305b.

[0233] In this embodiment, whether to use image data generated by the scanning device 102 or image data previously stored in the extended application 204 to display a preview image may be determined using capability information of the scanning device 102. For example, if the capability information of the scanning device 102 includes information 1602 indicating that the scanning device 102 supports a preview function, as shown in FIG. 16A, it is determined that the image data generated by the scanning device 102 is used to display a preview image. On the other hand, if the capability information of the scanning device 102 does not include information 1602, it is determined that the image data previously stored in the extended application 204 is used to display a preview image. By controlling in this manner, it is possible to appropriately control the display of a preview image depending on whether the scanning device 102 supports a preview function.

[0234] The present invention can also be realized by supplying a program that realizes one or more functions of the above-described embodiments to a system or device via a network or a storage medium, and having one or more processors in the computer of the system or device read and execute the program.The present invention can also be realized by a circuit (e.g., ASIC) that realizes one or more functions.

[0235] The disclosure of this embodiment includes the following configurations and methods. (Configuration 1) A program that supports a general-purpose program that outputs instructions that can be interpreted by scanners from multiple manufacturers, the program causing a computer to display a setting screen that accepts settings for adjusting the sharpness of a scanned image, and to output a command that causes the scanner to execute a scan process using the settings accepted on the setting screen. (Configuration 2) The program according to configuration 1, wherein a setting value indicating the sharpness of image data generated by the scan process is set by a user on the setting screen. (Configuration 3) The program according to configuration 2, wherein the user sets one of a plurality of different setting values ​​on the setting screen. (Configuration 4) The program according to configuration 2 or 3, wherein the setting value is set on the setting screen for each attribute of the scanned image. (Configuration 5) The program according to configuration 4, wherein the image attributes include at least one of a text area, a photo area, and an image area. (Configuration 6) A program described in any one of configurations 1 to 5, characterized in that the computer receives image data sent from a scanner designated by a user and generated in accordance with the command, determines whether the scanner designated by the user supports sharpness adjustment, and, if it is determined that the scanner designated by the user does not support sharpness adjustment, performs sharpness adjustment on the received image data. (Configuration 7) The program described in Configuration 6, characterized in that if it is determined that the scanner specified by the user does not support sharpness adjustment, the program causes the computer to output a command that does not include the settings accepted on the settings screen. (Configuration 8) The program according to any one of configurations 1 to 7, wherein the command is a command created by extending the function of a command conforming to a standard protocol. (Configuration 9) The program according to any one of configurations 1 to 7, wherein the command is a command that conforms to a standard protocol and is converted into a command system unique to the program. (Configuration 10) A program described in any one of configurations 1 to 7, characterized in that the computer is caused to output a first command conforming to a standard protocol and a second command including settings accepted on the setting screen. (Configuration 11) A program described in any one of configurations 1 to 7, characterized in that the computer adds settings received on the setting screen to a command created by the general-purpose program for causing a scanner designated by a user to execute a scan process. (Configuration 12) A program described in any one of configurations 1 to 11, characterized in that the setting items displayed on the setting screen are determined using scanner capability information designated by the user. (Configuration 13) A program described in any one of configurations 1 to 12, characterized in that the setting items displayed on the setting screen are determined using capability information of an application that operates when the program is executed. (Configuration 14) The program according to any one of configurations 1 to 13, characterized in that the program causes the computer to display a preview image using the settings accepted on the setting screen. (Configuration 15) The program according to configuration 14, wherein the preview image is displayed on the setting screen. (Configuration 16) The program according to configuration 14, wherein the preview image is displayed on a screen different from the setting screen. (Configuration 17) A program described in any one of configurations 14 to 16, characterized in that the computer, upon receiving an instruction from a user to display a preview image, outputs another command to cause the scanner to execute a scanning process to generate image data to be used for displaying the preview image. (Configuration 18) The program according to configuration 17, wherein the preview image is image data generated by a scan process executed by the scanner in accordance with the other command. (Configuration 19) A program described in any one of configurations 14 to 16, characterized in that the preview image is image data stored in advance in the computer and corresponds to the settings accepted on the setting screen. (Configuration 20) A program described in any one of configurations 14 to 19, characterized in that when the settings on the setting screen are changed while the preview image is displayed on the computer, sharpness adjustment is performed on the image data used to display the preview image using the changed settings, and the preview image is displayed using the image data after sharpness adjustment. (Configuration 21) The program according to any one of configurations 14 to 20, characterized in that it causes the computer to display a means for accepting an instruction to save the preview image. (Configuration 22) A program described in any one of configurations 14 to 16, characterized in that the computer is caused to determine, using the capability information of the scanner, whether image data generated by a scanner specified by the user or image data pre-stored in the computer will be used to display a preview image. [Explanation of symbols]

[0236] 101 host computer 102 Scanning Device 111 CPU 119 Display section 120 NETIF 202 General-purpose scanning software 204 Extended Applications 205 Scan Setting Screen Expansion Unit 206 Scan Function Expansion Unit 305a, 305b detailed settings screen 308b~311b Control 1602 Information 1605 area 2001 Control

Claims

1. A program that supports a general-purpose program that outputs instructions that can be commonly interpreted by scanners from multiple manufacturers, On the computer, Display the setting screen to accept the settings for sharpness adjustment of the scanned image, A program for outputting a command for causing the scanner to execute a scan process using the settings received on the setting screen.

2. 2. The program according to claim 1, wherein a setting value indicating the sharpness of image data generated by the scan process is set by a user on the setting screen.

3. 3. The program according to claim 2, wherein the user sets one of a plurality of different setting values ​​on the setting screen.

4. 3. The program according to claim 2, wherein the setting value is set for each attribute of the scanned image on the setting screen.

5. 5. The program according to claim 4, wherein the image attributes include at least one of a character area, a photo area, and an image area.

6. The computer, receiving image data transmitted from a scanner designated by a user and generated in accordance with the command; determining whether the user-specified scanner supports sharpness adjustment; 2. The program according to claim 1, wherein, when it is determined that the scanner designated by the user does not support sharpness adjustment, sharpness adjustment is performed on the received image data.

7. The program according to claim 6, characterized in that, if it is determined that the scanner specified by the user does not support sharpness adjustment, the program causes the computer to output a command that does not include the settings accepted on the setting screen.

8. 2. The program according to claim 1, wherein the command is a command created by extending a function of a command conforming to a standard protocol.

9. 2. The program according to claim 1, wherein the command is a command obtained by converting a command conforming to a standard protocol into a command system unique to the program.

10. 2. The program according to claim 1, wherein the program causes the computer to output a first command conforming to a standard protocol and a second command including the settings accepted on the setting screen.

11. The computer, 2. The program according to claim 1, wherein the settings received on the setting screen are added to a command created by the general-purpose program for causing a scanner designated by a user to execute a scan process.

12. 2. The program according to claim 1, wherein the setting items displayed on the setting screen are determined using scanner capability information designated by the user.

13. 2. The program according to claim 1, wherein the setting items displayed on the setting screen are determined using capability information of an application that runs when the program is executed.

14. The computer, 2. The program according to claim 1, wherein a preview image is displayed using the settings received on the setting screen.

15. 15. The program according to claim 14, wherein the preview image is displayed on the setting screen.

16. 15. The program according to claim 14, wherein the preview image is displayed on a screen different from the setting screen.

17. The computer, 15. The program according to claim 14, further comprising: upon receiving a preview image display instruction from a user, outputting another command for causing the scanner to execute a scanning process for generating image data to be used for displaying the preview image.

18. 18. The program according to claim 17, wherein the preview image is image data generated by a scan process executed by the scanner in accordance with the other command.

19. 15. The program according to claim 14, wherein the preview image is image data stored in advance in the computer and corresponds to the settings accepted on the setting screen.

20. The computer, The program according to claim 14, characterized in that, when the settings on the setting screen are changed while the preview image is displayed, sharpness adjustment is performed on the image data used to display the preview image using the changed settings, and the preview image is displayed using the image data after sharpness adjustment.

21. The computer, 15. The program according to claim 14, further comprising displaying a means for accepting an instruction to save the preview image.

22. The computer, The program according to claim 14, characterized in that it uses the capability information of the scanner to determine whether image data generated by a scanner specified by the user or image data pre-stored in the computer will be used to display the preview image.

23. A method for controlling an information processing device in which a program supporting a general-purpose program that outputs instructions that can be commonly interpreted by scanners from multiple manufacturers is installed, comprising: a step of displaying a setting screen for accepting settings for sharpness adjustment of the read image on a display means of the information processing device; a step of outputting a command for causing a scanner to execute a scan process according to the settings received on the setting screen.

24. An information processing device in which a program supporting a general-purpose program that outputs instructions that can be commonly interpreted by scanners from multiple manufacturers is installed, means for displaying a setting screen for accepting settings for sharpness adjustment of the scanned image; An information processing apparatus comprising: means for outputting a command for causing a scanner to execute a scan process according to the settings received on the setting screen.

Citation Information

Patent Citations

  • Server system and application

    JP2021033526A