простановка даты и имени файла при печати
| Правила | Регистрация | Пользователи | Сообщения за день |  Справка по форуму | Файлообменник |

Вернуться   Форум DWG.RU > Программное обеспечение > AutoCAD > простановка даты и имени файла при печати

простановка даты и имени файла при печати

Ответ
Поиск в этой теме
Непрочитано 27.11.2007, 11:01 #1
простановка даты и имени файла при печати
sasha_lif
 
Дизайнер-конструктор
 
Kiev
Регистрация: 29.05.2004
Сообщений: 1,179

Подскажите, пожалуйста, как при нажатии кнопки печать, автоматически добавить на чертеж имя файла и текущую дату?
заранее спасибо всем
__________________
Kiev, Ukraine
Просмотров: 8187
 
Непрочитано 27.11.2007, 11:04
#2
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,409


Штамп печати
---
Добавлено:
Ну или поле: Дата и время - дата печати.
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 27.11.2007, 11:08
#3
Геннадий aka PG

Машиностроение, Проектирование
 
Регистрация: 15.09.2003
Москва
Сообщений: 1,113
<phrase 1=


а можно используя эту прогу
Код:
[Выделить все]
;;------------> Программа записи имени файла и даты на чертеж <-----------
;;
;;          ©  PG Single Soft  
;;     E-mail: gepos@mail.ru
;;   G.I.G.O. - Garbage In, Garbage Out
;;                                       Last Modify: 14.05.99
;;       02.08.2001 замечена особенность программа не работает (пишет "0")
;;     если в текстовом стиле стоит фиксированная высота текта
;;
;;------------> WNDATE <--------------------------------------------------
(defun c:wndate( / nam  dat tday tmon tyer strok1 strok2 pt old_cmd)

 (setq old_cmd  (getvar "CMDECHO"))
 (setvar "CMDECHO" 0)

 (setq dat (itoa (fix(getvar "CDATE")))
       nam (getvar "DWGNAME")
     nam (strcat (getvar "DWGPREFIX")(getvar "DWGNAME"))
      tday (substr dat 7 2)
      tmon (substr dat 5 2)
      tyer (substr dat 1 4) 
    strok1 (strcat "File name:" nam "  Дата:" tday "-" tmon "-" tyer "г")

  strok1 (strcat "File name: " nam )
  strok2 (strcat "Дата: " tday "-" tmon "-" tyer "г")
        pt (getpoint "\nТочка вставки текста: ")
 )
 (COMMAND "TEXT" pt 2.0 0 strok1)
 
 (setq pt (list (car pt) (-(cadr pt) 3.)))
 (COMMAND "TEXT" pt 2.0 0 strok2)
 (setvar "CMDECHO" old_cmd)
 (princ)
)
;;------------> END of CODE <---------------------------------------------

(defun c:date_MV( / dat tday tmon tyer strok pt pt1 old_cmd osm *error*) 
 (defun *error* (msg)(princ msg)(setvar "OSMODE" osm)) 
 (setq old_cmd  (getvar "CMDECHO") 
           osm  (getvar "OSMODE")) 
 (setvar "CMDECHO" 0) 
  
 (setq dat (itoa (fix(getvar "CDATE"))) 
      tday (substr dat 7 2) 
      tmon (substr dat 5 2) 
      tyer (substr dat 3 2) 
    strok (strcat "" tday "." tmon "." tyer "") 
        pt (getpoint "\nТочка вставки текста: ") 
 ) 
 (setq pt (list (+(car pt) 1.) (+(cadr pt) 1.))) 
 (setq pt1 (list (+(car pt) 8.) (+(cadr pt) 0.))) 
 (setvar "OSMODE" 0) 
(if (zerop (cdr (assoc 40 (tblsearch "STYLE" (getvar "TEXTSTYLE"))))) 
     ;; нулевая высота текста 
      (COMMAND "_TEXT" "_f" pt pt1 3.0 strok) 
     ;; фиксированнная высота 
      (COMMAND "_TEXT" "_f" pt pt1 strok)) 
 ;;;Высота 3 ===== 
 (setq strok (entget(entlast))) 
 (setq strok (subst (cons 40 3.0)(assoc 40 strok) strok)) 
 (entmod strok) 
 ;;;======  
 (setvar "CMDECHO" old_cmd) 
 (setvar "OSMODE" osm) 
 (princ) 
)
__________________
С уважением,
Геннадий aka PG

