from pycomcad import * #以pycomcad作为接口库为例
import win32com
acad=Autocad()

打印最重要的设置都在上面的界面中,下面对这些个界面,用Python控制来一一进行说明:

(1)打印机的控制

全部显示出打印机:

acad.acad.ActiveDocument.ModelSpace.Layout.GetPlotDeviceNames()

选择打印机:

acad.acad.ActiveDocument.ActiveLayout.ConfigName='DWG to PDF.pc3'

(2)选择图纸尺寸

显示所有可供选择的尺寸

acad.acad.ActiveDocument.ModelSpace.Layout.GetCanonicalMediaNames()

设定打印图纸尺寸:

acad.acad.ActiveDocument.ModelSpace.Layout.CanonicalMediaName='ISO_A1_(841.00_x_594.00_MM)'

(3)打印区域---窗口为例

以打印窗口设置为例(设定acWindow前,需要调用SetWindoToPlot方法来指定打印区域,p1是左下角,p2是右上角)

p1=acad.GetPoint()
p2=acad.GetPoint()
acad.acad.ActiveDocument.ModelSpace.Layout.SetWindowToPlot(VtFloat(p1[:2]),VtFloat(p2[:2]))
acad.acad.ActiveDocument.ModelSpace.Layout.PlotType=win32com.client.constants.acWindow

其他选项如下:

(4)打印偏移---以居中为例

acad.acad.ActiveDocument.ModelSpace.Layout.CenterPlot=True

(5)打印比例---以布满为例

acad.acad.ActiveDocument.ModelSpace.Layout.UseStandardScale=True #选用标准的比例
acad.acad.ActiveDocument.ModelSpace.Layout.StandardScale=win32com.client.constants.acScaleToFit

如果要自定义打印比例,将UseStandardScale设置为False,并调用SetCustomScale 方法,该方法说明如下:

(6)打印样式表

查看所有的打印样式表

acad.acad.ActiveDocument.ModelSpace.Layout.GetPlotStyleTableNames ()

设定特定的打印样式表,以monochrome.ctb为例:

acad.acad.ActiveDocument.ModelSpace.Layout.StyleSheet='monochrome.ctb'

(7)预览

acad.acad.ActiveDocument.Plot.DisplayPlotPreview(win32com.client.constants.acFullPreview)

(8)打印到文件

acad.acad.ActiveDocument.Plot.PlotToFile(r'johnyangPlot.pdf')

打印成功返回True

用Python来控制Autocad的打印------以Pycomcad为例的更多相关文章

  1. python爬虫中文网页cmd打印出错问题解决

    问题描述 用python写爬虫,很多时候我们会先在cmd下先进行尝试. 运行爬虫之后,肯定的,我们想看看爬取的结果. 于是,我们print... 运气好的话,一切顺利.但这样的次数不多,更多地,我们会 ...

  2. 使用VS2017进行Python代码的编写并打印出九九乘法表

    我们来盘一盘怎么使用VS2017进行python代码的编写并打印出九九乘法表. 使用Visual Studio 2017进行Python编程不需要太复杂的工作,只需要vs2017安装好对Python的 ...

  3. LogUtil【实现自由的控制日志的打印的封装类】

    版权声明:本文为HaiyuKing原创文章,转载请注明出处! 前言 主要用于控制项目开发和上线阶段日志的打印. 效果图 暂不需要. 代码分析 在LogUtil类中声明代表不同日志级别的常量值(VERB ...

  4. Python直接控制鼠标键盘

    Python直接控制鼠标键盘 之前因为期末的原因已经很久没写博客了,今天博主发现一个好玩的模块PyAutoGUI,借助它可以使用Python脚本直接控制键盘鼠标,感觉可以解决很多无聊的机械运动.这里记 ...

  5. Python 条件控制

    Python  条件控制 Python条件语句是通过一条或多条语句的执行结果(True或者False)来决定执行的代码块. 可以通过下图来简单了解条件语句的执行过程: if 语句 Python中if语 ...

  6. python 流程控制(条件语句)

    1,python流程控制单条件基本语句 2,python流程流程多条件控制语句 3,三元运算 1,python流程控制单条件基本语句 if 判断条件: 执行语句…… else: 执行语句…… 判断条件 ...

  7. Python(四)之Python流程控制(if、while、for)

    Python流程控制 if测试: if 条件测试表达式: 组合条件测试: x and y:与运算 x or y:或运算 not x:非运算 while: break:跳出最内层的循环 continue ...

  8. Python - 条件控制、循环语句 - 第十二天

    Python 条件控制.循环语句 end 关键字 关键字end可以用于将结果输出到同一行,或者在输出的末尾添加不同的字符,实例如下: Python 条件语句是通过一条或多条语句的执行结果(True 或 ...

  9. Python 流程控制-分支结构详解

    目录 Python 流程控制--分支结构 1.结构分类 顺序结构 分支结构 循环结构 2.分支结构详解 分支结构 定义格式: if 单支结构 if 双分支结构 if 多分支结构 Python 流程控制 ...

随机推荐

  1. acid解释

    原子性A:一个事务内部的所有操作都是不可分割的,这叫原子性.一致性C:事务内部的所有操作要么都成功,要么都失败.隔离性I:事务与事务之间永远不相见.持久性D:就是说数据最终是落到磁盘永久保存的.

  2. centos 7下安装配置Supervisor

    1.安装Supervisor centos下安装yum install supervisor 2. systemctl enable supervisord 开机自启 systemctl start ...

  3. httprunner(8)用例调用-RunTestCase

    前言 一般我们写接口自动化的时候,遇到复杂的逻辑,都会调用API方法来满足前置条件,Pytest的特性是无法用例之间相互调动的,我们一般只调用自己封装的API方法. 而httprunner支持用例之间 ...

  4. LEETCODE - 160【相交链表】

    /** * Definition for singly-linked list. * struct ListNode { * int val; * ListNode *next; * ListNode ...

  5. 爬虫入门三 scrapy

    title: 爬虫入门三 scrapy date: 2020-03-14 14:49:00 categories: python tags: crawler scrapy框架入门 1 scrapy简介 ...

  6. leetcode 22. 括号生成 dfs

    先思考符合要求的串是什么样子的 任意时刻,(数量大于),且最后(==)==n即可 考虑下一个加入string的字符时(或者)即可 dfs class Solution { public: vector ...

  7. C# 类 (6) -继承

    继承 定义类的时候,public class Dog:Animal 表示 Dog 这个类是 继承自 Animal,冒号后面的是它的基类 继承后 的Dog 类,当调用Dog.Great() 的时候输出的 ...

  8. 牛客多校第五场B generator1(十进制矩阵快速幂)题解

    题意: 已知 \(X_i = a * X_{i - 1} + b * X_{i - 2}\),现给定\(X_0,X_1,a,b\),询问\(X^n \mod p\),其中\(n <= 10^{1 ...

  9. TypeScript Version 23 Design Patterns

    TypeScript Version 23 Design Patterns TypeScript 设计模式 https://refactoring.guru/design-patterns/types ...

  10. 微信分享 API

    微信分享 API https://market.cmbchina.com/MPage/online/190416201200302/wechatShare.js /* * 注意: * 1. 所有的JS ...