明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 8903|回复: 21

[源码] Casa批量打印【源码】

  [复制链接]
发表于 2013-9-20 21:53:35 | 显示全部楼层 |阅读模式
本帖最后由 Casa小宝 于 2013-9-22 09:26 编辑

做了一个批量打印的程序,不想有太多的对话框,所以使用的时候很多东西可能需要自己在程序里设定

这个程序开源,为论坛做点贡献。。不知道有没有少了哪个子函数,有的话请告诉我

1)  请按需要自行修改源程序中的下列语句(在开头部分)
每个人的打印机、打印样式、图幅名称都可能不同,注意修改

(setq width (/ (getvar "viewsize") 10.0) ;图框排序的阈值,两个值的距离若在阈值范围内,将不进行换行排序

      method '(< >) ;图框排序的规则,现为从左到右,从上到下

      method1 "xy" ;图框排序的规则,现为先x后y

      ste "建筑打图.ctb" ;请自定义打印样式

      printer "pdfFactory Pro" ;"激光.pc3"

      )

  )

;自定义设置说明

;(sort-xy li '(< >))  x:< y: >

;(sort-xy li '(>))    x:>

;(sort-xy li '(nil >))    y:>

;(sort-xy li '(> >) ......

;若printer改为激光.pc3则打印plt文件



2)  程序特点:

带预览/自动旋转/按比例/亮显/可排序/无对话框



3)  使用:

将lsp文件拖进cad即可,无须输命令



4)  注意:

程序不设置对话框,全程只需按空格键即可进入下一步(按esc则完全退出),具体选项见命令行提示,其他选项如打印样式、打印机等请自行修改源码

使用后图框会亮显,re一下即可

生成的plt文件放在PLT文件夹里,pdf的保存位置由用户选择

程序选择的是PUB_TITLE图层线宽为0的多段线,没有的请自己添加

打印pdf需要安装pdffactory pro
注意图幅的名称

不要选择A4,会被判断为A2图幅打印!

在非天正7.5下,不会提醒用户保存文件,可能会出错

更多功能可自行修改完善

最后添加一个供测试的dwg文件

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

x

评分

参与人数 1明经币 +1 收起 理由
669423907 + 1 赞一个!

查看全部评分

本帖被以下淘专辑推荐:

发表于 2021-1-22 17:52:03 | 显示全部楼层
大佬,知不知道,打印pdf图纸的时候,如何用代码自定义pdf图纸尺寸?
发表于 2017-11-2 19:11:28 | 显示全部楼层
谢谢,下来用一下。
发表于 2013-9-20 22:38:36 | 显示全部楼层
Casa小宝大师你好,请问如何在下面在句加入打印预览呢?谢谢
我的目的不是打印,而是要通过这种方式,截一张白色底的图片给其他人
(command "-plot" "Y" "" "Canon iP1100 series" "A4" "M" "P" "Y" "D" "F" "C" "Y" "monochrome.ctb" ??? )
发表于 2013-9-20 22:40:13 | 显示全部楼层
太好了!!!!支持
 楼主| 发表于 2013-9-21 10:47:31 | 显示全部楼层
669423907 发表于 2013-9-20 22:38
Casa小宝大师你好,请问如何在下面在句加入打印预览呢?谢谢
我的目的不是打印,而是要通过这种方式,截一 ...

你可以自己用一次 -plot 命令,看看它每个选项是什么意思的,命令行里都有写,估计后面你要改成 图片的保存路径
发表于 2013-9-21 12:42:58 来自手机 | 显示全部楼层
楼主,我的意思是我要用QQ截图在cad的界面上截一张白底黑色的图片,全给采购,并不是要打印成图片。
 楼主| 发表于 2013-9-21 15:24:37 | 显示全部楼层
669423907 发表于 2013-9-21 12:42
楼主,我的意思是我要用QQ截图在cad的界面上截一张白底黑色的图片,全给采购,并不是要打印成图片。

有个软件BetterWMF可以做到
发表于 2013-9-21 20:39:25 | 显示全部楼层
Casa小宝 发表于 2013-9-21 15:24
有个软件BetterWMF可以做到

谢谢你,那个软件不是很方便。
在论坛找到一段,但不知如何使用..........
;打印预览 pickle_cad http://bbs.mjtd.com/forum.php?mod=viewthread&tid=79674
;(command "preview")
;or
;(YULAN)
;(vla-displayplotpreview (vla-get-plot (vla-get-activedocument (vlax-get-acad-object))) acFullPreview))
;(vla-DisplayPlotPreview (vla-get-plot (vla-get-ActiveDocument (vlax-get-acad-object))) acPartialPreview)
发表于 2013-9-22 09:03:06 | 显示全部楼层
支持楼主
 楼主| 发表于 2013-9-22 09:23:59 | 显示全部楼层
669423907 发表于 2013-9-21 20:39
谢谢你,那个软件不是很方便。
在论坛找到一段,但不知如何使用..........
;打印预览 pickle_cad http: ...

预览需要先进行打印页面设置,你可以参考我批量预览那段
发表于 2013-9-24 20:12:52 | 显示全部楼层
Casa小宝 发表于 2013-9-22 09:23
预览需要先进行打印页面设置,你可以参考我批量预览那段

(command "-plot" "Y" "" "Canon iP1100 series" "A4" "M" "L" "Y" "D" "F" "C" "Y" "monochrome.ctb" "Y" "A" "N" "N" "")

          (setq acaddoc (vla-get-activedocument (vlax-get-acad-object)))
          (setq plot (vla-get-plot acaddoc))
          (= :vlax-false (vla-displayplotpreview plot acfullpreview))


不会啊,还望Casa小宝大师帮忙
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2024-12-23 06:39 , Processed in 0.205995 second(s), 38 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表