在VBA中调用AUTOCAD打印文件

2016-01-29 13:08 156 1 收藏

在VBA中调用AUTOCAD打印文件,在VBA中调用AUTOCAD打印文件

【 tulaoshi.com - ASP.NET 】


花了一下午完成了一个初步的示范的例子,看来解决图纸统一管理有了解决的办法了.下一步用jacob封装在java中调用,在服务器上控制打印管理.做个记号再慢慢完善.
'取得当前文档对象(vba中的方法,如果是在VB中时需要从顶层对象开始引用取得)Dim currentDoc As AcadDocumentSet currentDoc = ThisDrawing
'文档的模型空间Dim sp As AcadModelSpaceSet sp = currentDoc.modelspace
'取得模型空间中的块属性Dim index As IntegerFor index = 0 To sp.Count - 1 Dim name As String name = sp.Item(index).ObjectName '判断模型空间中的项目是否是一个块引用 If name Like "*Ac*" Then Dim blockRef As AcadBlockReference Set blockRef = sp.Item(index) '块引用的插入点 Dim insertPoint As Variant insertPoint = blockRef.InsertionPoint '放大比例 Dim xScale, yScale As Integer xScale = blockRef.XScaleFactor yScale = blockRef.YScaleFactor '宽高基数 Dim width, height As Double width = 297 height = 210 '打印区域 Dim UpperRight(0 To 1) As Double, LowerLeft(0 To 1) As Double UpperRight(0) = insertPoint(0) UpperRight(1) = insertPoint(1) LowerLeft(0) = insertPoint(0) + width * xScale LowerLeft(1) = insertPoint(1) - height * yScale

list.AddItem "inserPoint:X=" & UpperRight(0) & " Y:" & UpperRight(1) list.AddItem "lowerLeft :X=" & LowerLeft(0) & " Y:" & LowerLeft(1) Dim plotConfs As AcadPlotConfigurations Set plotConfs = ThisDrawing.PlotConfigurations list.AddItem plotConfs.Count Dim plotconf As AcadPlotConfiguration Set plotconf = plotConfs.Add("plot") 'list.AddItem plotconf.GetPlotDeviceNames(5) 'Set plotConf = ThisDrawing.PlotConfigurations.Add '设置定义要打印的布局范围的坐标 ThisDrawing.ActiveLayout.SetWindowToPlot LowerLeft, UpperRight '指定布局或打印配置的类型 ThisDrawing.ActiveLayout.PlotType = acWindow '按局部或完整视图预览方式显示打印预览对话框 ThisDrawing.Plot.DisplayPlotPreview acFullPreview '打印布局到设备 ThisDrawing.Plot.PlotToDevice End If Next index

来源:https://www.tulaoshi.com/n/20160129/1489030.html

延伸阅读
标签: autocad教程
    随着冷冲模设计任务的增多,依靠原来的手工方法计算不仅任务繁重,而且很容易出现计算错误。基于上面情况,笔者在AutoCAD2000中用VBA编程,直接在图纸上求解压力中心,极大地降低了设计人员的工作强度。这种方法比手工方法计算更准确,也使冷冲模的寿命更长。     一、概述     冷冲模压...
标签: 办公软件
    笔者在单位里负责一个内部刊物的编辑工作,常常需要将标题文字制成倒影的形式,来装饰版面;妹妹在小学干教师,常常用WPS编辑练习卷,为了不让学生轻易抄答案,需要将答案反印在卷面上;还有人,因为印刷的特殊要求,需要将文档反片输出……于是,我就对Word进行了一番仔细研究,给出下面几种方法。试试看,应该有一种适合你...
标签: Web开发
做网页常常避免不了预览,查看一下自己制作的网页元素位置有没有布置好,字体的大小有没有满意,图片是否正确显示等等等等。而Dreamweaver3.0预览时总会产生临时文件,临时文件也常常没有自动删除,给做网页的人带来不少的烦恼。(在Dreamweaver4.中这样的现象少很多了)因此笔者做网页极少用快捷键“F12”预览,而是装一个PWS(win98中)...
今天在做一个java调用windows的压缩命令时遇到一奇怪问题代码如下: 代码如下: String cmd ="C:/Program Files (x86)/WinRAR/rar.exe a c:/test.rar c:/test.log"; //System.out.println(cmd); Process proc = Runtime.getRuntime().exec(cmd); 以上代码在Xp,win7,windows server2003执行完全正常发现将代码转移到Windows Server2008之后...
标签: Delphi
  Delphi作为一种面向对象的可视化开发工具,以其开发程序的高速度和编译代码的高效率越来越受到广大编程人员的喜爱。尽管Delphi已经提供了非常强大的开发组件(VCL),但灵活使用API函数一定可以使你的程序增色不少。 状态键的检查 当今不少流行软件的编辑窗口(包括Delphi的代码编辑窗口)的底部都有一个状态条...

经验教程

398

收藏

7
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部