[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
(DTPtechNote:811) クリップボードからクォークへ
はじめまして、まだまだ初心者ですが、よろしくお願いします。
クリップボードから一行ずつとりだして、ワードごとに区切って、フォントと級数を個々に指定するスクリプトをかんがえたのですが、
display dialog " 指定外ネームのフォント" default answer "フォントをいれてください"
set Dans to text returned of result
display dialog " 指定外ネームのQ数は" default answer "級数をいれてください"
set Dansf to text returned of result
set allTxt to (the clipboard) as text --- クリップボードの中身を取得
set lastDelimit to AppleScript's text item delimiters --- デリミタ(区切り文字)をとっておく
set AppleScript's text item delimiters to ASCII character (13)
set allTxt to every text item of allTxt
set AppleScript's text item delimiters to lastDelimit --- デリミタ(区切り文字)を元に戻す
tell application "QuarkXPress召
activate
make document at beginning
set i to 1 --ス魘
set max to count item of allTxt --アイテムの数を数える
repeat
set the clipboard to item i of allTxt as text --1つずつクリップボードへ
tell document 1
tell page 1
make text box at beginning ツ
with properties {bounds:{"10mm", "10mm", "20mm", "100mm"}}
tell text box 1
set text 1 to the clipboard
end tell
end tell
end tell
set xxx to (the clipboard) as text
set x to every word of xxx
set xx to 0
repeat with obj in x
set xx to xx + 1
tell word xx of story 1 of text box 1 of page 1 of document 1
display dialog (word 1) & " のQ数は" default answer Dansf
set ANS to text returned of result
set size to ANS
display dialog (word 1) & " のフォントは" default answer Dans
set AN to text returned of result
set font to AN
end tell
end repeat
set i to i + 1
if i > max then exit repeat --アイテム数だけ繰り返したら抜ける
end repeat
beep
display dialog "終わりました。"
end tell
この場合にクリップボードに"A-CID 新ゴ L"
という単語があればワードごとわけると
"A-CID " "新" "ゴ" "L" となるんですが、
上記のスクリプトで動かすと"A-" でひとつとってしまい
repeat with で個数分うごかしているのに最後の"L" がのまえでおわってしまいます。
描き方が悪いのか?それともしょうがないのか?対策があれば教えてください。よろしくおねがいします