JavaScript и автоматизация

Статус
Закрыто для дальнейших ответов.

WereVarg

Участник
Сообщения
571
Реакции
0
Ответ: JavaScript и автоматизация

Возвращаясь к беседе о том как красиво скрипт размещает портреты. Вот 6 вариантов размещения уже реализованных в моем скрипте (6ой повторяет второй но по горизонтали).
В задумках сделать дополнительный скрипт, который соберет координаты кружочков разложенных пользователем по листу (на случай когда чистая математика не поможет).
Буду рад, если предложите интересные алгоритмические варианты расположения.

Кстати может кому пригодится как я обхожу глюки с юнитами.
Код:
var UnitY = Fon.height;
          UnitY.value = .....;
то есть сперва принудительно назначаю нечто идущее явно в юнитах, потом меняю ее значение (в формулах тоже приходится у некоторых вещей дописывать .value а то он легко складывает см-ы но не хочет умножать например.
 

Вложения

  • bl-w01.jpg
    bl-w01.jpg
    38.1 КБ · Просм.: 1 096
  • bl-w02.jpg
    bl-w02.jpg
    52.4 КБ · Просм.: 885
  • bl-w03.jpg
    bl-w03.jpg
    45.2 КБ · Просм.: 972
  • bl-w04.jpg
    bl-w04.jpg
    44.9 КБ · Просм.: 956

WereVarg

Участник
Сообщения
571
Реакции
0
Ответ: JavaScript и автоматизация

5ый и 6ой вариант
 

Вложения

  • bl-w05.jpg
    bl-w05.jpg
    45.1 КБ · Просм.: 1 016
  • bl-w06.jpg
    bl-w06.jpg
    51.3 КБ · Просм.: 976

xitrum

Участник
Сообщения
21
Реакции
0
Ответ: JavaScript и автоматизация

Люди - и - и, нельзя молчать про Яву
Подскажите пожалуйста фукции перевода типов переменных (напр: Integer To String ) и работы с файлами для сохранения настроек, скажем.
И вообще где есть полный (или неполный '))' список функций Ява
( про JavaScript Reference Guide.pdf и иже сними я знаю). Вы представить себе не можете насколько мне помогла функция substr.
 

WereVarg

Участник
Сообщения
571
Реакции
0
Ответ: JavaScript и автоматизация

я самоучка в этом деле но понял одно
в ява-скрипте типов как таковых нет
напишеь а=""+б будеттебе а строковое
напишешь а = 4 + б будет числовое

список функций я искал в сети на сайтах по яваскрипту для ХТМЛ

вот как я например работаю с файлами настроек в своем скрипте (пишу в папку юзера в май документс)

Код:
//функция пишет файл настроек
function writeDefCfg (setFile, Sets){
setFile.open(mode='w');
setFile.writeln ("DefFolder"+"="+Sets.DefFolder.toString());
setFile.writeln ("DefRes"+"="+Sets.DefRes.toString());
setFile.writeln ("DefSize"+"="+Sets.DefSize.toString());
setFile.writeln ("DefSpaceH"+"="+Sets.DefSpaceH.toString());
setFile.writeln ("DefSpaceV"+"="+Sets.DefSpaceV.toString());
setFile.writeln ("DefRow"+"="+Sets.DefRow.toString());
setFile.writeln ("DefSet"+"="+Sets.DefSet.toString());
setFile.close();
}


//функция читает файл настроек
function readDefCfg (setFile){
setFile.open(mode='r');
setFile.seek(10,1); var DefFolder = setFile.readln();
setFile.seek(7,1); var DefRes = setFile.readln();
setFile.seek(8,1); var DefSize = setFile.readln();
setFile.seek(10,1); var DefSpaceH = setFile.readln();
setFile.seek(10,1); var DefSpaceV = setFile.readln();
setFile.seek(7,1); var DefRow = setFile.readln();
setFile.seek(7,1); var DefSet = setFile.readln();
var settings = { DefFolder: DefFolder, DefRes: DefRes, DefSize: DefSize, DefSpaceH :DefSpaceH, DefSpaceV: DefSpaceV, DefRow: DefRow, DefSet: DefSet};
return settings;
setFile.close();
}


//Определяем дефолтные настройки
var DefSets = {DefFolder: 'D:', DefRes: 150, DefSize: 30, DefSpaceH : 40, DefSpaceV: 55, DefRow: 5, DefSet: 1};

//Если конфиг файл существует, то читаем его, если нет то записываем дефолтный (если вы сломаете конфиг, то лучше удалите целиком)

var cfgFile = new File ("~/vignette.cfg");
if (cfgFile.exists == true) {
var prefs = readDefCfg (cfgFile);
} else {writeDefCfg (cfgFile, DefSets);
	var prefs = readDefCfg (cfgFile);
}
 

xitrum

Участник
Сообщения
21
Реакции
0
Ответ: JavaScript и автоматизация

Ни фига себе, прям как в старом добром паскале
Спасибо WereVarg
 

xitrum

Участник
Сообщения
21
Реакции
0
Ответ: JavaScript и автоматизация

И еще вопрос тута в Java Script Reference копался так и не нашел как с Guide-ами работать, в общем нужно в картинке гуайды оставить (это руками), а затем при открытии картинки считать их (это уже в скрипте).
Мысля пришла вместо гуайдов юзать патхи но это неудобно.
Что по этому поводу вы думаете?
 

WereVarg

Участник
Сообщения
571
Реакции
0
Ответ: JavaScript и автоматизация

По моему с гвайдами там пока орудовать низя вообще
может какой слой использовать с прямоугольником

вам для чего?
 

xitrum

Участник
Сообщения
21
Реакции
0
Ответ: JavaScript и автоматизация

Транформ автоматом делать, а то два раза с фоткой копаться не очень-то.
Операция вполне автоматабельна, я так думаю.
Значит придется Path-ами.
Сотни, тысячи фоток примерно за день-два муторная работа :).
 

chesen

15 лет на форуме
Сообщения
546
Реакции
44
Ответ: JavaScript и автоматизация

Тема загибается...А поле непахано...
Господа дизайнеры,можно ли переделать ламеру стандартный PhCS-script "слои в файлы" таким образом,что бы скрипт брал последовательно не только один из слоёв, но и склеивал его с самым верхним и самым нижним?Не жадничайте,дайте на мыло хотя бы!
 

Den)

