[ID CC-CC2021] Изменение импортированных комментариев

veretragna

γνώσις
Топикстартер
Сообщения
578
Реакции
200
Добрый вечер.
Прислали мне файл с правками, где комментарии неправильно отмечены инструментом "маркер", а контент содержит фразу "Change into: ". Если импортировать такой файл в индизайн, комментарии нельзя внести автоматически.
Казалось бы, достаточно удалить лишнее "Change into: " и поменять тип комментария на "заменить текст" и дело в шляпе.
Написал вот такой скрипт:
JavaScript:
function main(){
    var c = app.activeDocument.pdfComments.everyItem().getElements();
    for (i = c.length-1; i >= 0; i--) {
        var prop = c[i].properties;
        prop.commentContent = prop.commentContent.replace("Change into: ", "");
        prop.commentType = CommentTypeEnum.REPLACE_TEXT_TYPE;
        c[i].properties = prop;
    }
}
main();
Но он не работает.
При отладке посмотрел в переменную prop, там все поменялось, а строка c[i].properties = prop; не отрабатывает, после этой строки содержимое комментария не меняется.
Это лыжи не едут или тут есть какая-то хитрость?
 

_MBK_

Пикирующий бомбардировщик
15 лет на форуме
Сообщения
33 185
Реакции
10 844

[TD valign="top"]commentContent[/TD]
[TD valign="top"]String[/TD]
[TD valign="top"] readonly [/TD]
[TD valign="top"]The content of the comment[/TD]


[TD valign="top"]commentType[/TD]
[TD valign="top"]CommentTypeEnum
CommentTypeEnum.ARROW_TYPE
CommentTypeEnum.CLOUD_TYPE
CommentTypeEnum.CONNECTED_LINES_TYPE
CommentTypeEnum.FREEFORM_DRAWING_TYPE
CommentTypeEnum.HIGHLIGHT_TEXT_TYPE
CommentTypeEnum.INSERT_TEXT_TYPE
CommentTypeEnum.INVALID_COMMENT_TYPE
CommentTypeEnum.LINE_SEGMENT_TYPE
CommentTypeEnum.OVAL_TYPE
CommentTypeEnum.POLYGON_TYPE
CommentTypeEnum.RECTANGLE_TYPE
CommentTypeEnum.REPLACE_TEXT_TYPE
CommentTypeEnum.SQUIGGLY_TEXT_TYPE
CommentTypeEnum.STAMP_TYPE
CommentTypeEnum.STICKY_NOTE_TYPE
CommentTypeEnum.STRIKETHROUGH_TEXT_TYPE
CommentTypeEnum.TEXT_BOX_TYPE
CommentTypeEnum.TEXT_CALLOUT_TYPE
CommentTypeEnum.TEXT_TYPEWRITER_TYPE
CommentTypeEnum.UNDERLINE_TEXT_TYPE[/TD]
[TD valign="top"] readonly [/TD]
[TD valign="top"]The type of the comment[/TD]
 
  • Спасибо
Реакции: Валера1966

veretragna

γνώσις
Топикстартер
Сообщения
578
Реакции
200
2020-10-06_165344.png

В этом случае не сработает даже через properties?
Метод changeStatus тоже пробовал, не работает.
 

veretragna

γνώσις
Топикстартер
Сообщения
578
Реакции
200
Если эти свойства действительно readonly в любой ситуации, то вопрос закрыт. На кой ляд было вообще вводить модель комментариев в индизайн, если с ней нельзя работать? Вопрос риторический.
 

_MBK_

Пикирующий бомбардировщик
15 лет на форуме
Сообщения
33 185
Реакции
10 844
Ну читать то можно
А как поменять - чтото даже примеры не гуглятся, что первый признак того, что , наверное, нельзя
 

Oleg Butrin

20 лет на форуме
Сообщения
1 990
Реакции
1 213
Сделать копию pdf и скриптом вылечить комментарии там.
 

veretragna

γνώσις
Топикстартер
Сообщения
578
Реакции
200
Вечерком запилю свиток с акробатическим колдунством.
 

