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

Вернуться   Форум DWG.RU > Программное обеспечение > AutoCAD > Как поменять пользовательскую ширину у МТекст?

Как поменять пользовательскую ширину у МТекст?

Ответ
Поиск в этой теме
Непрочитано 20.02.2019, 14:29 #1
Как поменять пользовательскую ширину у МТекст?
mindchamber
 
Регистрация: 29.07.2017
Сообщений: 191

Всем привет.

Имеется много Мтекстов, у которых надо задать пользовательскую ширину области текста. Но стока "слепая". Почему так?

Миниатюры
Нажмите на изображение для увеличения
Название: Screenshot_1.png
Просмотров: 202
Размер:	27.3 Кб
ID:	211159  

Просмотров: 5743
 
Непрочитано 20.02.2019, 14:34
#2
Bull

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


так ширина/высота зависит от "ручек" же...
__________________
Век живи, век учись - ...
Bull вне форума  
 
Автор темы   Непрочитано 20.02.2019, 14:43
#3
mindchamber


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


У меня 500 текстов, каждый за ручки дергать?
mindchamber вне форума  
 
Непрочитано 20.02.2019, 14:50
2 | #4
Bull

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


http://help.autodesk.com/view/ACDLT/...2-03D6AC095D4F
представлен второй способ. Для изменения уже надо войти в редактирование. Третьего способа не указано. Стало быть, такой возможности нет. Возможно, гуру подскажут обходной способ какой, я не знаю такого...

Немножко поэкспериментировал. Получается задать можно. Только по-умолчанию у МТекстов свойство "динамические столбцы" (строка "столбцы" в панели свойств). Надо сделать "в один столбец". Тогда высота и ширина становятся доступны для редактирования
__________________
Век живи, век учись - ...

Последний раз редактировалось Bull, 20.02.2019 в 14:58.
Bull вне форума  
 
Непрочитано 05.03.2021, 10:44
#5
Volodich

проектировщик-электрик
 
Регистрация: 20.12.2007
Челябинск
Сообщений: 474


Здравствуйте!
Хочу поднять тему!
У меня часто приходится чертежи из масштаба 1:1 уменьшать в 1:100. и в таком случае у Мтекстов получаются очень длинные поля. Или правильно сказать ширина.
Лучше всего когда заходишь в мтекст, два раза нажимаешь на стрелочку и ширина мтекста становится "по тексту".
Это если по одному редактируешь.
Но когда их много, я пока что тоже дошёл до того чтобы через свойства убрать динамические столбцы и потом в свойствах делать минимальную ширину.
Но в таком случае длинные Мтексты сбиваются в кучу.
А есть ли какой-то программный аналог этого "двойного щелчка" ? Может можно как-то макросом или кто умеет, лиспом сделать это? Чтобы одним нажатием на выделенных текстах выполнялся этот "двойной щелчок" ?
__________________
Неважно, что что-то идет неправильно. Возможно, это хорошо выглядит...
Volodich вне форума  
 
Непрочитано 05.03.2021, 11:06
#6
Кулик Алексей aka kpblc
Moderator

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


Стесняюсь спросить - а на фига использовать масштабирование, когда можно без него обойтись?
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 05.03.2021, 13:49
#7
Volodich

проектировщик-электрик
 
Регистрация: 20.12.2007
Челябинск
Сообщений: 474


Цитата:
Сообщение от Кулик Алексей aka kpblc Посмотреть сообщение
Стесняюсь спросить - а на фига использовать масштабирование, когда можно без него обойтись?
Стесняюсь спросить, как? Я работаю в модели в масштабе 1:100. А строители как правило 1:1. Мне это неудобно, все мои блоки и всё остальное уже на 1:100 настроено.
Сразу скажу, я знаю про внешние ссылки и изредка с ними работал, но те строительные чертежи, на которых обычно приходится работать, практически невозможно вставить как ссылки и манипуляцией со слоями сделать такого вида как тебе надо (лишнее убрать), т.к. там такая каша из слоёв, что проще вручную удалить что не нужно.
Ну и дело не только в строителях, разные проектировщики по-разному работают. Берешь чей-то файл, копируешь оттуда лист, а он вставляется к тебе таким огромным.
Это всё оффтоп получается. Но т.к. ты администратор, сам себя не накажешь, наверное
__________________
Неважно, что что-то идет неправильно. Возможно, это хорошо выглядит...
Volodich вне форума  
 
Непрочитано 05.03.2021, 14:53
#8
koMon


 
Блог
 
Регистрация: 26.09.2017
Сообщений: 1,680



Код:
[Выделить все]
 
;*********************************************************************************************************************************************************

(vl-load-com)

;****************

