見出し画像

「Pages+AppleScriptで本を作ろう」を書き始めた⑩

完成を前にして、ちょっと足踏み状態が続いていますが、必要な道具はそろえておかなければなりません。オマケに収録するScriptを追加して書いてみました。


指定したPages書類のフォント情報(PostScript名)を抽出する

まずは、ダイアログで選択したPages書類からフォント情報を抽出するAppleScriptを用意しました。本書についてくるオマケです(以下同様)。

ここでは、フォント情報関係のものだけを紹介しているだけで、これがすべてではありません。

まずは、1つのPages書類について処理を行います。難しかったり高度な機能を提供するScriptも、出だしはごくごく簡単な内容にすぎません。

指定したPages書類のフォント情報(日本語ローカライズ名)を抽出する

OS側が扱うPostScript名だとわかりにくいので、日本語環境向けにローカライズしたフォント名を取得するようにしたAppleScriptです。最近のAppleScriptでは、Cocoaの機能を呼び出して、このような処理を簡単に行えるようになっています。

指定フォルダ以下のすべてのPages書類のフォント情報を抽出する

このあたりから、ちょっとレベルが上がってきます。指定フォルダ以下のすべてのPages書類をSpotlight検索でみつけて、その書類からフォント情報を取得します。

取得した情報はユニーク化したうえで、ソート(ならべかえ)しています。

指定フォルダ以下のすべてのPages書類の使用フォント数を表示する

指定フォルダ以下のすべてのPages書類をSpotlight検索でみつけて、その書類からフォント情報を取得します。

本AppleScriptでは、Pages書類あたりフォントを何種類ぐらい指定しているかを集計して、ダイアログで表示します。

ダイアログ表示部分は「display table by list」という自作ライブラリを使っており、1命令で表つきのダイアログを表示します。

set aRes to (display table by list allFonts main message "使用フォント数一覧" sub message (("指定フォルダ以下の各Pages書類で使用中のフォント数を表示(合計フォント数:" & (length of c3List) as string) & ")") size {1200, 600} labels fLabels)

各Pages書類の使用フォント数を数字と文字グラフで表示しており、けっこういい感じにできました。


この記事が気に入ったらサポートをしてみませんか?