编译
使用maven先编译kabeja-core package。然后再编译kabeja-ui和kabeja-dxf文件。
kabeja-svg这个包需要使用到batik-1.8pre文件。暂时找不到。所以没编译,不然可以输出SVG、png等图片格式的文件。
导出DXF
导出DXF文件的方法。
/*
* 输出DXF文件
* @parm in:output format ;
* @parm doc :draftdocment
* @parm out:outputString
* @return
*/
public static void outputdxf(InputStream in,DraftDocument doc,OutputStream out)
throws GenerationException, FileNotFoundException {
SAXDXFGenerationContextBuilder saxdxfGenerationContextBuilder =
new SAXDXFGenerationContextBuilder();
DXFGenerationContext dContext = saxdxfGenerationContextBuilder.buildDXFGenerationContext(in);
DXFGenerator dxfGenerator = new DXFGenerator(dContext);
Map<String, Object> maps = new HashMap<>();
dxfGenerator.generate(doc, maps, out);
}
修改profiles.xml
之所以要修改profiles.xml是因为发现原来的库文件没办法生成单独entitiy图元设置图元的颜色。其实源码中已经写好了DXF图元中的组码的大部分功能。但是输入的部分作者没有将这些组码输出出来,不知道为什么会有保留。
方法
在红框位置。62在组码中代表了图元的颜色
62 | 颜色号(如果不是“随层”,则出现);零表示“随块”(可变的)颜色;256 表示“随层”;负值表示层已关闭(可选) | BYLAYER |