FC2カウンター
ブログ内検索
プロフィール

流星光輝

Author:流星光輝
InDesignを仕事で使っています。
まんどい作業をScriptで解決すべく
精進の日々を過ごしております。

カレンダー
06 | 2006/07 | 08
- - - - - - 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 - - - - -

スポンサーサイト
上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。
スポンサー広告  

InDesign・Dialogs制御用(補助Script)

私はDialogを相手にScriptingする時に夢中になってDestroyし忘れることがあります。
それで、自分用に作ったのですが、みなさんの役に立つかと思ったので公開します。


とりあえず説明。
1.Dialogsの個数を調べて逆順ループ
2.Destroyしつづける
です。Destroyしないで放置していたら30件超えていて、
慌てて下記のScriptで消したんですけどね。(^^;


'---------------------------------------------------------------
Dim MyInDesign ' As InDesign.Application
Set MyInDesign = CreateObject("InDesign.Application.CS")
'Withコーディングで高速化
With MyInDesign
  For DlgCnt=.Dialogs.Count to 1 Step -1
    .Dialogs(DlgCnt).Destroy
  Next 'DlgCnt
End With
Set MyInDesign = Nothing 'オブジェクトの解放処理です。
'---------------------------------------------------------------
※Destory→Destroy スペルミス修正…
 ちなみにScriptはVBS形式で保存し、使用して下さい。

スポンサーサイト
InDesign Scripting TB(0) CM(0) 

スクリプトから選択させるためには…

昨日から実験していたScriptからSelectさせる実験
14行目の数値を変更すると、別の線幅を処理することが出来ます。
DSW = 0.35 を DSW = 0.75 とかにすれば、0.75ptの線幅のページアイテムを選択することが出来ます。
でも1ptのモノは注意してください。不具合があると思います。
ちなみにアクティブスプレッドを対象にしていますので、処理前に対象のスプレッドに移動しておいて下さい。
※追記 ScriptはVBS形式で保存して使用して下さい。


'---------------------------------------------------------------
'指定した線幅のアイテムを選択するScript
Dim MyInDesign ' As InDesign.Application
Set MyInDesign = CreateObject("InDesign.Application.CS")
'デスクトップで使用するときはコメントアウト(Rem)を解除して下さい。
Rem Const idPoints = 2054188905 ' (&H7A706F69)
Rem Const idAddTo = 1633969202 ' (&H61646432)
'Withコーディングで高速化
With MyInDesign
  'ドキュメントの線幅単位を変更する前に記録します。
  PPP = .ActiveDocument.ViewPreferences.LineMeasurementUnits
  'ドキュメントの線幅単位を「ポイント」に設定します。
  .ActiveDocument.ViewPreferences.LineMeasurementUnits = idPoints
  '探したい線幅をptで指定します。
  DSW = 0.35  '現在はオモテケイを設定しています。
  For ActPgItmCnt = 1 To .ActiveWindow.ActivePage.PageItems.Count
    '線幅の取得
    SW = .ActiveWindow.ActivePage.PageItems(ActPgItmCnt).StrokeWeight
    '線幅チェック
    If SW = DSW Then
      '同じ線幅の場合には選択範囲に追加します。
      .Select .ActiveWindow.ActivePage.PageItems(ActPgItmCnt), idAddTo
    End If
  Next 'ActPgItmCnt
  '記録しておいた線幅単位を元に戻します。
  .ActiveDocument.ViewPreferences.LineMeasurementUnits = PPP
End With
Set MyInDesign = Nothing 'オブジェクトの解放処理です。
'---------------------------------------------------------------

InDesign Scripting TB(0) CM(0) 

InDelimiterVersion1.1.1 公開予定...

ちょっと、時間が経ってしまって申し訳ありません。
Version1.1.0で不具合の出た、「ShiftJIS」関係の改修を行った
Version1.1.1を公開しましたので、お知らせします。


前回ご指摘を頂いたSHIFTJISテキストの取り扱いについて重点的に補修しました。
それに伴い、Version1.1.0で機能を封印した「追加・差替・置換」の機能を
SHIFTJISテキストを読み込んだ時だけ動作するように修正しました。
あと、マニュアルを読みやすくしたつもりです。


※今頃思う、マニュアルで伝えきれなかった点
ドキュメントを対象として置換する機能が、
範囲を選択してから「全てを置換」すると、
選択範囲内で置換する機能として変貌しますので、
ケースバイケースで使い分けて頂けたらと思います。

InDesign Scripting TB(1) CM(0) 


PREV PAGE   TOP   NEXT PAGE

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。