我需要从给定的DXF文件生成SVG。我尝试使用kabeja软件包将其存档。这是他们在网页上提供的代码。
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import org.xml.sax.ContentHandler;
import org.kabeja.dxf.DXFDocument;
import org.kabeja.parser.DXFParseException;
import org.kabeja.parser.Parser;
import org.kabeja.parser.ParserBuilder;
import org.kabeja.svg.SVGGenerator;
import org.kabeja.xml.SAXGenerator;
public class MyClass{
public MyClass(){
...
}
public void parseFile(String sourceFile) {
Parser parser = ParserBuilder.createDefaultParser();
try {
parser.parse(new FileInputStream(sourceFile));
DXFDocument doc = parser.getDocument();
//the SVG will be emitted as SAX-Events
//see org.xml.sax.ContentHandler for more information
ContentHandler myhandler = new ContentHandlerImpl();
//the output - create first a SAXGenerator (SVG here)
SAXGenerator generator = new SVGGenerator();
//setup properties
generator.setProperties(new HashMap());
//start the output
generator.generate(doc,myhandler);
} catch (DXFParseException e) {
e.printStackTrace();
} catch (IOException ioe) {
ioe.printStackTrace();
}
}
}
听到的是kabeja开发小组在sourceforge web site上提供的代码。但是在上面的代码中,我注意到新包装中缺少某些类。例如
ContentHandler myhandler = new ContentHandlerImpl();
在这行代码中,它创建了contentHandlerImpl对象,但是在新的kabeja包中它没有该类,因此它不会生成SVG文件。因此有人可以向我解释如何使用此程序包归档目标。
最佳答案
尝试从kabeja的论坛中阅读symbol ContentHandlerImpl not found