[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

(DTPtechNote:1722) Re: [AppleScript][InDesign CS3]ページ番号



イケッチさん、反応ありがとうございます。
セクションの位置から計算する方法ですね。速いです。

あれからちょっと考えたんですが、一時的にセクションのpage number styleをarabicに変えてすぐに復帰させる方法もありますね。

to get_page_num(my_obj)
	tell application "Adobe InDesign CS3"
		tell document 1
			set current_page to parent of my_obj --アンカー以外のpage itemを想定
			tell applied section of current_page
				if page number style is not arabic then
					set old_number_style to page number style --現在のスタイルを保存
					if not (old_number_style = "(fullwidth) 1,2,3,4..." or old_number_style = "01,02,03...") then --バグ処理?
						set page number style to arabic --強制的にアラビア数字に
						set page_num to name of current_page
						set page number style to old_number_style --スタイル復帰
					end if
				else
					set page_num to name of current_page
				end if
			end tell
			return {page_num, name of current_page}
		end tell
	end tell
end get_page_num


tell application "Adobe InDesign CS3"
	tell document 1
		set my_obj to object reference of selection
		set {current_page_num, current_page_name} to my get_page_num(my_obj)
	end tell
end tell


だがしかし! 
全角数字"(fullwidth) 1,2,3,4..."とゼロ付き2桁"01,02,03..."で戻せません。バグくさい。
ここだけJavaScriptでデジマル指定ならうまくいくかもしれない。
なんて罠が待っているのでした。あはは。

しかしなんですね、スクリプト書く人でなければ、どういう意味なのかわけわかめなんでしょうね。