|
||
| Правила | Регистрация | Пользователи | Сообщения за день | | Поиск | | Справка по форуму | Файлообменник | |
|
Поиск в этой теме |
17.12.2012, 18:08 | #1 | |
как вставить PDF в автокад 2011
INJENER
Kazakhstan
Регистрация: 03.05.2007
Сообщений: 161
|
||
Просмотров: 23570
|
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,844
|
_.xref
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
|
||||
Регистрация: 25.03.2008
Зелик
Сообщений: 1,577
|
Непорядок. Покажите больного.
__________________
* Буква "ё" не используется в тексте исключительно в связи с требованиями ЕСКД. |
|||
|
||||
Инженер Регистрация: 10.11.2008
Владимирская обл., пос. Вольгинский
Сообщений: 147
|
Вот файл со вставленным PDF. Я задала при вставке "Путь отсутствует", были еще варианты "Относительный путь" и "Полный". Но указание варианта вставки пути на распечатку не влияет.
При распечатке на принтер печатается только рамка картинки и нарисованные объекты, а сама картинка пустая получается.
__________________
AutoCAD 2014 |
|||
|
||||
Инженер Регистрация: 10.11.2008
Владимирская обл., пос. Вольгинский
Сообщений: 147
|
У меня и так PDF и я хочу вставить PDF в автокадовский чертеж, а он не вставляется. Применила команду _.xref и выдается такое окно.
__________________
AutoCAD 2014 |
|||
|
||||
Геодезист Регистрация: 23.05.2012
Ухта
Сообщений: 1,374
|
Как вариант, если у Вас установлен ToolPac, то командой вставки PDF файлов - DSTP_IMPPDF ,а если нет, то советую установить (не в порядке рекламы, конечно). Помимо этого, очень много полезных функций.
__________________
Как-то так. |
|||
|
||||
Геодезист Регистрация: 23.05.2012
Ухта
Сообщений: 1,374
|
Можно, например, с помощью этого лиспа:
;;;Для изменения абсолютного / относительного пути используются программы ;;; Петра Лоскутова (Alaspher) ;;; url=http://uniip.ru/start.html#content=http://uniip.ru/lib/download/download.html ;;; Адаптация Владимир Азарко (VVA) 2006 г. МинскИнжПроект ;;; Опубликовано: http://dwg.ru/forum/viewtopic.php?p=...hlight=#108116 ;| **************************************************************************************** * ОПИСАНИЕ * Определены 2 команды: MIP_CHARPATH - изменение пути растров и вн.ссылок на абсолютный / относительный Путь определяется по отношению к пути текущего рисунка MIP_CHPATH - изменение абсолютного (сохраненного) пути растров и вн.ссылок *****************************************************************************************|; ;;; PL_XRefChgr.LSP ;;;***************************************************************************************** ;;; Copyright ©2003 Пётр Лоскутов (Alaspher) ;;; http://uniip.ru/start.html#content=h.../download.html ;;; e-mail: [email protected] ;;;***************************************************************************************** ;;; ВЕРСИЯ: 0.91 ПРЕРЕЛИЗ ;;;***************************************************************************************** ;;; ОГРАНИЧЕНИЕ ГАРАНТИЙ ;;; ПРОГРАММА РАСПРОСТРАНЯЕТСЯ НА УСЛОВИЯХ "КАК ЕСТЬ". ;;; АВТОР НЕ БЕРЕТ НА СЕБЯ И НЕ ПОДРАЗУМЕВАЕТ КАКИХ-ЛИБО ГАРАНТИЙНЫХ ОБЯЗАТЕЛЬСТВ. ;;; ВЫ ИСПОЛЬЗУЕТЕ ПРОГРАММУ НА СВОЙ РИСК. ;;; АВТОР НЕ БЕРЕТ НА СЕБЯ ОТВЕТСТВЕННОСТЬ ЗА ПОТЕРЮ ДАННЫХ, УЩЕРБ, ПОТЕРЮ ПРИБЫЛИ ИЛИ ЛЮБЫЕ ;;; ДРУГИЕ ПОТЕРИ, ПРОИЗОШЕДШИЕ ВО ВРЕМЯ ИСПОЛЬЗОВАНИЯ ИЛИ НЕПРАВИЛЬНОГО ИСПОЛЬЗОВАНИЯ ;;; ДАННОГО ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ. ;;;***************************************************************************************** ;;; Разрешается использовать, копировать, изменять, и распространять это программное ;;; обеспечение бесплатно, при условии, что программное обеспечение, полностью или частично ;;; включающее данное ПО, будет распространяться на тех-же условиях, а указанные выше знак ;;; авторского права и примечания об ограничениях гарантий будут приводиться во всех копиях. ;;;***************************************************************************************** ;;; (defun C:MIP_CHARPATH ( / _LNGLST _CHOICE _TMP *error* _COUNT) (defun *error* (msg)(princ msg)(foreach item *kpblc-list-layer-status* (vla-put-lock (car item) (cdr (assoc "lock" (cdr item))))) (setq *kpblc-list-layer-status* nil)(vla-EndUndoMark *kpblc-activedoc*)) ;;;Helper function (defun _PL:XPathChgr (AR / _SEL _I _ENT _TMP _OLD _NEW _TYPE) (setq _SEL (ssget "X" '((-4 . "<OR")(0 . "IMAGE")(0 . "INSERT")(-4 . "OR>"))) _I -1.0) ;_ end of setq (while (setq _ENT (ssname _SEL (setq _I (1+ _I))))(setq _TMP (vlax-ename->vla-object _ENT) _NEW nil _TYPE nil _OLD (if(= (setq _TYPE (strcase (vla-get-objectname _TMP))) "ACDBRASTERIMAGE") ;_ end of = (vla-get-imagefile _TMP)(if (vlax-property-available-p _TMP 'Path)(vla-get-path _TMP)))) ;_ end of setq (if _OLD (setq _NEW (cond ((= AR "Clear")(strcat (vl-filename-base _OLD)(vl-filename-extension _OLD))) ((null AR)(PL:PRel->Abs _OLD))(t (PL:PAbs->Rel _OLD))))) ;_ end of if (if _NEW (if (= _TYPE "ACDBRASTERIMAGE")(vla-put-imagefile _TMP _NEW)(vla-put-path _TMP _NEW)))) ;_ end of while (1+ _I)) ;_ end of defun (defun PL:PAbs->Rel (OldPath / _TMP _DWG _NAME _PRE _IS)(setq _TMP (reverse (PL:String->List OldPath "\\")) _DWG (reverse (cdr (reverse (PL:String->List (getvar "DWGPREFIX") "\\")))) _PRE "" _NAME (car _TMP) _TMP (reverse (cdr _TMP)) _TMP(if _TMP (mapcar 'strcase _TMP)) _DWG (mapcar 'strcase _DWG)) ;_ end of setq (if(and _TMP (= (car _TMP) (car _DWG))) (progn(if (= "" (car _TMP)) (setq _TMP (if (= (nth 3 _TMP) (nth 3 _DWG)) (cddr _TMP)) _DWG (cddr _DWG))) (while (and _TMP _DWG (= (car _TMP) (car _DWG)))(setq _TMP (cdr _TMP) _DWG (cdr _DWG) _IS t)) ;_ end of while (if _IS (progn (if _TMP (setq _TMP (apply 'strcat (PL:StrLstSuf _TMP "\\")))(setq _TMP "")) (if _DWG (repeat (length _DWG) (setq _PRE (strcat "..\\" _PRE))))(strcase (strcat _PRE _TMP _NAME) t)))))) ;_ end of defun (defun PL:PRel->Abs (OldPath / _TMP _DWG _NAME _CHK) (setq _TMP (reverse (PL:String->List OldPath "\\")) _DWG (cdr (reverse (PL:String->List (getvar "DWGPREFIX") "\\"))) _NAME (car _TMP) _TMP (reverse (cdr _TMP))) ;_ end of setq (if(and (/= (setq _CHK (car _TMP)) "") (or (not _CHK) (/= (substr _CHK 2 1) ":"))) (progn (setq _TMP (if _TMP (mapcar 'strcase _TMP)) _DWG (mapcar 'strcase _DWG)) ;_ end of setq (while (and _TMP _DWG (= (car _TMP) ".."))(setq _TMP (cdr _TMP) _DWG (cdr _DWG))) (strcase(strcat(apply 'strcat (PL:StrLstSuf (append (reverse _DWG) _TMP) "\\")) _NAME) t)))) (defun PL:StrLstSuf (StrLst Suf / _TMP)(if(setq _TMP (car StrLst)) (cons (strcat _TMP Suf) (PL:StrLstSuf (cdr StrLst) Suf)))) (defun PL:String->List (_STR _BR / _POS)(if(setq _POS (vl-string-search _BR _STR)) (cons(substr _STR 1 _POS)(PL:String->List (substr _STR(+ (strlen _BR) _POS 1)) _BR))(cons _STR '()))) ;;Main programm (or *kpblc-activedoc* (setq *kpblc-activedoc* (vla-get-activedocument (vlax-get-acad-object)))) (vla-startUndoMark *kpblc-activedoc*) ;;;Разблокируем слои и сохраняем в списке *kpblc-list-layer-status* ;;;вида '(vla-указатель ("lock" . :vlax-false)) (if *kpblc-list-layer-status* (setq *kpblc-list-layer-status* nil)) ;_ end of if (vlax-for item (vla-get-layers *kpblc-activedoc*) (setq *kpblc-list-layer-status* (append *kpblc-list-layer-status* (list(list item(cons "lock" (vla-get-lock item)))))) ;_ end of setq (vla-put-lock item :vlax-false))(vla-StartUndoMark *kpblc-activedoc*) (setq _LNGLST (if (= (strcase (getvar "SYSCODEPAGE")) "ANSI_1251") '("\nПреобразовать в [Абсолютный/Относительный] формат <О>: " "Абсолютный Absolutly Относительный Relative _Absolutly Absolutly Relative Relative" ) '("\nConvert to [Absolutly/Relative] format <R>: " "Absolutly Relative"))) ;_ end of setq (initget (setq _TMP (nth 1 _LNGLST)))(setq _CHOICE (getkword (nth 0 _LNGLST))) (setq _COUNT (if (= _CHOICE "Absolutly")(_PL:XPathChgr nil)(_PL:XPathChgr t))) (princ (if (= (strcase (getvar "SYSCODEPAGE")) "ANSI_1251") (strcat "Обработано "(itoa (fix _COUNT)) " объектов") (strcat (itoa (fix _COUNT)) " objects are processed"))) ;;;Восстанавливаем состояние слоев (foreach item *kpblc-list-layer-status* (vla-put-lock (car item) (cdr (assoc "lock" (cdr item))))) (setq *kpblc-list-layer-status* nil)(vla-EndUndoMark *kpblc-activedoc*) (princ)) ;_ end of defun ;|============================================================================= * функция z-files-in-directory возвращает список файлов находящаяся в заданной * директории * Автор : Зуенко Виталий (ZZZ) * Параметры: * directory путь к папке например "D:\\Мои документы\\ZEF\\Lisp" * pattern шаблон например "*.lsp" или список '("*.dwg" "*.dxf") * nested искать в вложенных папках: t (да) или nil (нет) * Пример вызова: (z-files-in-directory "D:\\Мои документы\\ZEF\\Lisp" "*.dwg" t) (z-files-in-directory "D:\\Мои документы\\ZEF\\Lisp" '("*.dwg" "*.dwt") t) =============================================================================|; (defun z-files-in-directory (directory pattern nested /) (if (not (listp pattern))(setq pattern (list pattern))) (if nested (apply 'append (append (mapcar '(lambda (_pattern) (mapcar '(lambda (f) (strcat directory "\\" f)) (vl-directory-files directory _pattern 1))) pattern) ;_ mapcar (mapcar '(lambda (d) (z-files-in-directory (strcat directory "\\" d) pattern nested)) (vl-remove "." (vl-remove ".." (vl-directory-files directory nil -1)))))) (apply 'append (mapcar '(lambda (_pattern)(mapcar '(lambda (f) (strcat directory "\\" f)) (vl-directory-files directory _pattern 1))) pattern)))) (defun C:MIP_CHPATH ( / what to pat ) (defun BrowseFolder ( / ShlObj Folder FldObj OutVal) ;;;http://www.autocad.ru/cgi-bin/f1/board.cgi?t=21054YY ;;; С отображение файлов (setq Folder (vlax-invoke-method ShlObj 'BrowseForFolder 0 "" 16384)) (vl-load-com)(setq ShlObj (vla-getInterfaceObject (vlax-get-acad-object) "Shell.Application") Folder (vlax-invoke-method ShlObj 'BrowseForFolder 0 "Укажите целевую папку c растрами и рисунками" 16384)) (vlax-release-object ShlObj)(if Folder (progn (setq FldObj (vlax-get-property Folder 'Self) OutVal (vlax-get-property FldObj 'Path))(vlax-release-object Folder)(vlax-release-object FldObj))) OutVal) (initget "Растры Image внСсылки Xref Все All Отмена Undo _Image Image Xref Xref All All Undo Undo") (setq what (getkword "\nИзменить путь [Растры/внСсылки/Все/Отмена] <Все> :")) (cond ((= what "Image")(setq pat 1))((= what "Xref")(setq pat 2))((= what "Undo")(setq pat nil)) (t (setq pat 3)))(if (and pat (setq to (BrowseFolder)))(mip_ch_path to pat))(princ)) ;;; to - путь куда ;;;pat - сумма 1 - растры 2 - вн ссылки ;;;(logand pat 1)=1 - растры ;;;(logand pat 2)=2 - вн ссылки (defun mip_ch_path ( to pat / files sset item_list *error*) (defun *error* (msg)(princ msg)(foreach item *kpblc-list-layer-status* (vla-put-lock (car item) (cdr (assoc "lock" (cdr item))))) (setq *kpblc-list-layer-status* nil)(vla-EndUndoMark *kpblc-activedoc*)) (vl-load-com)(or *kpblc-activedoc* (setq *kpblc-activedoc* (vla-get-activedocument (vlax-get-acad-object)))) (setq files (z-files-in-directory to "*.*" nil)) (setq files (mapcar '(lambda(x)(strcase(strcat (VL-FILENAME-BASE x)(VL-FILENAME-EXTENSION x)))) files)) (setq to (VL-STRING-RIGHT-TRIM "\\" to)) ;;;Разблокируем слои и сохраняем в списке *kpblc-list-layer-status* ;;;вида '(vla-указатель ("lock" . :vlax-false)) (if *kpblc-list-layer-status* (setq *kpblc-list-layer-status* nil)) ;_ end of if (vlax-for item (vla-get-layers *kpblc-activedoc*) (setq *kpblc-list-layer-status* (append *kpblc-list-layer-status* (list(list item(cons "lock" (vla-get-lock item)))))) ;_ end of setq (vla-put-lock item :vlax-false))(vla-StartUndoMark *kpblc-activedoc*) ;;(setq to (lib:BrowseFolder)) (if (=(logand pat 1) 1);_Растры (progn (princ "\n===== Image =====") (setq sset nil sset (ssget "_X" '((0 . "IMAGE")))) (if sset (setq item_list (mapcar 'vlax-ename->vla-object(vl-remove-if 'listp (mapcar 'cadr (ssnamex sset))))) (setq item_list nil)) (mapcar '(lambda(img / ipath) (setq ipath (vla-get-ImageFile img)) (setq ipath (strcase(strcat (VL-FILENAME-BASE ipath)(VL-FILENAME-EXTENSION ipath)))) (if (and (member ipath files)(vlax-write-enabled-p img))(progn (princ "\nМеняем ")(princ(vla-get-ImageFile img))(princ "->") (setq ipath (strcat to "\\" ipath)) (vla-put-ImageFile img ipath) (princ ipath)))) item_list))) (if (=(logand pat 2) 2);_Вн ссылки (progn (princ "\n===== Xref =====") (setq sset nil sset (ssget "_X" '((0 . "INSERT")))) (if sset (setq item_list (mapcar 'vlax-ename->vla-object(vl-remove-if 'listp (mapcar 'cadr (ssnamex sset))))) (setq item_list nil)) (mapcar '(lambda( xrf / ipath) (if (and (vlax-property-available-p xrf 'Path)(vlax-write-enabled-p xrf))(progn (setq ipath (vla-get-Path xrf)) (setq ipath (strcase(strcat (VL-FILENAME-BASE ipath)(VL-FILENAME-EXTENSION ipath)))) (if (member ipath files)(progn (princ "\nМеняем ")(princ(vla-get-Path xrf))(princ "->") (setq ipath (strcat to "\\" ipath))(vla-put-Path xrf ipath) (princ ipath)))))) item_list))) ;;;Восстанавливаем состояние слоев (princ " ")(foreach item *kpblc-list-layer-status* (vla-put-lock (car item) (cdr (assoc "lock" (cdr item))))) (setq *kpblc-list-layer-status* nil)(vla-EndUndoMark *kpblc-activedoc*) (vla-regen *kpblc-activedoc* acallviewports)) (princ "\nЗагружены команды MIP_CHARPATH и MIP_CHPATH")
__________________
Как-то так. Последний раз редактировалось sertor, 21.12.2012 в 21:42. |
|||
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Авиация: история, техника, экономика, инфраструктура. | T-Yoke | Разное | 5114 | 05.01.2015 15:55 |
AutoCAD 2011 не находит acdb17.dll | ALFMario | AutoCAD | 16 | 20.02.2014 12:14 |
Как в Автокад вставить свою собственную панель инструментов? | АлександрМихайлович | AutoCAD | 10 | 05.03.2007 14:28 |