Jump to content

Особенности отображения многострочных атрибутов


Recommended Posts

В развитие темы с очисткой символов форматирования в многострочных объектах хотелось бы отметить выявленную особенность многострочных атрибутов в блоках.

Штатные средства нанокада НЕ позволяют менять параметры многострочного атрибута кроме некоторых (весьма специфический набор, кстати!)

Спойлер

image.png.b4ee4d3c51795ecd1b06de159d5beb32.png

непосредственно в редакторе атрибута символы подчеркивания и надчеркивания

 

и общие

image.png.15c87baf3a1f21465047623ccf772b7e.png

Причем, применение этих общих параметров совершенно неочевидно, т.к. непонятно их влияние на части атрибута.

 

В АС14 набор средств почти такой же.

 

При этом

Спойлер

image.png.e10b5bb21e4dd7d70f136f7e2e9f773c.png

Полный набор средств, которые можно применить к произвольным фрагментам текста вплоть до каждого символа по отдельности. В АС набор средств тоже практически идентичен.

 

Вместе с тем простыми программными средствами в многострочный атрибут можно "впихнуть" витиевато отформатированный текст. Прилагаемый файл содержит мтекст с различными форматированными фрагментами и блок с многострочным атрибутом, в который скопировано содержимое МТЕКСТа.

 

1. Вид в среде САПР

 

Спойлер

image.png.5d673fa5435eb858cc61e273b24bf1f9.png

Отмечу еще раз, что штатными средствами атрибут таким сделать невозможно!

 

Спойлер

image.png.82c03c013207d2d5716e74c8d955be64.png

 

Наблюдаем одинаковое с NС отображение мтекста и существенно другое отображение многострочного атрибута

 

Возможно, в более свежих версиях АС наблюдается другая картина, но налицо различие в интерпретации содержимого DWG-файла.

 

2. Исследование внутренней структуры объектов было проведено с помощью функции entget, примененной к атрибуту и мтексту

2.1. МТЕКСТ

Спойлер

