2014年09月28日


現在TTCの分割は、UniteTTC / => 旧タイトル : BREAKTTC.EXE をダウンロードして .TTC を .TTF に分解する自動スクリプト

現在使えるのは、UniteTTC です
UniteTTC は、ごく普通に TTC を分割してくれます。実際に動作確認済みです。

▼ 以下 Readme より
コマンドラインから、以下のようにして下さい。

UniteTTC From.TTC

なお、TTC化されたTTFフォントは、元のファイル名が不明なため、TTCフォントの拡張子以外の部分に連番001、002、003、……を付加し、拡張子をTTFに変えたものが使われます。上記の例ですと、From001.TTF、From002.TTF、From003.TTF……という名前で出力されます。適当な名前にリネームしてお使い下さい。
BREAKTTC.EXE は今でもダウンロード可能です エクセルソフトでも、http://www.xlsoft.com/jp/products/indigorose/autoplay_readme_02.html でダウンロードリンクを用意していますが、よく解らない海外サイトへ移動します。しかし、Internet Archive で、http://www.xlsoft.com/jp/products/indigorose/autoplay_readme_02.html を検索すると、古い日時でダウンロード可能なページがあります。あるいは、http://www.xlsoft.com/jp/products/indigorose/files/ttsdk.zip を同じくアーカイブから検索しても同じものがダウンロードできました。 ▼ 以下、古い情報--------------------------------------------------------------------- 手作業で行う方法は以前以下に書いたのですが、とても処理が限定的なので その為だけに時間を使うのももったい無いので、スクリプトを作成しました msgothic.ttc を分解し、3種類の ttf を作成して利用する方法 BREAKTTC.EXE は、昔 Microsoft で配布されていたプログラムらしいのですが、 現在はエクセルソフトさんからダウンロードできます。エクセルソフトさんは、 PrimoPDF でお世話になっていますし、このリンクも長い間有効なので自動ダウン ロードさせてもらっています。仮に、エクセルソフトさんのほうで配布されなく なった場合、代替えとして UniteTTC というソフトが同様の機能を持つ事を 確認しています。 ( そちらで結合もできますし、フォントの作者さんなので間違い無いと思います ) ※ UniteTTC の場合は、元のファイルがある場所に分解してしまうのが少しやっかいです
<JOB>
<COMMENT>
************************************************************
■ BREAKTTC.EXE をダウンロードして .TTC を 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" )


' ***********************************************************
' 対象
' ***********************************************************
strTarget = "ttsdk.zip"
strTTCTarget = "MSGOTHIC.TTC"


' ***********************************************************
' Cscript.exe の実行
' ***********************************************************
Crun2 80

if not OkCancel( "BREAKTTC.EXE をダウンロードして .TTC を TTF に分解する処理を実行してもよろしいですか?" ) then
	Wscript.Quit
end if

' ***********************************************************
' ダウンロードする URL
' ***********************************************************
strDownloadPlace = "http://www.xlsoft.com/jp/products/indigorose/files/" & strTarget
ret = HTTPDownload( strDownloadPlace, TempDir & "\" & strTarget )
if not ret then
	Wscript.Echo ErrorMessage
	Wscript.Quit
end if

Wscript.Echo strDownloadPlace & " をダウンロードしました"

' ***********************************************************
' 解凍ソフトのダウンロード
' ***********************************************************
strDownloadPlace = "http://homepage2.nifty.com/lightbox/Lhasa.exe"
ret = HTTPDownload( strDownloadPlace, TempDir & "\Lhasa.exe" )
if not ret then
	Wscript.Echo ErrorMessage
	Wscript.Quit
end if

Wscript.Echo strDownloadPlace & " をダウンロードしました"

' ***********************************************************
' 解凍
' ***********************************************************
strCommand = Dd( TempDir & "\Lhasa.exe" ) & " -d- -a -q -f -e- " & Dd(TempDir & "\" & strTarget )
RunSync(strCommand)

' ***********************************************************
' フォント分解
' ***********************************************************
strFontsDir = GetSpecialFolder("Fonts")
strExe = Dd(TempDir & "\ttsdk\TTC\BREAKTTC.EXE")
strFont = Dd(strFontsDir & "\" & strTTCTarget)
strCommand = strExe & " " & strFont
Wscript.Echo "フォント分解を開始します"
RunSync2(strCommand)
Wscript.Echo "フォント分解を終了しました"

' ***********************************************************
' 処理終了
' ***********************************************************
MsgOk( "処理が終了しました   " )

</SCRIPT>

</JOB>

zip の解凍は、Lhasa.exe を SQLの窓の関連サイトでホスティングして
ダウンロードして使っています。

スクリプトで使用している関数は、SQLの窓の関連サイトでホスティングしています





タグ:VBScript
posted by at 11:24 | その他 | このブログの読者になる | 更新情報をチェックする