aspose-cad dwg转pdf dwg转png dwg转svg

aspose-cad dwg转pdf dwg转png dwg转svg

  • 1、首先引入aspose-cad,我的maven中央仓库配置的阿里云,下载不下来,手动到https://mvnrepository.com/放到本地maven仓库的
 <dependency>
     <groupId>com.aspose</groupId>
     <artifactId>aspose-cad</artifactId>
     <version>版本</version>
</dependency>`

2.1、dwg转pdf

 public String dwgToPdf(FileConvertInPutVO inPutVO) {
        Image image = Image.load(inPutVO.getSourcePath());
        CadRasterizationOptions cadRasterizationOptions = new CadRasterizationOptions();

        //设置背景颜色
        cadRasterizationOptions.setBackgroundColor(Color.getBlack());
        cadRasterizationOptions.setPageWidth(1400);
        cadRasterizationOptions.setPageHeight(650);
        cadRasterizationOptions.setAutomaticLayoutsScaling(true);
        cadRasterizationOptions.setNoScaling(false);
        cadRasterizationOptions.setDrawType(1);
        //AutoCAD图形可能包含多个图层,其中每个图层可能具有不同的尺寸。如果希望转换后的PDF文件具有统一的缩放比例,可以配置CadRasterizationOptions.AutomaticLayoutsScaling设置为true,API根据PDF文档中的页面大小自动缩放图层
        cadRasterizationOptions.setAutomaticLayoutsScaling(true);
        PdfOptions options = new PdfOptions();
        options.setVectorRasterizationOptions(cadRasterizationOptions);

        //输出文件
        image.save(inPutVO.getTargetPath(), options);
        return inPutVO.getTargetPath();
    }

2.2、dwgToPng

public String dwgToPng(FileConvertInPutVO inPutVO) {
        //1、加载CAD文件
        Image image = Image.load(inPutVO.getSourcePath());
        //2、设置导出格式
        //ImageOptionsBase子类:PdfOptions , BmpOptions , GifOptions , JpegOptions , PngOptions , PsdOptions , TiffOptions和一些更 。 每个都提供相应输出文件格式的设置。 然后通过设置其属性进行设置,然后将其传递到第三步。
        PngOptions pngOptions = new PngOptions();
        // 设置png的压缩等级 0 最低 9 最高
        pngOptions.setCompressionLevel(0);
        // 原图尺寸类型
        int width = image.getWidth();
        int height = image.getHeight();
        // 100万像素等比倍数
        int zoom = 1008000 / width / height;
        //此类指定应如何渲染CAD图像-宽度,高度(以像素为单位),CAD内容应居中,对象的背景颜色和替代颜色等。
        CadRasterizationOptions cadRasterizationOptions = new CadRasterizationOptions();
        //设置背景颜色
        cadRasterizationOptions.setBackgroundColor(Color.getBlack());//Color.Beige
        //设置绘图颜色
        cadRasterizationOptions.setDrawColor(Color.getBlue());
        cadRasterizationOptions.setPageHeight(width * zoom);
        cadRasterizationOptions.setPageWidth(height * zoom);
        cadRasterizationOptions.setDrawType(CadDrawTypeMode.UseObjectColor);
        //如果AutoCAD工程图中有多个图层,则可以指定要在转换的PDF文档中具有的图层
        cadRasterizationOptions.setLayers(Lists.newArrayList("LayerA"));
        cadRasterizationOptions.setUnitType(UnitType.Unitless);

        pngOptions.setVectorRasterizationOptions(cadRasterizationOptions);
        //3、保存图像
        image.save(inPutVO.getTargetPath(), pngOptions);
        return inPutVO.getTargetPath();
    }

2.3、dwgToSvg

public String dwgToSvg(FileConvertInPutVO inPutVO) {
        SvgOptions options = new SvgOptions();
        Image image = Image.load(inPutVO.getSourcePath());
        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);
        image.save(inPutVO.getTargetPath(), options);
        return inPutVO.getTargetPath();
    }
  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
### 回答1: aspose-wordspdf乱码可能是由于以下原因导致的: 1. 文字编码不一致:aspose-words和pdf的编码不一致,导致换后出现乱码。 2. 字体缺失:aspose-words中使用的字体在pdf中不存在,导致换后出现乱码。 解决方法: 1. 确保aspose-words和pdf使用相同的编码。 2. 在换前,检查aspose-words中使用的字体是否在pdf中存在,如果不存在,需要将字体文件一并换。 3. 如果以上方法无法解决问题,可以尝试使用其他的换工具或者联系aspose-words的技术支持。 ### 回答2: Aspose.Words是一个功能强大的文档处理库,可以让开发人员在.NET、Java和Reporting Services平台上,直接读写、编辑和换Microsoft Word文档,另外它还支持将Word文档换为PDF、HTML、XPS、EPUB和其他格式。然而,在将Word文档换为PDF的过程中,一些用户可能会经常遇到乱码的问题。 造成这种问题的主要原因可能是Word文档中包含了一些非标准的字体或字符,而这些字体或字符在目标PDF文件中并没有正确显示。解决这类问题的方法很简单,只需要在换Word文档为PDF时指定正确的字体和字符编码即可。具体的步骤如下: 1. 打开需要换的Word文档,点击“文件”菜单,选择“选项”,在弹出的对话框中选择“高级”选项。 2. 在“高级”选项卡中,找到“Web选项”一栏,点击“字体替换”按钮,并在下方的列表中查看是否有用于PDF换的适当字体。 3. 如果没有所需的字体,则需要手动添加。点击“新增”按钮,在“替换字体”对话框中输入正确的字体名称和字体文件路径。 4. 继续在“Web选项”中找到“字符编码”选项,并确保选择了正确的字符编码,如“Unicode(utf-8)”或“简体中文(GB2312)”。 5. 在设置好换选项后,使用Aspose.Words将文档换为PDF文件即可,此时PDF文件中的乱码问题应该已经得到了解决。 总之,解决Aspose.Words换Word文档为PDF时出现乱码问题的关键是正确设置字体和字符编码,这通常需要在Word文档和换选项中多加关注。同时,也可以通过查看日志和其他调试工具,发现可能引起乱码的原因,以便更好地解决问题。 ### 回答3: Aspose.Words是一个功能强大的文档处理库,可以用来生成、编辑和换各种文档格式,包括Microsoft Word文档、OpenOffice文档等等。其中,换成PDF格式是Aspose.Words经常使用的功能之一。然而,有些用户在使用Aspose.Words进行文档PDF过程中,会出现乱码的情况。 造成Aspose.WordsPDF乱码的原因可能有以下几个: 1.文档中含有特殊字符或编码格式不符合规范。如果文档中含有特殊字符或编码格式混乱,Aspose.Words无法正确处理这些字符,从而导致换成PDF时出现乱码。 2.使用的Aspose.Words版本不兼容。如果使用的Aspose.Words版本与文档的格式或编码格式不兼容,Aspose.Words就无法正确处理文档内容。 3.PDF时未正确设置字体。如果在PDF时未正确设置字体,PDF文件就无法正确显示文档内容,从而产生乱码。 针对以上几个原因,可以采取不同的解决措施来避免Aspose.WordsPDF乱码问题的发生: 1.文档中尽量避免出现特殊字符或混乱的编码格式。可以通过检查文档的编码格式及特殊字符的使用情况,避免出现无法被Aspose.Words正确处理的情况。 2.使用与文档格式/编码格式兼容的Aspose.Words版本。可以根据Aspose.Words的版本支持情况,选择与文档相兼容的Aspose.Words版本进行文档换。 3.设置正确的字体。在换文档时,可以设置合适的字体信息来保证换成PDF后文件可以正确显示内容。可以通过Aspose.Words的API来设置字体信息,确保换后的PDF文件可以正确显示文档内容。 总之,Aspose.WordsPDF乱码问题可能存在多种原因,需要根据具体情况进行分析解决。只有正确设置文档格式及Aspose.Words参数、避免文档中出现特殊字符等,才能保证文档换成PDF时不出现乱码。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值