2014-03-22 1 views
0

Я являюсь абсолютным новичком с JavaScript-скриптами для InDesign. создать объект так:Добавьте черную тень к изображению с помощью скриптов InDesign JavaScript

var rectbox = doc.pages.item(0).rectangles.add({geometricBounds:[20,20,70,120]}); 
var image = rectbox.place(File('/path/image.pdf')); 

и теперь я просто хочу, чтобы добавить черную тень.

Может кто-нибудь мне помочь?

Мне кажется, что невозможно найти пример. Это невероятно ...

Большое спасибо!

Roberto

ответ

0

Вот несколько примеров того, как реализовать тень.
http://forums.adobe.com/thread/778309
http://www.adobe.com/content/dam/Adobe/en/devnet/indesign/sdk/cs6/scripting/InDesign_ScriptingGuide_JS.pdf (стр. 57).

Попробуйте это:

var rectbox = doc.pages.item(0).rectangles.add({geometricBounds:[20,20,70,120]}); 
var image = rectbox.place(File('/path/image.pdf')); 
var myFillTransparencySettings1 = rectbox.fillTransparencySettings; 
myFillTransparencySettings1.dropShadowSettings.mode = ShadowMode.drop; 
myFillTransparencySettings1.dropShadowSettings.angle = 90; 
myFillTransparencySettings1.dropShadowSettings.xOffset = 0; 
myFillTransparencySettings1.dropShadowSettings.yOffset = 0; 
myFillTransparencySettings1.dropShadowSettings.size = 6; 
+0

Привет, Йохан! Я попытался с вашим предложением, но он не работает, как некоторые другие методы, которые я нашел в документации, которую вы мне показываете. Он не дает никаких ошибок, но просто не создает тени, не меняя параметров. Кажется, что-то не так ... Может быть, ошибка? –

+0

Возможно, вам нужно запустить скрипт, как-то его можно отладить. Попробуйте следующее: http://www.adobe.com/devnet/indesign/documentation.html – JohanVdR

0

Хорошо, вот решение: если мое окно содержит цвет заливки, хорошо, он работает; но, если поле содержит изображение или что-то еще, то мне нужно использовать transparencySettings вместо fillTransparencySettings:

var myTransparencySettings = rectbox.transparencySettings; 

Тогда

var rectbox = doc.pages.item(0).rectangles.add({geometricBounds:[20,20,70,120]}); 
var image = rectbox.place(File('/path/image.pdf')); 
var myTS = rectbox.transparencySettings; 
myTS.dropShadowSettings.mode = ShadowMode.drop; 
... 

работает отлично!

Большое спасибо Йохану, однако!