(defun c:reset_mtext_width (/ mtext_index ignore_empty_sset mtext_sset mtext_object mtext_entity mtext_width)
	(vla-startundomark (vla-get-activedocument (vlax-get-acad-object)))
	(repeat (sslength (setq ignore_empty_sset (while (null (setq mtext_sset (vl-catch-all-apply 'ssget (list "_:L" '((0 . "mtext")))))))
							mtext_index -1
							mtext_sset (cond
											(
												(vl-catch-all-error-p mtext_sset)
													(princ "\nОтмена команды")
													(ssadd)
											)
											(
												t
													mtext_sset
											)
									  )
					  )
			)
		(setq mtext_object (vlax-ename->vla-object (setq mtext_entity (ssname mtext_sset (setq mtext_index (1+ mtext_index)))))
			  mtext_width (cdr (assoc 42 (entget mtext_entity)))
		)
		(entmod (append (entget mtext_entity) '((75 . 0))))
		(entmod (subst (cons 41 (* 1.01 mtext_width)) (assoc 41 (entget mtext_entity)) (entget mtext_entity)))
	)
	(vla-endundomark (vla-get-activedocument (vlax-get-acad-object)))
	(princ)
)

;*********************************************************************************************************************************************************
koMon вне форума  
 
Непрочитано 05.03.2021, 14:57
#9
Кулик Алексей aka kpblc
Moderator

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


Ага, inunits, insunitsdefsource, insunitsdeftarget - запрет к использованию и семикратный расстрел через повешение?
Единицы блоков по хорошему бы ставить "безразмерными" - тогда они вставляться будут корректно даже в дюймовые чертежи.
P.S. Повторю вопрос - на фига 1:100, если есть листы и аннотативность?
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 06.03.2021, 22:30
#10
Volodich

проектировщик-электрик
 
Регистрация: 20.12.2007
Челябинск
Сообщений: 474


Цитата:
Сообщение от koMon Посмотреть сообщение
а если так (не для lt)
Круто! работает! Пробовал даже выделять не только текст, а вообще весь лист целиком и она ничего не портит, делает что нужно с текстом!
Блин, жаль не знаю автолиспа, как же круто уметь такие вещи делать )) Или может это не лисп, этого я тоже не знаю )))))))
Спасибо! Потестирую в работе, если что, ещё отпишусь сюда.
__________________
Неважно, что что-то идет неправильно. Возможно, это хорошо выглядит...
Volodich вне форума  
 
Непрочитано 01.02.2023, 15:03
#11
Ale_xey26


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


Цитата:
Сообщение от koMon Посмотреть сообщение

Код:
[Выделить все]
 
;*********************************************************************************************************************************************************

(vl-load-com)

;****************

(defun c:reset_mtext_width (/ mtext_index ignore_empty_sset mtext_sset mtext_object mtext_entity mtext_width)
	(vla-startundomark (vla-get-activedocument (vlax-get-acad-object)))
	(repeat (sslength (setq ignore_empty_sset (while (null (setq mtext_sset (vl-catch-all-apply 'ssget (list "_:L" '((0 . "mtext")))))))
							mtext_index -1
							mtext_sset (cond
											(
												(vl-catch-all-error-p mtext_sset)
													(princ "\nОтмена команды")
													(ssadd)
											)
											(
												t
													mtext_sset
											)
									  )
					  )
			)
		(setq mtext_object (vlax-ename->vla-object (setq mtext_entity (ssname mtext_sset (setq mtext_index (1+ mtext_index)))))
			  mtext_width (cdr (assoc 42 (entget mtext_entity)))
		)
		(entmod (append (entget mtext_entity) '((75 . 0))))
		(entmod (subst (cons 41 (* 1.01 mtext_width)) (assoc 41 (entget mtext_entity)) (entget mtext_entity)))
	)
	(vla-endundomark (vla-get-activedocument (vlax-get-acad-object)))
	(princ)
)

;*********************************************************************************************************************************************************
У меня такая же проблема! но только с повернутым размером мтекст которой внутри размера улетает. можно ли сделать что то подобное или есть что то внутри автокада.
Вложения
Тип файла: dwg
DWG 2018
Мтекст в повернутом размере (1).dwg (706.7 Кб, 5 просмотров)

Последний раз редактировалось Ale_xey26, 01.02.2023 в 16:14.
Ale_xey26 вне форума  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > AutoCAD > Как поменять пользовательскую ширину у МТекст?

Размещение рекламы


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Входит ли ширина перильных ограждений в ширину тротуара? Sergey Valerevich Автомобильные и железные дороги, мосты, тоннели и организация движения 6 28.04.2018 06:38
Как поменять шрифт в марке оси? vlazz Revit 2 14.03.2018 09:23
Какую принять ширину дверей лифта при замене лифтов отработавших свой срок. OSPV Прочее. Архитектура и строительство 6 16.01.2017 17:36
в ширину коридора в жилом здании ф1.3 учитывают ширину двери dr.ZLO Архитектура 3 25.04.2012 10:45