Последний раз редактировалось Кулик Алексей aka kpblc, 27.11.2007 в 11:13.
Геннадий aka PG вне форума  
 
Автор темы   Непрочитано 27.11.2007, 11:53
#4
sasha_lif

Дизайнер-конструктор
 
Регистрация: 29.05.2004
Kiev
Сообщений: 1,179
<phrase 1=


>Кулик Алексей aka kpblc
Sorry, забыл сказать, что автокад 2004, а там, по-моему нет таблиц (или что имеется ввиду под словом поле?)и штамп печати plese, более подробно

>Геннадий aka PG. Спасибо. Дойду до автокада помотрю. Спасибо еще раз за Lisp
__________________
Kiev, Ukraine
sasha_lif вне форума  
 
Непрочитано 27.11.2007, 11:54
#5
Bull

Конструктор по сути (машиностроитель)
 
Регистрация: 10.10.2005
Набережные Челны (это где КамАЗ)
Сообщений: 11,391


Цитата:
Сообщение от Кулик Алексей aka kpblc Посмотреть сообщение
Штамп печати
---
Добавлено:
Ну или поле: Дата и время - дата печати.
Лучше полем. А то просто галочка на "stamp plot on" приводит к тому, что надо чертеж пересматривать для того, чтобы инфа его не перекрывала. Ну или настраивать долго размещение инфы.

Про штамп: В окне печати АвтоКАД посмотри. Там должна быть строчка такая "stamp plot on" Когда нажата, справа появляется кнопка настройки штампа.

Про поле: В меню INSERT выбери "FIELD" и настрой.
__________________
Век живи, век учись - ...
Bull вне форума  
 
Непрочитано 27.11.2007, 12:05
#6
Andi55

инженер-электрик
 
Регистрация: 12.08.2005
Иркутск
Сообщений: 523
<phrase 1=


Только поле (field)
Вставишь, куда хочешь, почти все, что в голову взбредет, настроишь свой любимый стиль текста - в результате получишь 100% визивиг. Не надо программиррования на лиспе, чем проще - тем оно надежнее.
Andi55 вне форума  
 
Непрочитано 27.11.2007, 12:33
#7
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,409


Bull, Andi55, в 2004-м нет еще полей. Поэтому либо штамп печати, либо (если есть Express Tools) можно попробовать RTEXT (но я с ним почти не работал).
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 27.11.2007, 15:07
#8
Bull

Конструктор по сути (машиностроитель)
 
Регистрация: 10.10.2005
Набережные Челны (это где КамАЗ)
Сообщений: 11,391


kpblc, я вижу, что у тебя все АКАД установлены... Как ты в таком количестве версий не путаешься? (вопрос риторический)
__________________
Век живи, век учись - ...
Bull вне форума  
 
Непрочитано 27.11.2007, 15:10
#9
Геннадий aka PG

Машиностроение, Проектирование
 
Регистрация: 15.09.2003
Москва
Сообщений: 1,113
<phrase 1=


Цитата:
Сообщение от Bull Посмотреть сообщение
kpblc, я вижу, что у тебя все АКАД установлены... Как ты в таком количестве версий не путаешься? (вопрос риторический)
У него для каждой версии свой комп! (я так думаю)
__________________
С уважением,
Геннадий aka PG
Геннадий aka PG вне форума  
 
Непрочитано 27.11.2007, 15:13
#10
Bull

Конструктор по сути (машиностроитель)
 
Регистрация: 10.10.2005
Набережные Челны (это где КамАЗ)
Сообщений: 11,391


Ааааа.... Студент у него набирается опыта на 14-м, выпускник на 2000-м, с годом стажа - на 2000i , два года - на 2002-м и т.д. )))))
__________________
Век живи, век учись - ...
Bull вне форума  
 
Непрочитано 27.11.2007, 15:17
#11
Хмурый


 
Регистрация: 29.10.2004
СПб
Сообщений: 16,379


Он, Kpblc, то-есть, вообще в AutoCAD'е не работает.
(это справочная информация)
Хмурый вне форума  
 