veretragna

γνώσις
Топикстартер
Сообщения
578
Реакции
200
Обалдеть. По ходу, вопрос окончательно закрыт даже с акробатом.
2020-10-06_174912.png

Edit: есть еще вариант выявить связь комментария с текстом в индизайне и редактировать напрямую текст.
 
Последнее редактирование:

_MBK_

Пикирующий бомбардировщик
15 лет на форуме
Сообщения
33 185
Реакции
10 844
Не совсем понимаю, как именно вы хотели тип комментария поменять?
 

veretragna

γνώσις
Топикстартер
Сообщения
578
Реакции
200
Текст выделен инструментом "маркер". Было бы логично поменять его на "заменить текст", желательно - не руками. Текст-то уже выделен, казалось бы, в чем проблема поменять тип комментария на выделенном тексте?
 

_MBK_

Пикирующий бомбардировщик
15 лет на форуме
Сообщения
33 185
Реакции
10 844
Так это вообще другой тип комментария
Это все равно как прямоугольник на круг поменять простым изменением типа
Ну пересоздайте комментарий заново c требуемым типом, не пойму в чем проблема?
 

~RA~

Одарённая.
12 лет на форуме
Сообщения
11 860
Реакции
3 450
Есть одна идейка. Для опробирования делайте пжл. файлик с 5 комментариями, 3 одного типа и 2 другого.
 

veretragna

γνώσις
Топикстартер
Сообщения
578
Реакции
200
Так это вообще другой тип комментария
Это все равно как прямоугольник на круг поменять простым изменением типа
Ну пересоздайте комментарий заново c требуемым типом, не пойму в чем проблема?
Это уже слишком сложная для меня задача, учитывая, что это акробат. В индизайне было бы проще, если бы было понятно, где связь между комментом и текстом, который с ним связан. Пока что я такой связи найти не могу.
 

veretragna

γνώσις
Топикстартер
Сообщения
578
Реакции
200

~RA~

Одарённая.
12 лет на форуме
Сообщения
11 860
Реакции
3 450
Pdf. Чтобы было понятно, что на что нужно поменять.
 

veretragna

γνώσις
Топикстартер
Сообщения
578
Реакции
200
Например.
 

Вложения

  • acrojs.zip
    45.3 КБ · Просм.: 173

Skvoznyak

15 лет на форуме
Сообщения
5 500
Реакции
2 168
ну, для скрипта ридонли, а если в idml расковырять например и там поменять напрямую? заодно можно посмотреть, где оно к тексту привязано, можно будет сразу в story текст заменить. вариант?
 

veretragna

γνώσις
Топикстартер
Сообщения
578
Реакции
200
hsAAAgGe5uA-480.jpg
 

_MBK_

Пикирующий бомбардировщик
15 лет на форуме
Сообщения
33 185
Реакции
10 844
Тогда уж в PDF проще
 

veretragna

γνώσις
Топикстартер
Сообщения
578
Реакции
200
Есть у меня проект с огромным количеством таблиц, для него регулярно приходят правки в виде комментариев. Проект на нескольких языках, в разных языках совсем немножко отличается ширина колонок, но разница есть.
Иногда правки приходят в виде поправок к оригиналу, и меня просят внести аналогичные правки во все языки. Иногда отличается версия pdf и я в таких случаях перекидываю комментарии из pdf в pdf. Короче, случаи бывают разные.
Так вот, о комментариях: если ширина колонок отличается, например, на 0,3 мм, то комментарий часть текста захватывает, а часть нет, он смещается так, что краешек висит в воздухе.
2020-10-06_211620.png
А если в таблице была удалена строка, комментарий висит в воздухе целиком.
Из этого я делаю вывод, что комментарий к тексту в pdf вообще не привязан, это специальный графический объект, который располагается над текстом, а при импорте индизайн анализирует, что над чем висит и сопоставляет текст с комментарием.
Если рассматривать комментарий как графический объект, становится непонятно, почему его тип нельзя поменять хоть на линию, хоть на черта лысого.
Это так, жизненное наблюдение.