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

Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > Изменение width factor текста

Изменение width factor текста

Ответ
Поиск в этой теме
Непрочитано 24.08.2007, 09:12 #1
Изменение width factor текста
ie.spb
 
Инженер
 
Регистрация: 21.08.2007
Сообщений: 598

Добрый день господа программисты. Стоит следующая задача: создать макрос для кнопки, для целей изменения ширины текста, т.е. выделяем текст, а потом правой кнопкой мыши увеличиваем ширину, а левой уменьшаем, с шагом шкалы 0.1. Возможно ли это???
Просмотров: 6886
 
Непрочитано 24.08.2007, 10:00 Re: Изменение width factor текста
#2
zenon

Остекляем!!! Алюминим!!!
 
Регистрация: 21.02.2005
Москва
Сообщений: 3,924
<phrase 1=


Цитата:
Сообщение от Djonikbishkek
Добрый день господа программисты. Стоит следующая задача: создать макрос для кнопки, для целей изменения ширины текста, т.е. выделяем текст, а потом правой кнопкой мыши увеличиваем ширину, а левой уменьшаем, с шагом шкалы 0.1. Возможно ли это???
Возможно и без макроса, надо только панель свойтв открыть. По количеству кликов и телодвижений КПД выше будет.
__________________
Мы можем делать быстро, качественно и недорого, выбирайте любые 2 условия.:search:
zenon вне форума  
 
Автор темы   Непрочитано 24.08.2007, 11:09
#3
ie.spb

Инженер
 
Регистрация: 21.08.2007
Сообщений: 598
<phrase 1=


По моему мнения ирония здесь не уместна.
ie.spb вне форума  
 
Непрочитано 24.08.2007, 12:30
#4
Makswell

Инженер-строитель
 
Регистрация: 15.08.2007
Киров
Сообщений: 2,204


Можно повесить на кнопку такое:
Код:
[Выделить все]
^C^C(defun C:test (/ m-name m-ent) (setq m-name (car (entsel "Выберите текст: "))) (setq m-ent (entget m-name)) (entmod (subst (cons 41 (+ (cdr (assoc 41 m-ent)) 0.1)) (assoc 41 m-ent) m-ent)) (entupd m-name));test
Фигня конечно, но вдруг поможет...
Makswell вне форума  
 
Автор темы   Непрочитано 24.08.2007, 13:05
#5
ie.spb

Инженер
 
Регистрация: 21.08.2007
Сообщений: 598
<phrase 1=


Интересный макрос, а можно ли правую кнопку подключить???
ie.spb вне форума  
 
Непрочитано 24.08.2007, 13:25
#6
Makswell

Инженер-строитель
 
Регистрация: 15.08.2007
Киров
Сообщений: 2,204


Если всё должно работать, как ты описал 1-м посте, то тут по-моему макросом не обойтись, нужна прога, и довольно непростая. ИМХО.
У меня на такую прогу мозгов конечно же не хватит.
Мой предыдущий макрос призван не решить задачу, а лишь только как то улучшить ситуацию
Makswell вне форума  
 
Автор темы   Непрочитано 24.08.2007, 13:33
#7
ie.spb

Инженер
 
Регистрация: 21.08.2007
Сообщений: 598
<phrase 1=


Ситуация действительно улучшилась, большое спасибо! И все таки хотелось бы большего
__________________
Склероз нельзя вылечить, но о нем можно забыть.
(Ф. Раневская)
ie.spb вне форума  
 
Непрочитано 24.08.2007, 14:09
#8
CB

Конструирование в области нефтеразведки
 
Регистрация: 10.02.2006
Гомель
Сообщений: 321