Непрочитано 27.11.2007, 15:19
#12
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,409


Bull, путаюсь не я, путается комп обычно
Геннадий aka PG, почти. На критичных вещах VMWare рулит
Хмурый, ну вот... Все тайны выдал
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 27.11.2007, 15:23
#13
Геннадий aka PG

Машиностроение, Проектирование
 
Регистрация: 15.09.2003
Москва
Сообщений: 1,113
<phrase 1=


Цитата:
Сообщение от Кулик Алексей aka kpblc Посмотреть сообщение
VMWare рулит
У него еще и персональный водительша В.М.Варя !!!!
Везет же
__________________
С уважением,
Геннадий aka PG
Геннадий aka PG вне форума  
 
Непрочитано 27.11.2007, 15:29
#14
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,409


Ага, как увезет, так "туши свет, сливай воду"
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 27.11.2007, 16:05
#15
Alan

CAD
 
Регистрация: 28.08.2003
Киев
Сообщений: 1,834
<phrase 1=


Цитата:
Сообщение от sasha_lif Посмотреть сообщение
Подскажите, пожалуйста, как при нажатии кнопки печать, автоматически добавить на чертеж имя файла и текущую дату?
заранее спасибо всем
Насчет "Штемпель Вкл" это понятно.
Вставлю свои 5 (пять) копеек.
Я у себя в проге ставлю имя файла при открытии чертежа с координатами +1,+1мм от левого нижнего угла изображений.
И при выполнении команды штамп с координатами +1,+1мм от левого нижнего угла внешней рамки.
Не спрашивая пользователя. Очень потом помогает при поисках, так как документооборота до сих пор нет.
__________________
По теории майский жук летать не может.
Но он этого не знает. И летает...
Alan вне форума  
 
Автор темы   Непрочитано 05.12.2007, 09:48
#16
sasha_lif

Дизайнер-конструктор
 
Регистрация: 29.05.2004
Kiev
Сообщений: 1,179
<phrase 1=


(А 2004) а как можно вставить значение даты и имени файла в АТРИБУТ БЛОКА (ну, например date_file )?

попробовал написать свой вариант простановки даты, исправив неувязку , если уже задана фиксированная высота текста. Для этого ввел переменную h_ , а ее значение задаю из другого Лиспа, определяющего размеры необходимой высоты
Код:
[Выделить все]
;;------------> Программа записи имени файла и даты на чертеж <-----------

(defun c:date()

(setq old_cmd  (getvar "CMDECHO"))
(setvar "CMDECHO" 0)
(Command "-Style"  "standard"  ""  "0"  ""  ""  ""  ""  "" )
(setq dat (getvar "CDATE"))
(setq nam (getvar "DWGNAME"))

;(setq nam (strcat (getvar "DWGPREFIX") (getvar "DWGNAME")))
(setq nam (getvar "DWGNAME"))

(setq mon1  (fix  (/ dat 100)))
(setq mon2 (* (fix (/ mon1 100)) 100))
(setq tmon (itoa (- mon1 mon2)))		; получение месяца

(setq day1  (fix  (/ dat 1)))
(setq day2 (* (fix (/ day1 100)) 100))
(setq tday (itoa (- day1 day2)))		; получение дня

(setq tyer (itoa (fix (/ dat 10000))))		; получение года

(setq strok1 (strcat "File:" nam "  Дата:" tday"-" tmon "-" tyer "г"))
(setq pt (getpoint "\nТочка вставки текста: "))

(COMMAND "TEXT" pt h_ 90 strok1)

(Command "-Style"  "standard"  ""  h_  ""  ""  ""  ""  "" )
(setvar "CMDECHO" old_cmd)
(princ)
)

Извиняююсь, что-то у меня не срабатывает тег "CODE" для преобразования в код этого лиспа.

И все-таки как поместить в атрибут дату с возможностью обновления?
__________________
Kiev, Ukraine

Последний раз редактировалось Кулик Алексей aka kpblc, 05.12.2007 в 09:54.
sasha_lif вне форума  
 
Непрочитано 05.12.2007, 10:08
#17
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,409


