2010-01-28 112 views
0

我首先着手使用XSLT,然後使用PHP。現在我必須有它一個去與排版腳本(JavaScript的可能)Indesign腳本通過添加標籤創建更深層次的結構

我的問題是,我有沒有結構的InDesign中的文件(沒有被標記,但凡事都有一個段落樣式)

笏我要做的就是 1)廣告代碼,根據自己的風格 2)加入父元素的標籤

一個例子深化結構段落:

這樣的文字:

Titel 1 (style = title1) 
Titel 2 (style = title2) 
    some text (style = text1) 
    listitem 1 (style = listitem) 
    listitem 2 (style = listitem) 

有可能成爲(出口到XML)

<GR.SEQ level="1"> 
<TITLE> 
    <TI> 
     <HT> 
      Titel 1 
     </HT> 
    </TI> 
</TITLE> 

    <GR.SEQ level="2"> 
     <TITLE> 
      <TI> 
       <HT> 
        Titel 2 
       </HT> 
      </TI> 
     </TITLE> 
     <P> 
      some text 
     </P> 
     <LIST> 
      <ITEM> 
       <ITEM.CONT> 
        listitem 1 
       </ITEM.CONT> 
      </ITEM> 
      <ITEM> 
       <ITEM.CONT> 
        listitem 2 
       </ITEM.CONT> 
      </ITEM> 
     </LIST> 
    </GR> 
</GR> 

任何幫助表示讚賞!一個這樣做的代碼示例將會非常棒,但向正確方向的推動也非常受歡迎。

我會很高興已經當我可以改變這一點:

Titel 1 

這個

<TITLE> 
    <TI> 
     <HT> 
      Titel 1 
     </HT> 
    </TI> 
</TITLE> 

回答

1

首先,你必須定義一個XMLExportMap,對象這樣每個段落/標籤:

<yourDoc>.xmlExportMaps.add(<yourParagraphStyle>, <yourParagraphStyle>.name); 

(而是認爲您的樣式名稱中沒有空格)

當你定義的所有,然後調用下面的方法:

<yourDoc>.mapStylesToXMLTags(); 

結果應該有一個平坦的XML結構的根元素然後

然後:有一些能力在InDesign和Javascript中使用Xpath,但在我看來很難使用,實施起來也很少。

所以,我很喜歡導出平面XML結構並應用XSL樣式表來獲得深化的結構。

希望可以幫到