【WMF】WMF输出
本帖最后由 1028695446 于 2019-5-6 21:51 编辑用WORD做设计说明,需要插入图框时用的上
(defun c:WMF(/ wmffile p1 p2 p11 p22 ss1 dist)
;;判斷"符號表"否存在;龙龙仔http://bbs.mjtd.com/forum.php?mod=viewthread&tid=4844&highlight=%B2%BC%BE%D6%C3%FB
(defun HAS (TYPE_1 NAME)
(if (not
(vl-catch-all-error-p
(vl-catch-all-apply
'vla-item
(list ((eval (read (strcat "vla-get-" TYPE_1)))
(vla-get-activedocument (vlax-get-acad-object))
)
NAME
)
)
)
)
t
)
)
(if (null vlax-dump-object) (vl-load-com) )
(princ "\nWMF输出--矩形范围输出")
(setvar "WMFBKGND" 0);;清除底色
(setq dist 5);;这个是WMF的边界框
(setq file_path (strcat (getvar "Tempprefix") "WMF"))
(if (findfile file_path) (princ) (vl-mkdir file_path))
;(setq wmffile (getfiled "\n选择WMF文件名: " (strcat (getvar "Tempprefix") "baidu\\WMF_01.wmf") "wmf" 1));手动输入文件保存位置
(setq wmffile (strcat file_path "\\WMF_" (rtos (getvar "CDATE") 2 20)));;;被注解掉 这个保存位置自己修改,,注意是用"\\"替代Windows的"\"
(if (setq p1 (getpoint "\n请指定矩形框第一点: "))
(if(setq p2 (getcorner p1 "\n请指矩形框定对角点: "))
(if(setq ss1 (ssget "W" p1 p2))
(progn
(if (HAS "LAYOUTS" "临时布局")
(princ)
(command "layout" "n" "临时布局");创建并切换布局
)
(command "layout" "s" "临时布局")
(command "tilemode" "0")
(command "erase" (ssget "X" '((0 . "VIEWPORT"))) "");删除所有布局视口
(command "mview"
(setq p11(list (- (car p1) dist) (- (cadr p1) dist) 0))
(setq p22(list (+ (car p2) dist) (+ (cadr p2) dist) 0))
)
(command "zoom" "w" p11 p22);;不缩放的话就找不到可用于激活的视口了
(if (= (getvar "CVPORT") 1)(command "mspace"));激活视口;(command "pspace");切换到图纸空间
(command "zoom" "w" p11 p22);缩放
(command "wmfout" wmffile ss1 "")
(command "tilemode" "1");切换回模型空间
(if (HAS "LAYOUTS" "临时布局")
(command "layout" "D" "临时布局");删除临时布局
)
(startapp "explorer.exe" (vl-filename-directory wmffile));打开文件所在文件夹
;(startapp "mspaint.exe" (strcat wmffile ".wmf"));用画板打开WMF文件
(princ "\nWMF文件输出成功>>>>>>>>>>>>>>>>>>")
(princ)
)
(princ "错误提示--矩形框内没有实体")
)
(princ "错误提示--请按要求选择对角点")
)
(princ "错误提示--请按要求选择第一点")
)
)
linyangmjtd 发表于 2021-11-28 22:11
;导出图形设置成黑白色
(setq
app (vlax-get-acad-object)
楼主,这段代码放在哪个位置?不知为何我的输出图形没变化还是彩色的? 楼主 输出怎么设置原大小 背景跟模型空间一样。我现在输出 再输入回来尺寸就变了,有没有办法做到是1:1的? xman00 发表于 2021-11-21 22:03
如果可以复制到剪贴板,类似betterwmf的效果就好了
有没有大佬做出这个的效果来?
悬赏一下 本帖最后由 sowin 于 2019-5-4 09:42 编辑
非常方便谢谢分享
功能很实用 好用,谢谢收藏了 非常方便,多谢分享 好人一生平安,看帖必回帖 不知道为什么, 我输出不成功 中望CAD能用吗? 非常方便,多謝分享 如果可以复制到剪贴板,类似betterwmf的效果就好了
页:
[1]
2