Код:
[Выделить все]
(defun c:ins-date (/ pt txt_height dat)
  (vl-load-com)
  (if
    (and
      (=
        (type (setq
                pt (vl-catch-all-apply
                     '(lambda () (getpoint "\nТочка вставки текста <Отмена> : "))
                     ) ;_ end of vl-catch-all-apply
                ) ;_ end of setq
              ) ;_ end of type
        'list
        ) ;_ end of =
      (member (type (setq txt_height
                           (vl-catch-all-apply
                             '(lambda (/ def)
                                (setq def
                                       (if (= (cdr (assoc 40
                                                          (entget (tblobjname
                                                                    "style"
                                                                    (getvar "textstyle")
                                                                    ) ;_ end of TBLOBJNAME
                                                                  ) ;_ end of entget
                                                          ) ;_ end of assoc
                                                   ) ;_ end of cdr
                                              0.
                                              ) ;_ end of =
                                         (getvar "textsize")
                                         (cdr
                                           (assoc
                                             40
                                             (entget
                                               (tblobjname "style" (getvar "textstyle"))
                                               ) ;_ end of entget
                                             ) ;_ end of assoc
                                           ) ;_ end of cdr
                                         ) ;_ end of if
                                      ) ;_ end of setq
                                (cond
                                  ((getdist (strcat "\nВысота текста <"
                                                    (rtos def)
                                                    "> :"
                                                    ) ;_ end of strcat
                                            ) ;_ end of getdist
                                   )
                                  (t def)
                                  ) ;_ end of cond
                                ) ;_ end of lambda
                             ) ;_ end of vl-catch-all-apply
                          ) ;_ end of setq
                    ) ;_ end of type
              (list 'real 'int)
              ) ;_ end of member
      ) ;_ end of and
     (progn
       (setq date (itoa (fix (getvar "cdate")))
             date (strcat (substr date 7)
                          "-"
                          (substr date 5 2)
                          "-"
                          (substr date 1 4)
                          " г"
                          ) ;_ end of strcat
             ) ;_ end of setq
       (entmakex (list '(0 . "TEXT")
                       '(100 . "AcDbEntity")
                       '(100 . "AcDbText")
                       (cons 10 pt)
                       (cons 40 txt_height)
                       (cons 1 date)
                       (cons 50 (/ pi 2.0))
                       (cons 7 (getvar "textstyle"))
                       ) ;_ end of list
                 ) ;_ end of entmakex
       ) ;_ end of progn
     ) ;_ end of if
  ) ;_ end of defun
2004-го нет, так что проверка на твоей совести. Автоматически обновлять - только если через rtext, но я DIESEL уже не помню совсем
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Автор темы   Непрочитано 16.12.2007, 16:43
#18
sasha_lif

Дизайнер-конструктор
 
Регистрация: 29.05.2004
Kiev
Сообщений: 1,179
<phrase 1=


>Кулик Алексей aka kpblc
>Alan
А как выглядит lisp для простановки даты в АТРИБУТ БЛОКА?
Без указания точек вставки и высоты текста.
Где-то здесь брал программу по автоматической нумерации листов с простановкой порядкового номера через атрибут,
хотелось-бы чего-нибудь подобного:select-all, автоматом находит блоки в пространстве model и прооставляет имя файла в атрибут блока

(полностью согласен Alan что пользователя ничего не должны спрашивать)
Подскажите пожалуйста, как сделать этот lisp.
__________________
Kiev, Ukraine
sasha_lif вне форума  
 
Непрочитано 16.12.2007, 22:33
#19
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,409


Да в общем-то точно так же. Получаешь указатель на атрибут и меняешь ему либо TextString, либо группу 1 (для варианта DXF и entmod). Подробности зависят от того метода, который ты изберешь.
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 14.10.2008, 00:26
#20
PL


 
Регистрация: 23.11.2006
California
Сообщений: 4,750


Вот такои штамп:
$(getvar, "dwgprefix")$(getvar, "dwgname") $(edtime, 0, MON DD"," YYYY - H:MMam/pm) $(getvar, "loginname")
Все было нормально, теперь в 2004 каде вижу только крест вместо штампа, в 2009 вроде нормально...
В чем может быть дело?
Миниатюры
Нажмите на изображение для увеличения
Название: 1.jpg
Просмотров: 156
Размер:	34.3 Кб
ID:	11052  Нажмите на изображение для увеличения
Название: 2.jpg
Просмотров: 128
Размер:	30.3 Кб
ID:	11053  
PL вне форума  
 
