InDesignのスクリプトで、なかなか解決方法が見つからずに、悩んでいますので、もし、よい方法をご存じのかたがいましたら、アドバイスをよろしくお願いいたします。 InDesignはCS2とCS3で作業しています。 今回の質問としましては、スクリプト言語はAppleScript以外であれば、問いませんので、よろしくお願いいたします。 文字列としてたとえば1000文字がテキストフレームにあるとします。 その文字列を1~50文字までが90%の長体として、51~1000文字までを80%にしないといけないと仮定した場合にすべてのCharacterをLoopしながら属性を与えていくのはできるのですが、それだと、あまりにも処理時間がかかってしまっています。 フレームの数、文字列の数もそうとうな場合に上記のようなLoop以外の方法がありますと、とても助かります。 1~50文字までのCharacterと、51~1000文字までのCharacterを、それぞれ一気に処理することはできるのでしょうか? AppleScriptの参照のように set properties of text from character A to character B to {color:RED,size:S} などのように ●●~●●の範囲の属性を一度に与えるというやり方をご存じのかた、アドバイスよろしくお願いいたします。 もっと...
教えてください。現在、ACCESS VBAから、インデザインを作成するプログラムを作っています。 Dim indCol As InDesign.Column Dim indTbl As InDesign.Table Dim indCell As InDesign.Cell Dim indChr As InDesign.Character Dim fntObj As Object Dim intChr As Integer Set indTbl = indTxtFrm.Tables(1) Set indCell = indTbl.Rows(1).Cells(indTbl.Rows(1).Columns.Count - 2) '範囲を選択する For intChr = 1 To indCell.Characters.Count indCell.Characters(intcht).AppliedFont = fntObj Next intChr indTbl.Columns(indTbl.Columns.Count - 2).Select Call indApp.Select(indTbl.Columns(indTbl.Columns.Count), idAddTo) 'スマートスタイルを適用する Set indLib = indApp.Libraries.Item("ライブラリ名") Set indAst = indLib.Assets.Item("スマートスタイルB") Set indCell = indDoc.PageItems(1) '指定したスマートスタイルをテキストフレームに適用する indAst.ApplySmartStyle Array(indApp.Selection) これを実行した場合、範囲を選択しているにもかかわらず、選択範囲以外のすべてのフレームにスマートスタイルが適用されてしまいます。 '指定したスマートスタイルをテキストフレームに適用する indAst.ApplySmartStyle Array(indApp.Selection) ここで適用する際に、ほかの適用の仕方があるのでしょうか? 作業環境は「InDesignCS」「Smart Style3」です。 よろしくお願致します。 もっと...