[lang_uk]Кілька тижнів тому вирішив зайнятись вивченням можливостей мови C# та бібліотек Adobe Photoshop з метою автоматизації обробки зображень. Поставив собі за завдання написати програму, яка буде зберігати кожен із шарів psd-файлу в окремий png-файл, при чому обрізати прозорі частини країв і зберігати інформацію про те, скільки було обрізано. Все це в мене вийшло, але у мови C# при роботі з бібліотекою Photoshop Object Library є один суттєвий недолік – для кожної версії Ps потрібна своя бібліотека, що призводить до непрогнозованості поведінки програми на інших комп’ютерах. Але оскільки алгоритм все ж було створено, то я вирішив перегнати його в JavaScript і створити сценарій обробки в більш універсальному вигляді. Щоправда у далі наведеному прикладі не реалізовані всі вищеописані функції, а тільки збереження. Якщо почитати офіційну документацію Adobe для створення скриптів, то все інше можна легко дописати власноруч.[/lang_uk]
[lang_ru]Несколько недель назад решил заняться изучением возможностей языка C# и библиотек Adobe Photoshop с целью автоматизации обработки изображений. Поставил себе за задачу написать программу, которая будет сохранять каждый из слоев psd-файла в отдельный png-файл, при чем обрезать прозрачные части краев ы сохранять информацию о том, сколько было обрезано. Все это у меня получилось, но у языка C# при роботе с библиотекой Photoshop Object Library есть один существенный недостаток – для каждой версии Ps нужна своя библиотека, что приводит к непрогнозируемости поведения программы на других компьютерах, но так как алгоритм все же был создан, то я решил его перегнать в JavaScript и создать сценарий обработки в более универсальной форме. Правда в ниже приведенном примере не реализованы все вышеописанные функции, а только сохранение. Если почитать официальную документацию Adobe для создания скриптов, то все остальное можно легко дописать самому.[/lang_ru]
[lang_en]Some weeks ago I decided to learn about ability C# language and Adobe Photoshop libraries to automate images handling. I set myself the task create the program that will can save each layer of psd-file in separate png-file, trim the transparent area and save data about trimming. The task was done, but I understood that C# realization have one big disadvantage – for different versions of Ps you must use different libaries as reference in C# project. It complicates using the program on other computers. But I had algorithm and I decided realize it on JavaScript language and use as “Action” in Photoshop. Below you can see some code. It no realize all functions – only saving. If you will read Photoshop JavaScript Reference, you will can add needed functions by yourself.[/lang_en]