[ID CS4-CS6] панель Links

bossrus

шибка умный, аднака
Топикстартер
12 лет на форуме
Сообщения
447
Реакции
74
вопрос, в принципе, простой.
если выделить картинки в панели links, то activeDosument.selection будет пустым. но функции "Relink" или "Relink to folder" таки будут прекрасно работать.
так вот как узнать что именно выделено в панели Links?


Не по теме:
зы. новый дизайн форума был модным всего лет 5 назад. круто. догоняем свой век :)
 
Последнее редактирование:

Oleg Butrin

20 лет на форуме
Сообщения
1 990
Реакции
1 213
Ответ: в принципе никак.
 

DrEgor

Участник
Сообщения
774
Реакции
68
почему activeDosument.selection будет пустым? или я не правильно понял вопрос?


var gDoc = app.activeDocument;
var gLinks = gDoc.links;
var currentLink = gLinks[0];
var filePath = currentLink.filePath;
alert (filePath);

даже без выделения... панель наверное просто уточняет, что из gDoc.links выделено в данный момент?
то есть через gDoc.selection[0];
 
Последнее редактирование:

_MBK_

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

bossrus

шибка умный, аднака
Топикстартер
12 лет на форуме
Сообщения
447
Реакции
74

Не по теме:
почему activeDosument.selection будет пустым? или я не правильно понял вопрос?


var gDoc = app.activeDocument;
var gLinks = gDoc.links;
var currentLink = gLinks[0];
var filePath = currentLink.filePath;
alert (filePath);

даже без выделения... панель наверное просто уточняет, что из gDoc.links выделено в данный момент?
то есть через gDoc.selection[0];
а где тут панель "Линкс"? вот эта:
Screen shot 2018-11-21 at 12.50.41.png


 

DrEgor

Участник
Сообщения
774
Реакции
68

bossrus

шибка умный, аднака
Топикстартер
12 лет на форуме
Сообщения
447
Реакции
74
панель как таковая или её содержимое?

думаю gDoc.links; это содержимое, а на кой нужна "панель" придумать не получается
gDoc.links — это список линков в документе. это тоже то, но не совсем.
задача — выяснить какой именно файл выделен в панели линкс. без выделения бокса с этим линком. просто одинарный щелчок по названию картинки в панели линкс.
 

DrEgor

Участник
Сообщения
774
Реакции
68
gDoc.links — это список линков в документе. это тоже то, но не совсем.
задача — выяснить какой именно файл выделен в панели линкс. без выделения бокса с этим линком. просто одинарный щелчок по названию картинки в панели линкс.

опять же я не совсем понял как вы хотите "узнать что именно выделено в панели Links " когда "просто одинарный щелчок по названию картинки в панели линкс"

силой мысли? :)

если это для скрипта, то наверное как-то так:
var menuAction = app.menuActions.itemByName("$ID/Copy Full Path");
if(menuAction.enabled){menuAction.invoke()};
app.paste();
 
Последнее редактирование:
  • Спасибо
Реакции: bossrus

apg_777

15 лет на форуме
Сообщения
278
Реакции
81
Надеюсь гуру JavaScript переведут с apple script и предложат строку "$/ID..." для translate key string чтобы получить "Копировать сведения для выбранных связях" — это не ошибка, русскому InDesign так и надо указывать!

Код:
tell application "Adobe InDesign CS6"
    invoke menu action "Копировать сведения для выбранных связях"
end tell

Палитра Links для примера, строки выделены только в ней, сами картинки не выделены:
Снимок экрана 2018-11-30 в 20.49.17.png

результат — текст в клипборде:
Код:
Имя    Статус    Страница    Цветовое пространство
014-44-#-117857.psd    OK    14    CMYK
014-40-#-117857.psd    OK    14    CMYK
014-28-#-117857.psd    OK    14    CMYK
 

Elsynor

Tesseract
12 лет на форуме
Сообщения
1 282
Реакции
1 377
Как-то так…
app.menuActions.itemByName ("Copy Info for Selected Links" ).invoke();
 

apg_777

15 лет на форуме
Сообщения
278
Реакции
81
Как-то так…
app.menuActions.itemByName("Copy Info for Selected Links").invoke();
Не вариант. В русском работать не будет, а через $ID/... можно получить команду для текущего языка InDesign.
И как выдернуть информацию из клипборда? В Apple Script запросто: set theList to the clipboard.
 

Elsynor

Tesseract
12 лет на форуме
Сообщения
1 282
Реакции
1 377
Зануда '%)'
Код:
app.menuActions.itemByID(132619).invoke();
app.paste();
 

DrEgor

Участник
Сообщения
774
Реакции
68
Выставьте Copy Info for Selected Links в код выше и будет вам счастье... Там просто пример был для одного выделенного Линка. Вторую строку можно закомментить
 

bossrus

шибка умный, аднака
Топикстартер
12 лет на форуме
Сообщения
447
Реакции
74
если это для скрипта, то наверное как-то так:
var menuAction = app.menuActions.itemByName("$ID/Copy Full Path");
if(menuAction.enabled){menuAction.invoke()};
app.paste();
хорошая идея. но если картинка прилинкована несколько раз — это никак не даёт понять какой именно линк выделен.
и даже "Go To Link" не поможет, ибо нельзя выполнить эту команду для нескольких выделенных линков.
 
Последнее редактирование:

bossrus

шибка умный, аднака
Топикстартер
12 лет на форуме
Сообщения
447
Реакции
74
На одной и той же странице?
если вы намекаете на "Copy Info for Selected Links", то тоже вариант. но работает только если картинки строго на разных страницах. и я даже попробую копать в этом направлении.
но если на одной странице, и выделено несколько — пока нет способа попасть на нужные линки.
 

apg_777

15 лет на форуме
Сообщения
278
Реакции
81
На одной и той же странице?

Не по теме:
А почему нет? Регулярно такое бывает. Нужно, например, "вытащить" из картинки голову персонажа — травить с точностью до пикселя никто не будет, а так внизу полная картинка, откадрированная как надо, а сверху слой с головой. И блох ловить не надо.