Участник
Сообщения
17
Реакции
0
Ответ: JavaScript и автоматизация

Ребята , может кто подскажет , как вывести текстовый слой из имени файла - для автоматизации сборки беёджев ? Или хатя б в какой "теме" искать Это ?
 

chesen

15 лет на форуме
Сообщения
546
Реакции
44
Ответ: JavaScript и автоматизация

Есть на Adobe Studio раздел скриптов-свободно лежит парочка-вставляют имя файла как текстовый слой.Бери и пользуйся!
 

chesen

15 лет на форуме
Сообщения
546
Реакции
44
Ответ: JavaScript и автоматизация

Имя файла-в текст,сохраните с расширением*.js
// this script is a variation of the script addTimeStamp.js that is installed with PH7

if ( documents.length > 0 )
{
var originalRulerUnits = preferences.rulerUnits;
preferences.rulerUnits = Units.PIXELS;

try
{
var docRef = activeDocument;

// Now create a text layer at the front
var myLayerRef = docRef.artLayers.add();
myLayerRef.kind = LayerKind.TEXT;
myLayerRef.name = "Filename";

var myTextRef = myLayerRef.textItem;
myTextRef.contents = docRef.name;

// off set the text to be in the top left corner
myTextRef.position = new Array( 12, 20 );
}
catch( e )
{
// An error occurred. Restore ruler units, then propagate the error back
// to the user
preferences.rulerUnits = originalRulerUnits;
throw e;
}

// Everything went Ok. Restore ruler units
preferences.rulerUnits = originalRulerUnits;
}
else
{
alert( "You must have a document open to add the filename!" );
}
 

DоK

Участник
Сообщения
50
Реакции
0
Ответ: JavaScript и автоматизация

Создал несколько прог под Photoshop автоматизирующие работу.
Есть похожая на скрипт WereVarg(по расстановке виньеток),ток она не расставляет, а создает направляющие по которым потом при помощи привязки расскидывать овальчики.Пока возможны 3 расстановки
da--master.narod.ru
 

chesen

15 лет на форуме
Сообщения
546
Реакции
44
Ответ: JavaScript и автоматизация

если не жалко,то про гиды можно подробнее...
 

Dorin

Участник
Сообщения
2
Реакции
0
Ответ: JavaScript и автоматизация

Может кто подскажет, как из скрипта поменять параметры страницы (page setup), ну то есть открываем фотку авто левел, шарпим, ресайзим, обрезаем, выбираем размер печати !!!!(вот тут и облом), отправляем на печать, открываем след. и т.д.
 

DоK

Участник
Сообщения
50
Реакции
0
Ответ: JavaScript и автоматизация

Может кто подскажет, как из скрипта поменять параметры страницы (page setup), ну то есть открываем фотку авто левел, шарпим, ресайзим, обрезаем, выбираем размер печати !!!!(вот тут и облом), отправляем на печать, открываем след. и т.д.
Если каждый раз параметры разные, то советую вставить действие
 

Dorin

Участник
Сообщения
2
Реакции
0
Ответ: JavaScript и автоматизация

DоK сказал(а):
Если каждый раз параметры разные, то советую вставить действие

В смысле действие? Action? Можно по подробнее? Если просто сделать экшен то записывать, то он записывает, а вот параметры страницы не меняет.
 

DоK

Участник
Сообщения
50
Реакции
0
Ответ: JavaScript и автоматизация

В смысле действие? Action? Можно по подробнее? Если просто сделать экшен то записывать, то он записывает, а вот параметры страницы не меняет.
Рядом с action есть квадратик(toggle dialog) если его включить, то действие будет останавливаться и вы сможете менять параметры
 

DоK

Участник
Сообщения
50
Реакции
0
Ответ: JavaScript и автоматизация

Также в действие можно вставить вызов меню-Insert Menu Item
 
Статус
Закрыто для дальнейших ответов.