全部的
我在电子邮件中找到了一个非常酷的lisp例程,可以将AutoCAD绘图作为附件发送,我想知道是否可以修改它以发送PDF。
- (defun c:eMail (/ _catch file outlook email)
- ;; Using Outlook, eMail selected object(s) in a temporary DWG file
- ;; Many thanks to Ron Perez (ronjonp) for the Outlook example ([url]http://www.theswamp.org/index.php?topic=26953.msg324794#msg324794[/url])
- ;; Alan J. Thompson, 03.28.11
- (vl-load-com)
- (defun _catch (f a) (not (vl-catch-all-error-p (vl-catch-all-apply f a))))
- (if
- (and
- (or (ssget "_I") (prompt "\nSelect object(s) to eMail: ") (ssget))
- (setq file (vl-filename-mktemp "" nil ".dwg"))
- (_catch 'vla-WBlock
- (list (cond (*AcadDoc*)
- ((setq *AcadDoc* (vla-get-activedocument (vlax-get-acad-object))))
- )
- file
- (vla-get-activeselectionset *AcadDoc*)
- )
- )
- (setq outlook (vlax-get-or-create-object "Outlook.Application"))
- (setq email (vlax-invoke-method outlook 'CreateItem 0))
- (_catch 'vlax-put (list email 'Subject (strcat "Emailing: " (vl-filename-base file) ".dwg")))
- (_catch 'vlax-invoke (list (vlax-get email 'Attachments) 'Add file))
- )
- (progn (princ "\nOutlook active...")
- (princ)
- (vlax-invoke email 'Display :vlax-true)
- (vl-file-delete file)
- )
- )
- (foreach x (list email outlook) (and x (vlax-release-object x)))
- (princ)
- )
谢谢Brian |