[英]twain scanner not acquiring the image from scanner
我实现了一个小应用程序,以便从扫描仪获取图像,因为我已经使用了TWAIN实现。当我将应用程序作为java小应用程序运行时,它运行良好,但问题是当我从以下位置运行时无法从扫描设备获取图像一个html文件.it没有给出任何错误,我无法调试该应用程序。 任何人都可以告诉我如何解决该问题。
这是我的HTML
<html>
<head><title>Scann</title></head>
<body>
<center>
<applet id="TwainApplet"
code = "com.nic.applet.TwainExample.class"
archive="TwainApplet.jar"
width="200"
height="60">
</applet>
</center>
</body>
</html>
下面是我的吐温班。
public class TwainExample extends Applet implements ScannerListener{
static TwainExample app;
Scanner scanner;
public TwainExample(String[] argv)throws ScannerIOException{
scanner=Scanner.getDevice();
scanner.addListener(this);
scanner.acquire();
}
public void update(ScannerIOMetadata.Type type, ScannerIOMetadata metadata){
if(type.equals(ScannerIOMetadata.ACQUIRED)){
BufferedImage image=metadata.getImage();
System.out.println("Have an image now!");
try{
ImageIO.write(image, "png", new File("mmsc_image.png"));
}catch(Exception e){
e.printStackTrace();
}
}else if(type.equals(ScannerIOMetadata.NEGOTIATE)){
ScannerDevice device=metadata.getDevice();
try{
// device.setShowUserInterface(true);
// device.setShowProgressBar(true);
// device.setResolution(100);
}catch(Exception e){
e.printStackTrace();
}
}else if(type.equals(ScannerIOMetadata.STATECHANGE)){
System.err.println(metadata.getStateStr());
if(metadata.isFinished()){
System.exit(0);
}
}else if(type.equals(ScannerIOMetadata.EXCEPTION)){
metadata.getException().printStackTrace();
}
}
public static void main(String[] argv){
try{
app=new TwainExample(argv);
}catch(Exception e){
e.printStackTrace();
}
}
}
尝试这个
public void update(ScannerIOMetadata.Type type, ScannerIOMetadata metadata){
if(type.equals(ScannerIOMetadata.ACQUIRED)){
BufferedImage image=metadata.getImage();
System.out.println("Have an image now!");
System.out.println("Have"+identy);
try{
File home = new File("C:\\Directory1");//المجلد الاساسي حق الموظفين
File dir = new File(home,identy);//مجلد الموظف عشان نحفظ فيه ملفات الموظف لوحده
if(!dir.exists()){ dir = home;}//اذا مجلد الموظف غير موجود احفظ في المجلد الاساسي
File file = new File(dir,"we.jpg");//file.delete();
ImageIO.write(image, "JPG", file);
// ImageIO.write(image, "png", new File("C:\\Directory1//we.png"));
System.out.println(file.getCanonicalPath());
convertTOpdf();
}catch(Exception e){
e.printStackTrace();
JOptionPane.showMessageDialog(null, e.getMessage());
}
}else if(type.equals(ScannerIOMetadata.NEGOTIATE)){
ScannerDevice device=metadata.getDevice();
try{
device.setShowUserInterface(true);
device.setShowProgressBar(true);
device.setResolution(100);
}catch(Exception e){
e.printStackTrace();
JOptionPane.showMessageDialog(null, e.getMessage());
}
}else if(type.equals(ScannerIOMetadata.STATECHANGE)){
System.err.println(metadata.getStateStr());
if(metadata.isFinished()){
//System.exit(0);
}
}else if(type.equals(ScannerIOMetadata.EXCEPTION)){
metadata.getException().printStackTrace();
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.