Morena 7 Scanner 完全忽略设置
Morena 7 Scanner completely ignores settings
我正在尝试在我的 java 应用程序中设置 Morena 7,但我无法通过我的代码配置我的扫描仪,它会忽略我设置的设置。
尽管我的扫描仪可以使用示例项目,但它们提供了每个受支持的设置。
我在网上搜索了解释,但我发现 none 文档很少。
这是我用来扫描的代码,它与 tutorial document 中给出的示例相同:
public void scan() throws Exception {
Manager manager = Manager.getInstance();
List devices = manager.listDevices();
if(devices.isEmpty()) {
System.out.println("No scanners detected");
return;
}
Device device = (Device) devices.get(0);
if (device instanceof Scanner) {
Scanner scanner = (Scanner) device;
scanner.setMode(Scanner.RGB_8);
scanner.setResolution(75);
scanner.setFrame(100, 100, 500, 500);
BufferedImage bimage = SynchronousHelper.scanImage(scanner);
// Do the necessary processes with bimage
manager.close();
}
else {
System.out.println("Please Connect A Scanner");
}
}
当我 运行 此代码时,我取回了一张图像,但使用打印机的默认值,颜色、分辨率和扫描区域(框架)等所有设置都将被忽略。
首先,我认为一个原因可能是 Morena 7 总是将扫描仪数据假脱机到文件中的问题。在写入文件之前,您无法访问此扫描仪数据(不幸的是)。因此,如果您想扫描双层图像,您将获得带有灰度的 jpg 图像。 Morena 在 Mac OSX 上将扫描仪数据保存为 jpg,在 Windows.
上将扫描仪数据保存为 bmp
您应该检查 Morena 7 创建的临时文件。假设您使用 Moran 示例中的 class SynchronousHelper,您可以编辑 scanImage 方法,该方法仅使用 ImageIO 加载临时文件。
如果我检查此临时文件(在 Mac OSX 上),将考虑所有设置值,如分辨率和颜色模式。可能您的扫描仪不支持某些功能?或者 Morena 在保存图像时做错了。
并检查系统错误输出。应该看起来像下面这样,您可以看到我将分辨率设置为 400dpi 并将颜色模式设置为双级(ICScannerPixelDataTypeBW 和 bitDepth 1)。
Functional unit: ICScannerFunctionalUnitFlatbed <0x7fefe850f4e0>:
pixelDataType : ICScannerPixelDataTypeBW
supportedBitDepths : <NSMutableIndexSet: 0x7fefe850f4b0>[number of indexes: 2 (in 2 ranges), indexes: (1 8)]
bitDepth : 1
supportedDocumentTypes : <NSMutableIndexSet: 0x7fefede9a9f0>[number of indexes: 6 (in 2 ranges), indexes: (1-5 10)]
documentType : 1
physicalSize : [width = 8.50 inches, height = 14.00 inches]
measurementUnit : 0
supportedResolutions : <NSMutableIndexSet: 0x7fefedee4390>[number of indexes: 7 (in 7 ranges), indexes: (100 150 200 300 400 600 1200)]
preferredResolutions : <NSMutableIndexSet: 0x7fefedee4390>[number of indexes: 7 (in 7 ranges), indexes: (100 150 200 300 400 600 1200)]
resolution : 400
overviewResolution : 150
supportedScaleFactors : <NSMutableIndexSet: 0x7fefedec3dd0>[number of indexes: 1 (in 1 ranges), indexes: (100)]
preferredScaleFactors : <NSMutableIndexSet: 0x7fefedec3dd0>[number of indexes: 1 (in 1 ranges), indexes: (100)]
scaleFactor : 100
acceptsThresholdForBlackAndWhiteScanning : NO
usesThresholdForBlackAndWhiteScanning : NO
thresholdForBlackAndWhiteScanning : 0
templates : (null)
vendorFeatures : (null)
state : 0x00000001
我正在尝试在我的 java 应用程序中设置 Morena 7,但我无法通过我的代码配置我的扫描仪,它会忽略我设置的设置。
尽管我的扫描仪可以使用示例项目,但它们提供了每个受支持的设置。 我在网上搜索了解释,但我发现 none 文档很少。
这是我用来扫描的代码,它与 tutorial document 中给出的示例相同:
public void scan() throws Exception {
Manager manager = Manager.getInstance();
List devices = manager.listDevices();
if(devices.isEmpty()) {
System.out.println("No scanners detected");
return;
}
Device device = (Device) devices.get(0);
if (device instanceof Scanner) {
Scanner scanner = (Scanner) device;
scanner.setMode(Scanner.RGB_8);
scanner.setResolution(75);
scanner.setFrame(100, 100, 500, 500);
BufferedImage bimage = SynchronousHelper.scanImage(scanner);
// Do the necessary processes with bimage
manager.close();
}
else {
System.out.println("Please Connect A Scanner");
}
}
当我 运行 此代码时,我取回了一张图像,但使用打印机的默认值,颜色、分辨率和扫描区域(框架)等所有设置都将被忽略。
首先,我认为一个原因可能是 Morena 7 总是将扫描仪数据假脱机到文件中的问题。在写入文件之前,您无法访问此扫描仪数据(不幸的是)。因此,如果您想扫描双层图像,您将获得带有灰度的 jpg 图像。 Morena 在 Mac OSX 上将扫描仪数据保存为 jpg,在 Windows.
上将扫描仪数据保存为 bmp您应该检查 Morena 7 创建的临时文件。假设您使用 Moran 示例中的 class SynchronousHelper,您可以编辑 scanImage 方法,该方法仅使用 ImageIO 加载临时文件。
如果我检查此临时文件(在 Mac OSX 上),将考虑所有设置值,如分辨率和颜色模式。可能您的扫描仪不支持某些功能?或者 Morena 在保存图像时做错了。
并检查系统错误输出。应该看起来像下面这样,您可以看到我将分辨率设置为 400dpi 并将颜色模式设置为双级(ICScannerPixelDataTypeBW 和 bitDepth 1)。
Functional unit: ICScannerFunctionalUnitFlatbed <0x7fefe850f4e0>:
pixelDataType : ICScannerPixelDataTypeBW
supportedBitDepths : <NSMutableIndexSet: 0x7fefe850f4b0>[number of indexes: 2 (in 2 ranges), indexes: (1 8)]
bitDepth : 1
supportedDocumentTypes : <NSMutableIndexSet: 0x7fefede9a9f0>[number of indexes: 6 (in 2 ranges), indexes: (1-5 10)]
documentType : 1
physicalSize : [width = 8.50 inches, height = 14.00 inches]
measurementUnit : 0
supportedResolutions : <NSMutableIndexSet: 0x7fefedee4390>[number of indexes: 7 (in 7 ranges), indexes: (100 150 200 300 400 600 1200)]
preferredResolutions : <NSMutableIndexSet: 0x7fefedee4390>[number of indexes: 7 (in 7 ranges), indexes: (100 150 200 300 400 600 1200)]
resolution : 400
overviewResolution : 150
supportedScaleFactors : <NSMutableIndexSet: 0x7fefedec3dd0>[number of indexes: 1 (in 1 ranges), indexes: (100)]
preferredScaleFactors : <NSMutableIndexSet: 0x7fefedec3dd0>[number of indexes: 1 (in 1 ranges), indexes: (100)]
scaleFactor : 100
acceptsThresholdForBlackAndWhiteScanning : NO
usesThresholdForBlackAndWhiteScanning : NO
thresholdForBlackAndWhiteScanning : 0
templates : (null)
vendorFeatures : (null)
state : 0x00000001