Непрочитано 14.10.2008, 08:27
#21
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,409


А "штамп" - это поле или RTEXT?
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 14.10.2008, 18:11
#22
PL


 
Регистрация: 23.11.2006
California
Сообщений: 4,750


Цитата:
Сообщение от Кулик Алексей aka kpblc Посмотреть сообщение
А "штамп" - это поле или RTEXT?
сделано давно для acad2004- rtext
PL вне форума  
 
Непрочитано 14.10.2008, 19:16
#23
PL


 
Регистрация: 23.11.2006
California
Сообщений: 4,750


Не поиму, все заработало вроде (не работало пару месяцев). запустил команду ртехт, крест превратился в нормальный штамп.
Глюки какие то.
PL вне форума  
 
Непрочитано 20.11.2008, 19:01
#24
PL


 
Регистрация: 23.11.2006
California
Сообщений: 4,750


у меня какие то проблемы (у всех в офисе) , при перезагрузке автокада, строчка rtext не видна, виден только прямоугольник с перекрестием вместо него. запускаешь команду rtext-идет запрос "enter an option" - в этот момент прямоугольник с перекрестием превращается в нормальный техт, нажимаю escape-выхожу из команды. не знаю от чего это происходит, но простейшее решение есть-запустить и прервать команду rtext при старте автокада. Т.е в acad.lsp записать строчку типа (c:rtext), но как прервать команду и выйти?
PL вне форума  
 
Непрочитано 20.11.2008, 22:38
#25
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,409


demandload чему равно?
Вариант acad.lsp:
Код:
[Выделить все]
;Старый код

(defun start-rtext()
(command "rtext")
(command)
)

(start-rtext)
Код не гонял на корректность.
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 21.11.2008, 00:17
#26
PL


 
Регистрация: 23.11.2006
California
Сообщений: 4,750


rtext Unknown command "RTEXT"

у меня комманды expresstools не запускаются лиспом если так:
(command "rtext")
вот так запускаются:
(c:rtext)
но как прервать эту команду?
demandload 3, какие-нибудь рекомендации? буду рад любым рекомендациям
PL вне форума  
 
Непрочитано 21.11.2008, 08:09
#27
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,409


Сейчас посмотрел rtext.lsp... Попробуй в acaddoc.lsp (или acad.lsp) прописать
Код:
[Выделить все]
(AcetRText:appload)
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 21.11.2008, 20:17
#28
PL


 
Регистрация: 23.11.2006
California
Сообщений: 4,750


пишет:
Regenerating model.
AutoCAD Express Tools Copyright © 2002-2003 Autodesk, Inc.
; error: no function definition: ACETRTEXT:APPLOAD
AutoCAD menu utilities loaded.
интересно что с самого начала, год назад все было нормально, потом что то случилось. да и весь автокад (2004) стал нестабильный (переставлял, без эффекта), раза 3 в день зависает намертво когда открываешь рамку например в комаде strech . Может есть связь.
PL вне форума  
 
Непрочитано 21.11.2008, 22:24
#29
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,409


Я уже не помню, что и как там было в 2004-м... Попробуй переустановить только ExpressTools.
---
Добавлено: можно попробовать их перезагрузить: сначала выгрузить меню, потом загрузить снова, как описано в справке.
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.

Последний раз редактировалось Кулик Алексей aka kpblc, 21.11.2008 в 22:34.
Кулик Алексей aka kpblc вне форума  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > AutoCAD > простановка даты и имени файла при печати



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
английский ACAD2005 в имени файла не понимает русские буквы sv_penza AutoCAD 6 26.04.2007 16:20
Где хранится значение суффикса имени файла печати? kp+ AutoCAD 3 27.01.2006 15:05
задание атрибуту значения имени файла Паша Горбунов AutoCAD 5 21.10.2005 19:06
Масштаб при печати Екатерина AutoCAD 13 04.02.2004 09:33
Глюк с атрибутами при открытии файла Caddy AutoCAD 2 18.09.2003 22:06