2012-05-17 10 views
3

我正在製作ExtendScript腳本,我們使用它來準備InDesign文件以導出到XHTML。基本上,我們只是出去轉轉應用,我們需要他們的字符樣式(看看這個簡單的例子):我可以將多個值分配給InDesign DOM的Text對象的appliedCharacterStyle屬性嗎?

app.activeDocument.findGrep()[0].appliedCharacterStyle = "customStyle"; 

當我們導出結果使用InDesign的導出到XHTML功能,XHTML,我們得到如下這個:

<span class="customStyle">I</span> 

這正是我們想要的。現在出現的問題是,我們有時需要許多不同樣式應用到單個字符,所以我們最終做這樣的事情:

var t = app.activeDocument.findGrep()[0]; 
t.appliedCharacterStyle = "customStyle1"; 
t.appliedCharacterStyle = "customStyle2"; 

顯然,customStyle2覆蓋customStyle1,這違背了目的。有沒有辦法解決?

注:我試着用applyCharacterStyle代替,但是該方法沒有考慮字符串作爲參數,只CharacterStyle對象。

回答

1

「customStyle」只是一個CSS類或保存的樣式的名稱?我真的不使用InDesign的,所以這是炒作,但它看起來像你可以修改CharacterStyle對象的各個屬性,如

var myStyle = new CharacterStyle(); 
myStyle.fillColor = "blue"; 
myStyle.fontStyle = "verdana"; 
... 

或者東西,那麼你應該能夠應用它像這樣

t.applyCharacterStyle(myStyle); 

這只是一個基於我對extendcript和photoshop的經驗的有根據的猜測,對不起,如果它離開基地。

+0

你說的對,'applyCharacterStyle'接受具有各種屬性的'CharacterStyle'對象,包括'fillColor','fontStyle'等。但它也可以接收一個'String',最終成爲一個css類。第二個選項就是我需要的。事實上,當我們想要修改字體顏色時,例如,修改從InDesign文檔中提取文本的腳本,它會更加註重更改樣式表...... – Shawn

相關問題