Код:
[Выделить все]
(defun C:test (/ m-name m-ent gr zn)
  (setq m-name (car (entsel "Выберите текст: ")))
  (prompt "\nЛевая кнопка - уменьшение/Правая кнопка -увеличение")
  (setq gr (car (grread)))
  (cond	((= gr 3) (setq zn '-))
	((= gr 11) (setq zn '+))
	(t nil)
  ) ;_ end of cond
  (if zn
    (progn
      (setq m-ent (entget m-name))
      (entmod
	(subst (cons 41 ((eval zn) (cdr (assoc 41 m-ent)) 0.1))
	       (assoc 41 m-ent)
	       m-ent
	) ;_ end of subst
      ) ;_ end of entmod
      (entupd m-name)
    ) ;_ end of progn
  ) ;_ end of if
) ;_ end of defun
CB вне форума  
 
Автор темы   Непрочитано 24.08.2007, 14:19
#9
ie.spb

Инженер
 
Регистрация: 21.08.2007
Сообщений: 598
<phrase 1=


При нажатии левой клавиши все нормально, а вот при нажатии правой получается следующее
Левая кнопка - уменьшение/Правая кнопка -увеличениеnil
__________________
Склероз нельзя вылечить, но о нем можно забыть.
(Ф. Раневская)
ie.spb вне форума  
 
Непрочитано 24.08.2007, 14:26
#10
Makswell

Инженер-строитель
 
Регистрация: 15.08.2007
Киров
Сообщений: 2,204


аналогично...
Makswell вне форума  
 
Непрочитано 24.08.2007, 14:29
#11
Makswell

Инженер-строитель
 
Регистрация: 15.08.2007
Киров
Сообщений: 2,204


Разобрался!
Надо так:
Код:
[Выделить все]
(defun C:test (/ m-name m-ent gr zn) 
  (setq m-name (car (entsel "Выберите текст: "))) 
  (prompt "\nЛевая кнопка - уменьшение/Правая кнопка -увеличение") 
  (setq gr (car (grread))) 
  (cond   ((= gr 3) (setq zn '-)) 
   ((= gr 25) (setq zn '+)) 
   (t nil) 
  ) ;_ end of cond 
  (if zn 
    (progn 
      (setq m-ent (entget m-name)) 
      (entmod 
   (subst (cons 41 ((eval zn) (cdr (assoc 41 m-ent)) 0.1)) 
          (assoc 41 m-ent) 
          m-ent 
   ) ;_ end of subst 
      ) ;_ end of entmod 
      (entupd m-name) 
    ) ;_ end of progn 
  ) ;_ end of if 
) ;_ end of defun
Makswell вне форума  
 
Автор темы   Непрочитано 24.08.2007, 14:36
#12
ie.spb

Инженер
 
Регистрация: 21.08.2007
Сообщений: 598
<phrase 1=


Еще вопрос, можно зациклить так чтобы увеличивала или уменьшала пока не отменишь команду
__________________
Склероз нельзя вылечить, но о нем можно забыть.
(Ф. Раневская)
ie.spb вне форума  
 
Непрочитано 24.08.2007, 15:21
#13
Makswell

Инженер-строитель
 
Регистрация: 15.08.2007
Киров
Сообщений: 2,204


Код:
[Выделить все]
(defun C:test (/ m-name m-ent gr zn)
  (setq m-name (car (entsel "Выберите текст: ")))
  (prompt "\nЛевая кнопка - уменьшение/Правая кнопка -увеличение/любая клавиша-выход")
  (while (/= (setq gr (car (grread))) 2)
    (cond ((= gr 3) (setq zn '-))
	  ((= gr 25) (setq zn '+))
	  (t nil)
    ) ;_ end of cond 
    (if	zn
      (progn
	(setq m-ent (entget m-name))
	(entmod
	  (subst (cons 41 ((eval zn) (cdr (assoc 41 m-ent)) 0.1))
		 (assoc 41 m-ent)
		 m-ent
	  ) ;_ end of subst 
	) ;_ end of entmod 
	(entupd m-name)
      ) ;_ end of progn 
    ) ;_ end of if
  )
) ;_ end of defun
Makswell вне форума  
 
Непрочитано 24.08.2007, 15:36
#14
Apelsinov

Проектировщик ВК. LISP-любитель.
 
Регистрация: 15.12.2003
Москва
Сообщений: 1,202
<phrase 1=


Велосипед какой-то изобретаете, господа.
есть команда в ET - TEXTFIT
__________________
apel.fas
Apelsinov вне форума  
 
Непрочитано 24.08.2007, 15:45
#15
Makswell

Инженер-строитель
 
Регистрация: 15.08.2007
Киров
Сообщений: 2,204


Даа....
Как то подзабыл я эту команду
Ну чтож, дурная голова, как говорится, рукам покоя не дает
Makswell вне форума  
 
Непрочитано 24.08.2007, 15:52
#16
lee


 
Регистрация: 28.02.2004
43
Сообщений: 1,824
<phrase 1=


Цитата:
Сообщение от Makswell
Даа....
Как то подзабыл я эту команду
Ну чтож, дурная голова, как говорится, рукам покоя не дает
По моему мнения ирония здесь не уместна.
lee вне форума  
 
Автор темы   Непрочитано 27.08.2007, 07:52
#17
ie.spb

Инженер
 
Регистрация: 21.08.2007
Сообщений: 598
<phrase 1=


Makswell спасибо большое, очень выручил. А как пользоваться ET - TEXTFIT, что то я не пойму, буду признателен, если введете в курс дела. Заранее спасибо
__________________
Склероз нельзя вылечить, но о нем можно забыть.
(Ф. Раневская)
ie.spb вне форума  
 
Непрочитано 11.11.2008, 23:19
#18
andrew_ro

Светопрозрачные конструкции, проектирование
 
Регистрация: 29.07.2008
Сообщений: 47


Makswell
очень полезный код из #13. Просматривая тему у меня родилась вот какая идея: здесь в #47 лежит лисп для динамического изменения масштаба линий. Код на самом деле "прикольный". Вопрос для ЛИСП-программистов: нельзя ли создать нечто пободное для width factor текста? Хотелось бы, чтобы код обрабатывал text и mtext.

Последний раз редактировалось andrew_ro, 11.11.2008 в 23:37.
andrew_ro вне форума  
 
Непрочитано 02.09.2010, 15:47
#19
ArtemYa


 
Регистрация: 02.12.2009
Сообщений: 31


Подскажите пожалуйста, как можно добраться до свойства атрибута "Width factor" через код VBA, не могу найти такого свойства((.
ArtemYa вне форума  
 
Непрочитано 02.09.2010, 16:50
#20
Vildar

AutoCAD
 
Регистрация: 26.07.2007
Москва
Сообщений: 1,064


Цитата:
Сообщение от ArtemYa Посмотреть сообщение
Подскажите пожалуйста, как можно добраться до свойства атрибута "Width factor" через код VBA, не могу найти такого свойства((.
ScaleFactor
Vildar вне форума  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > Изменение width factor текста