zoukankan      html  css  js  c++  java
  • AutoCAD.NET实现CAD截图

    使用C#实现AutoCAD截图目前了解的方式有以下几种:
    1、使用CAD的Export、JPGOUT、PNGOUT,可以将选择集中的实体导出成图片,但要借助COM的接口先设置ActiveSelectionSet(AutoCAD.NET接口的SetImpliedSelection好像不行),然后再使用COM或者发送命令的方式调用Export、JPGOUT、PNGOUT等命令进行截图,参考代码如下(只测试了EXPORT,没有测试JPGOUT、PNGOUT等其他方式):

    object oCad = Autodesk.AutoCAD.ApplicationServices.Application.AcadApplication;
    Type tpCad = oCad.GetType();
    object oDoc = tpCad.InvokeMember("ActiveDocument", System.Reflection.BindingFlags.GetProperty, null, oCad, null);
    Type tpDoc = oDoc.GetType();
    object ass = tpDoc.InvokeMember("ActiveSelectionSet", System.Reflection.BindingFlags.GetProperty, null, oDoc, null);
    tpDoc.InvokeMember("Export", System.Reflection.BindingFlags.InvokeMethod, null, oDoc, new object[] { path + "\abc", "WMF", ass });
    ed.SetImpliedSelection(new ObjectId[] { });

    2、使用View.GetSnapshot进行抓屏,具体可以参考这里

    3、使用打印功能将DWG图纸打印成PDF,然后再将PDF转成图片,其中导出PDF应该也是需要调用CAD的COM接口来实现,而PDF转图片可以使用Adobe的COM组件(Adobe Acrobat xx Type Library),或者其他第三方组件(可参考这里)。

  • 相关阅读:
    strncpy (Strings) – C 中文开发手册
    HTML track label 属性
    Java面试题:常用的Web服务器有哪些?
    鲲鹏920上安装ovs
    基于AC控制器+VXLAN解决方案
    二层MAC学习及BUM报文转发
    基于mac表的vxlan转发
    Agile Controller vxlan
    设置鲲鹏916/920通过pxe安装os
    ovs-vxlan&vlan
  • 原文地址:https://www.cnblogs.com/bomb12138/p/7286629.html
Copyright © 2011-2022 走看看