((-1 . #<Имя примитива: 000002F2C15CBC80>) (0 . "MTEXT") (5 . "1D178") (330 . #<Имя примитива: 000002F2C15C6640>) (100 . "AcDbEntity") (67 . 0) (410 . "Model") (8 . "!ОВ") (100 . "AcDbMText") (10 -611215.0 -952268.0 0.0) (40 . 3.0) (41 . 64.7346) (46 . 8.46985) (71 . 1) (72 . 1)

(1 . "Те{\\Lст\\fArial|b0|i0|c0|p34;\\W0.78;ов\\W1;ы}{\\Lй т\\C5;е\\lкс}т") (7 . "GOST 2.304") (210 0.0 0.0 1.0) (11 1.0 0.0 0.0) (42 . 30.9543) (43 . 3.88773) (50 . 0.0) (73 . 1) (44 . 1.0) (75 . 0))

Спойлер

((-1 . <Имя объекта: 7ff49f9b7180>) (0 . "MTEXT") (330 . <Имя объекта: 7ff49f9b1820>) (5 . "1D178") (100 . "AcDbEntity") (67 . 0) (410 . "Model") (8 . "!ОВ") (100 . "AcDbMText") (10 -611215.0 -952268.0 0.0) (40 . 3.0) (41 . 64.7346) (46 . 8.46985) (71 . 1) (72 . 1)

(1 . "Те{\\Lст\\fArial|b0|i0|c0|p34;\\W0.78;ов\\W1;ы}{\\Lй т\\C5;е\\lкс}т") (7 . "GOST 2.304") (210 0.0 0.0 1.0) (11 1.0 0.0 0.0) (42 . 30.9602) (43 . 3.6) (50 . 0.0) (73 . 1) (44 . 1.0))

 Наблюдаем полную идентичность параметров, что свидетельствует об одинаковой интерпретации информации из dwg-формата

 

2.2 Многострочный атрибут

Спойлер

((-1 . #<Имя примитива: 000002F2C15CBB00>) (0 . "ATTRIB") (5 . "1CE48") (330 . #<Имя примитива: 000002F2C15CB400>) (100 . "AcDbEntity") (67 . 0) (410 . "Model") (8 . "0") (62 . 1) (370 . 15) (100 . "AcDbText") (10 -611215.0 -952220.0 0.0) (40 . 3.0)

(1 . "Те%%Uст%%Uов%%Uы%%Uй т%%Uе%%uкст") (50 . 0.0) (41 . 0.8) (51 . 0.0) (7 . "ESKDтекст") (71 . 0) (72 . 1) (11 -611202.0 -952218.0 0.0) (210 0.0 0.0 1.0) (100 . "AcDbAttribute") (2 . "ОБЪЕКТ") (70 . 0) (73 . 0) (74 . 2) (280 . 0) (101 . "Embedded Object") (10 -611202.0 -952218.0 0.0) (40 . 3.0) (41 . 118.0) (46 . 0.0) (71 . 5) (72 . 1)

(1 . "\\W0.80000;Те{\\Lст\\fArial|b0|i0|c0|p34;\\W0.78;ов\\W1;ы}{\\Lй т\\C5;е\\lкс}т") (7 . "ESKDтекст") (210 0.0 0.0 1.0) (11 1.0 0.0 0.0) (42 . 27.0945) (43 . 3.88773) (50 . 0.0) (73 . 1) (44 . 1.0) (75 . 0))

Спойлер

((-1 . <Имя объекта: 7ff49f9b6c80>) (0 . "ATTRIB") (5 . "1CE48") (102 . "{ACAD_XDICTIONARY") (360 . <Имя объекта: 7ff49f9b71d0>) (102 . "}") (330 . <Имя объекта: 7ff49f9b6c60>) (100 . "AcDbEntity") (67 . 0) (410 . "Model") (8 . "0") (62 . 1) (370 . 15) (100 . "AcDbText") (10 -611215.0 -952220.0 0.0) (40 . 3.0)

(1 . "Те%%Uст%%Uов%%Uы%%Uй т%%Uе%%uкст") (50 . 0.0) (41 . 0.8) (51 . 0.0) (7 . "ESKDтекст") (71 . 0) (72 . 1) (11 -611202.0 -952218.0 0.0) (210 0.0 0.0 1.0) (100 . "AcDbAttribute") (280 . 0) (2 . "ОБЪЕКТ") (70 . 0) (73 . 0) (74 . 2) (280 . 0) (71 . 2) (72 . 0) (11 -611202.0 -952218.0 0.0) (101 . "Embedded Object") (10 -611202.0 -952218.0 0.0) (40 . 3.0) (41 . 118.0) (46 . 0.0) (71 . 5) (72 . 1)

(1 . "Те%%Uст%%Uов%%Uы%%Uй т%%Uе%%uкст") (7 . "ESKDтекст") (210 0.0 0.0 1.0) (11 1.0 0.0 0.0) (42 . 80.5333) (43 . 3.0) (50 . 0.0) (73 . 1) (44 . 1.0))

 

Наблюдаем одинаковую первую DXF-группу 1 и разную вторую DXF-группу 1. Причем в нанокаде вторая группа содержит в чистом виде честно отформатированный текст. И отображает, по-видимому, именно его. АС в данном случае выглядит отстающим.

 

 

Выводы.

Наблюдается различие  в интерпретации DWG-формата в NC и АС. Причем, нанокад выглядит предпочтительнее.

 

Вместе с тем, возникают следующие вопросы-пожелания:

1. Если уж нанокад обладает возможностью более продвинутого отображения многострочных атрибутов, практически идентичного отображению МТЕКСТа, то адекватные средства редактирования (возможности изменения параметров для различных фрагментов текста по отдельности) были бы очень кстати. Отсыл, что "так де сделано в АС", уже не прокатывает, т.к. уже наблюдается существенный шаг вперед.

2. Наличие функции, "очищающей" форматирование мтекста, многострочного атрибута и т.п. объкетов имеет смысл ввести в базовый функционал платформы, включив соответствующие кнопки непосредственно в редакторы объектов, а также можно создать отдельный пункт меню с выбором параметров убираемых форматов и применение для групп объектов/всего чертежа.

тестовый МТекст-атрибут1.dwg

Edited by EdwardSt
  • Like 2
Link to comment
Share on other sites

10 минут назад, yum сказал:

Переменная ATTIPE отвечает за вид редактора текста атрибута.

Супер! В рамку и на гвоздь!

Может подскажете, где это можно поменять в меню или настройках?

Хотя и без этого, большое спасибо.

 

Тем не менее, остается вопрос отсутствия совместимости между AC и NC на уровне DWG-формата. 

Ну и востребованная хотелка пакетной очисти форматирования.

 

PS. Попробовал отформатировать в одной системе и открыть в другой. Результаты отображения разные! Несовместимость на уровне DWG-формата. Правда, кто косячит - NC или AC14 , не разбирался.

Edited by EdwardSt
Link to comment
Share on other sites

По очистке форматирования есть предложение в базе. 

По разнице отображения форматирования хорошо бы пример. Все же АС 14 и NC 21 - это разные версии формата DWG. 

Link to comment
Share on other sites

Только что, yum сказал:

Все же АС 14 и NC 21 - это разные версии формата DWG. 

'Это разные поколения софта. Но DWG в примере - один и тот же - dwg 2013.

 

Различия можно увидеть в файле, приложенном к первому посту, да и в самом посте тоже.

Ну поэкспериментировать на том же примере можете сами.

Достаточно в NC внести изменение во фрагмент атрибута и увидеть результат уже в АС.

И наоборот.

Сейчас под рукой нет свежего автокада, поэтому замечание относится к сравнению с АС14.

Link to comment
Share on other sites

14 часов назад, EdwardSt сказал:

Может подскажете, где это можно поменять в меню или настройках?

Спойлер

image.thumb.png.8c84c74126512bf7c1790448527d3e23.png

 

  • Like 1
Link to comment
Share on other sites

За этот интерфейс огромный респект разработчикам. Понятно, что в первую очередь использую именно его.

Но это не та фича, которую рекомендовал бы к применению обычными проектировщиками.

Поэтому и интересуюсь о наличии штатной команды для переключения вида текстового редактора.

На мой взгляд ему самое подходящее место прямо в редакторе.

Хоп - и переключился на удобный способ!

В принципе, это можно считать предложением к усовершенствованию продукта.

  • Like 3
Link to comment
Share on other sites

3 минуты назад, EdwardSt сказал:

Но это не та фича, которую рекомендовал бы к применению обычными проектировщиками.

Спойлер

image.png.a9f91de970bbabc73d549f4c67bdf55c.png

 

  • Thanks 1
  • Haha 1
Link to comment
Share on other sites

Раз уж пошла такая петрушка, может кто то знает как тайными методами сделать рамку вокруг атрибута, как у Мтекста ? 

 

И тогда еще вопросик, может тоже кто то знает как сразу вставлять Мтекст с скрытым фоном ? 

Спойлер

image.png.124b662034cf02f6a764893f9ed5096a.png

 

Edited by aerohost
Link to comment
Share on other sites

В 22.10.2021 в 15:19, aerohost сказал:

И тогда еще вопросик, может тоже кто то знает как сразу вставлять Мтекст с скрытым фоном ?

 

Рамку, похоже, в атрибуте сделать нельзя.

Скрытие фона - непосредственно в редакторе текста контекстное меню.

Правда, распространяется заливка на весь атрибут, а не на выделенную часть текста

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
 Share

  • Tell a friend

    Love Официальный форум компании Нанософт? Tell a friend!
×
×
  • Create New...