1. Пользоваться форумом на планшетах и телефонах стало удобнее благодаря Tapatalk

путь до файла в Photoshop

Тема в разделе "Adobe Photoshop", создана пользователем -, 10 ноя 2005.

Модераторы: Mic Nau
  1. Guest

    как сделать так, чтобы где нить в углу страницы показывался путь до файла, и чтобы этот путь изменялся при перемещении файла; мб кто юзал это ? подскажите плиз
     
  2. monter

    monter Знаток

    С нами с:
    25.04.2005
    Сообщения:
    1.299
    Симпатии:
    0
    Баллы:
    33
    Наводишь мышкой на заголовок окна документа и через секунду появится путь до твоего файла.
     
  3. Guest

    не, нада чтобы он стоял в углу страницы, типа надпись и чтобы она изменялась при перемещении файла
     
  4. Guest

    В самом документе что ли?
     
  5. Guest

    да, именно в документе, в картинке типа
     
  6. monter

    monter Знаток

    С нами с:
    25.04.2005
    Сообщения:
    1.299
    Симпатии:
    0
    Баллы:
    33
    Это не реально.
     
  7. Guest

    Нет, скриптом можно запросто, но автоматически... только если задействовать script event manager.

    То есть, у вас есть скрипт который вставляет в документ текстовый объект с текстом в виде полного пути данного файла. А чтобы после записи файла по другому пути текст менялся, нужно добавить выполнение этого скрипта в Event Manager'е на событие Save.
     
  8. Guest

    Все работает. Вот простейший скрипт:

    Код:
    var strtRulerUnits = app.preferences.rulerUnits;
    var strtTypeUnits = app.preferences.typeUnits;
    app.preferences.rulerUnits = Units.CM;
    app.preferences.typeUnits = TypeUnits.POINTS;
    
    var docRef = app.activeDocument;
    var s = "FullDocumentPath";
    // suppress all dialogs
    app.displayDialogs = DialogModes.NO;
    
    var textColor = new SolidColor;
    textColor.rgb.red = 255;
    textColor.rgb.green = 255;
    textColor.rgb.blue = 255;
    
    try {
    	var newTextLayer = docRef.layers[s];
    }
    catch (e if e = 1302) {
    	var newTextLayer = docRef.artLayers.add();
    	newTextLayer.kind = LayerKind.TEXT;
    	newTextLayer.textItem.position = Array(0, docRef.height);
    	newTextLayer.textItem.size = 10;
    	newTextLayer.textItem.color = textColor;
    	newTextLayer.name = s;
    }
    
    newTextLayer.textItem.contents = docRef.fullName.toString();
    
    app.preferences.rulerUnits = strtRulerUnits;
    app.preferences.typeUnits = strtTypeUnits;
    docRef = null;
    textColor = null;
    newTextLayer = null;
    
     
  9. Guest

    не могу найти event manager, не подскажешь где ?
    такую же фигню нада в coreldraw сделать, не знаешь случаем как там это осуществить ?)
     
  10. Guest

    Скопируйте код скрипта, создайте новый в пресетах (так легче будет искать), откройте его и вставьте код. Сохраните, закройте.

    File > Scripts > Script Events Manager.

    Выберите свой скрипт из списка или нажмите Browse. Назначьте ему событие Save Document. Нажмите Add. Готово.

    Теперь *ВСЕ* документы которые вы будете сохранять где-нибудь, получат новый текстовой слой, строку 10 пт, белого цвета, слева внизу, с текстом пути данного документа.
     
  11. monter

    monter Знаток

    С нами с:
    25.04.2005
    Сообщения:
    1.299
    Симпатии:
    0
    Баллы:
    33
    alert Написал:
    -------------------------------------------------------
    > и чтобы этот путь
    > изменялся при перемещении файла;

    с PSD такое прокатит, а вот если я работаю в JPG, раз сохранил, два сохранил и получай кашу. Как выход нужно добавить полосочку в 10пт под текстом в размер открытого документа, чтоб эта полоска забивала предыдущую инфу.

    ЗЫ
    Script Events Manager появился только в CS2, в ранних версиях ловить нефиг, только в ручную скрипт запускать.
     
  12. Guest

    а как его вручную запустить ?
     
  13. Guest

    >такую же фигню нада в coreldraw сделать, не знаешь случаем как там это осуществить ?


    File>Print>Prepress>Print file information, Position within page

     
  14. Guest

    Я вообще не понял, в JPEG же нельзя сохранить файл со слоями, подразумевалось что сохранять будет все в PSD.

    Неправильное условие. Если вам нужно в финале добавить в документ информацию о его пути, в изображение, то и запускайте этот скрипт вручную - File > Scripts > ... (or Browse), если ФШ младше ЦС2, то File > Automate > Scripts ... (or Browse). Если скрипт лежит в ...\Presets\Scripts, то он после запуска Шопа будет виден в меню, а если нет, или не виден - командой Browse вы можете вызвать диалог открытия файла и указать где этот скрипт находится.

    Чтобы быстро его запускать - запишите вызов скрипта в экшн, экшну назначьте шорткат.

    Кстати, когда начнете пользоваться, если, то увидите что путь пишется маковецкий, как на Маках, можно в виндозный сконвертить. Ксли надо - скажете. Прямо в коде скрипта вы можете изменить размер текста в пунктах: newTextLayer.textItem.size = 10; - меняйте только данные, 10 на 20, и тп.; и цвет - там ясно где.

    С ФШ 7.0.1 шел скрипт AddTimeStamp.js - он тоже самое делал, только добавлял не путь, а дату-время.
     
  15. Guest

    >Я вообще не понял, в JPEG же нельзя сохранить файл со слоями, подразумевалось что сохранять будет все в PSD.

    Где в просьбе ниже написано, что надо в PSD? Был дополнительный вопрос и был дополнительный ответ.

    >нада в coreldraw сделать, не знаешь случаем как там это осуществить ?


     
  16. Guest

    Надо быть не ниже, а выше. Это был ответ monter'у, вы же не писали о жпегах, так что ж вы волнуетесь?

    В жпег при завязке на событие Save сохранить будет нельзя, потому что по этому событию в документ даже без слоев будет добавлен один - нужный текст, а затем уже появится диалог Save As... в котором JPEG'а не будет.
     
  17. Guest

    спасибо за все ) оч выручили. нужны имено psd файлы так что все в порядке. только вот запускаю я файл->скрипт->типа нужный скрипт) и на psd файле ничего не появляется
     
  18. Guest

    А какой ФШ у вас? Я тестировал на ЦС2. Дело в том что скриптинг разивается от версии к версии и может быть так, что какой-то скрипт написанный в старшей версии в младшей не будет работать или будет глючить.

    Кроме того, вы можете просто не увидеть этот текст, он белый и на 72 ппи очень мелкий получается если картинка велика. Поэтому посмотрите - появляется ли новый слой с именем FullDocumentPath или нет.

    Скрипт использует трюк - вместо того чтобы искать слой с данным именем, и если найдено то использовать, он тупо пытается присвоить объектной переменной объект с данным именем. Что, если такого слоя нет, приводит к ошибке. Которая и перехватывается по ее номеру и в перехвате тогда создается новый слой и назначаются ему все нужные параметры.

    Это сделано для того, чтобы вы могли просто отредактировать этот слой в документе, скажем изменить кегль, гарнитуру, цвет и расположение, и чтобы это все скрипт не менял, а менял чтобы только содержание текста - новый путь к документу. Поэтому если такой слой есть, то скрипт меняет только его текст, а если нет - создает новый с заданными параметрами и текстом.

    Так вот, я точно не знаю, но кажется в скриптинге 7-го ФШ конструкция try > catch не была предусмотрена. Кроме того, проверьте не внесли ли вы ошибок в код скрипта при его копировании и вставке в новый *.js (*jsx) док.
     
  19. monter

    monter Знаток

    С нами с:
    25.04.2005
    Сообщения:
    1.299
    Симпатии:
    0
    Баллы:
    33
    я проверял и в CS и в CS2 везде работает.
     
  20. Guest

    ФШ 8 ЦС1 )слой FullDocumentPath появляется
    newTextLayer.textItem.color = textColor; вот это значит какой цвет будет ? т е заместо textColor цвет писать ?
     
Модераторы: Mic Nau

Поделиться этой страницей