2012-04-12 15 views
5

Indesign Server(CS3)で使用するJavascriptスクリプトを作成しています。Indesign Server Scripting Textarea.Contents

文書内のすべてのテキストエリアを見つけようとしていて、その内容を見つけようとしています。

Adob​​eが提供する機能を使用して、すべてのテキストエリアを簡単にループすることができます。

しかし、私はTextAreaのコンテンツを取得しようとすると、そのテキストエリア内に表示されるコンテンツのみを取得し、出力ポートテキストは取得しません。言い換えれば

document.TextAreas[0].contents 

InDesignドキュメントは、より多くのテキストがあることを示す、小さなプラス記号とテキストエリアが含まれていますが、それは合わなかった場合は、その後、私のスクリプトは、隠されたテキストを返しません。

または、別の言葉を再度入力してください。 'textarea'の 'overflows'プロパティがfalseのときにコンテンツ全体を取得できますか?

全コード:私はテキストエリアの完全な内容を読むことができますどのように

function FindAllTextBoxes(){ 
     var alertMessage; 
     for (var myCounter = myDoc.textFrames.length-1; myCounter >= 0; myCounter--) { 
     var myTextFrame = myDoc.textFrames[myCounter]; 
      alertMessage += "\nTextbox content: " + myTextFrame.contents; 
      alertMessage += "\nOverflow:" + myTextFrame.overflows; 
      alert(alertMessage); 
     } 
} 

+0

実際には私が探していた答えではありませんでしたが、回避策が見つかりました。基本的には、コンテンツを読む前に、フォントサイズを本当に小さいもの(1pt)に変更します。 'myTextFrame.paragraphs [0] .pointSize = 1; ' –

答えて

3

少し遅れましたが、ちょうどこれを見つけました。これは、InDesign CS5でテストされる - 次の行がTextFrameからオーバーフローテキストのすべてを取得します:

var content = myTextFrame.parentStory.contents; 

ホープ、このことができます!