700字范文,内容丰富有趣,生活中的好帮手!
700字范文 > cad转换成png svg

cad转换成png svg

时间:2019-10-11 06:56:30

相关推荐

cad转换成png svg

1.设置仓库可以在setting.xml中设置(也可以在pom中设置,设置项即可)

<mirror> <id>AsposeJavaAPI</id> <name>Aspose Java API</name> <url>/repo/</url></mirror>

2.pom

<!-- Aspose CAD标准dwg文件转svg或png --><dependency><groupId>com.aspose</groupId><artifactId>aspose-cad</artifactId><version>20.1</version></dependency><dependency><groupId>com.aspose</groupId><artifactId>aspose-pdf</artifactId><version>20.1</version></dependency><dependency><groupId>org.apache.xmlgraphics</groupId><artifactId>batik-all</artifactId><version>1.12</version><type>pom</type></dependency><dependency><groupId>dom4j</groupId><artifactId>dom4j</artifactId><version>1.6.1</version></dependency><repositories><!-- Aspose maven仓库 --><repository><id>AsposeJavaAPI</id><name>Aspose Java API</name><url>/repo/</url></repository></repositories>

3.装换工具类

CADUtils.java

package com.mon.cad.utils;import com.aspose.cad.Image;import com.aspose.cad.fileformats.cad.CadDrawTypeMode;import com.aspose.cad.imageoptions.CadRasterizationOptions;import com.aspose.cad.imageoptions.PngOptions;import com.aspose.cad.imageoptions.SvgOptions;import com.aspose.cad.imageoptions.UnitType;/*** @description: cad转换工具类* @author: Wzq* @create: -06-18 15:18*/public class CADUtils {/*** dwg转换成png* @param sourcePath* @param targetPath*/public static void dwgToPng(String sourcePath,String targetPath){//String sourcePath = "D:\\IDEA\\cad\\17.dwg";//String targetPath = "D:\\IDEA\\cad\\17.png";PngOptions pngOptions = new PngOptions();// 设置png的压缩等级 0 最低 9 最高pngOptions.setCompressionLevel(0);Image image = Image.load(sourcePath);// 原图尺寸类型int unitType = image.getUnitType();int width = image.getWidth();int height = image.getHeight();// 100万像素等比倍数,比较粗,就这样吧int zoom = 1008000 / width / height;CadRasterizationOptions cadRasterizationOptions = new CadRasterizationOptions();cadRasterizationOptions.setPageHeight(width * zoom);cadRasterizationOptions.setPageWidth(height * zoom);cadRasterizationOptions.setDrawType(CadDrawTypeMode.UseObjectColor);// 这个无尺寸类型就当是像素吧cadRasterizationOptions.setUnitType(UnitType.Unitless);pngOptions.setVectorRasterizationOptions(cadRasterizationOptions);image.save(targetPath, pngOptions);}/*** dwg转换成Svg* @param sourcePath* @param targetPath*/public static void dwgToSvg(String sourcePath,String targetPath){SvgOptions options = new SvgOptions();Image image = Image.load(sourcePath);int width = image.getWidth();int height = image.getHeight();//100万像素等比倍数int zoom = 1008000 / width / height;CadRasterizationOptions cadRasterizationOptions = new CadRasterizationOptions();cadRasterizationOptions.setPageHeight(height * zoom);cadRasterizationOptions.setPageWidth(width * zoom);cadRasterizationOptions.setDrawType(CadDrawTypeMode.UseObjectColor);options.setVectorRasterizationOptions(cadRasterizationOptions);//options.setColorType(SvgColorMode.Grayscale);//options.setTextAsShapes(true);image.save(targetPath,options);}public static void main(String[] args) {String sourcePath = "E:\\区域位置图.dwg";// String targetPath = "E:\\区域位置图.png";// CADUtils.dwgToPng(sourcePath,targetPath);String svg = "E:\\区域位置图.svg";CADUtils.dwgToSvg(sourcePath,svg);}}

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。