<JOB>
<COMMENT>
************************************************************
TCPDF にフォント埋め込み型としてフリーフォントをインストール
■ 1) フリーフォントを選択する
■ 2) TCPDF に登録する
■ 使用方法
1) strTCPDF に、PHP で使用する時の TCPDF のパスをセット
2) strPHP に php.exe があるパスをセット
3) このスクリプトをエクスプローラから「開く」
4) フリーフォント( ????????.ttf ) を選択
■ 著作権その他
このプログラムはフリーです。どうぞ自由に御使用ください。
著作権は作者である私(lightbox)が保有しています。
また、本ソフトを運用した結果については、作者は一切責任を
負えせんのでご了承ください。
************************************************************
</COMMENT>
<COMMENT>
************************************************************
外部スクリプト定義
************************************************************
</COMMENT>
<SCRIPT
language="VBScript"
src="http://homepage2.nifty.com/lightbox/laylaClass.vbs">
</SCRIPT>
<SCRIPT language=VBScript>
' ***********************************************************
' 処理開始
' ***********************************************************
Call laylaFunctionTarget( "http://homepage2.nifty.com/lightbox/" )
Call laylaLoadFunction( "baseFunction.vbs" )
Call laylaLoadFunction( "toolFunction.vbs" )
' ***********************************************************
' 対象
' ***********************************************************
' PHP で使用する時のパス
strTCPDF = "C:\user\web\tcpdf_5_5_008"
' PHP のパス
strPHP = "C:\php"
' ***********************************************************
' Cscript.exe の実行
' ***********************************************************
Crun2 80
strValue = OpenFileName3
if strValue(0) = "" then
Wscript.Quit
end if
strFont = LCase(Fso.GetBaseName(strValue(0)))
strPath = Fso.GetParentFolderName(strValue(0))
if not OkCancel( strValue(0) & " を TCPDF に埋め込みフォントとして登録しますか?" ) then
Wscript.Quit
end if
' ***********************************************************
' UFM 作成
' ***********************************************************
Call CreateUfm( strValue(0), strPath, strFont )
' ***********************************************************
' 編集
' ***********************************************************
Call EditPhp( strFont )
' ***********************************************************
' 処理終了
' ***********************************************************
MsgOk( "処理が終了しました " )
' ***********************************************************
' インストール用外部実行関数
' ***********************************************************
Function CreateUfm( str1, str2, str3 )
strCommand = Dd(strTCPDF & "\tcpdf\fonts\utils\ttf2ufm.exe") & " -a -F " & Dd(str1)
RunSync(strCommand)
strCommand = Dd(strPHP & "\php.exe") & " " & Dd(strTCPDF & _
"\tcpdf\fonts\utils\makefont.php") & _
" " & Dd(str1) & _
" " & Dd(str2 & "\" & str3 & ".ufm")
RunSync(strCommand)
End Function
Function EditPhp( str )
Set regEx = New RegExp
regEx.Pattern = "TrueTypeUnicode"
regEx.IgnoreCase = True
strFontPhp = GetTextFile(str & ".php")
regEx.Pattern = "\$dw=.+?;"
strFontPhp = regEx.Replace(strFontPhp, "$dw=1000;")
regEx.Pattern = "\$enc=.+?;"
strFontPhp = regEx.Replace(strFontPhp, "$enc='UniJIS-UTF16-H';" & vbCrLf & _
"$cidinfo=array('Registry'=>'Adobe', 'Ordering'=>'Japan1','Supplement'=>5);" & vbCrLf & _
"include(dirname(__FILE__).'/uni2cid_aj16.php');" )
Call PutTextFile( str & ".php", strFontPhp )
Call Fso.CopyFile( str & ".php", strTCPDF & "\tcpdf\fonts\" & str & ".php", True )
Call Fso.CopyFile( str & ".ctg.z", strTCPDF & "\tcpdf\fonts\" & str & ".ctg.z", True )
Call Fso.CopyFile( str & ".z", strTCPDF & "\tcpdf\fonts\" & str & ".z", True )
End Function
</SCRIPT>
</JOB>