InDesignで必要なフォントが存在するか調べる
ドキュメントに必要なフォントがインストールされているか調べます。
自動組版プログラムを配布するなど、スクリプトの実行環境が不明なときに便利です。
動作環境・注意
InDesign CS 以降で動作すると思います。
フォントの数が多いと非常に時間が掛かります(ある物件で作成したのですが、結局組み込むのをあきらめました)。従って、基本的にはパソコンをあまり理解してない人向けに実行してもらう類のものです。
使用方法
基本的には他のスクリプトに組み込んで使用します。単独で使用しても構いませんが。
ソース
Set app = CreateObject("InDesign.Application.CS")
If font_check(app) = False Then
MsgBox "必要なフォントがありませんでした。" & vbLf & "InDesignを終了します。"
app.Quit
End If
Function font_check(app)
Dim i, j, k 'As Integer
Dim psname(6) 'As String
psname(0) = "RosewoodStd-Regular"
psname(1) = "SeuratPro-DB"
psname(2) = "SeuratPro-B"
psname(3) = "RodinPro-M"
psname(4) = "RodinPro-DB"
psname(5) = "RodinPro-B"
psname(6) = "RodinPro-EB"
k = -1
For i = 1 To app.Fonts.Count
For j = 0 To UBound(psname)
If app.Fonts(i).PostScriptName = psname(j) Then
k = k + 1
Exit For
End If
Next 'j
If k = UBound(psname) Then
font_check = True
Exit Function
End If
Next 'i
font_check = False
End Function
|
[HOME]