読者です 読者をやめる 読者になる 読者になる

しらいとブログ

ネットで検索してもなかなか出てこないIT情報を独自にまとめています

MacType非公式パッチ (MacType Unofficial Patch)

MacType PC Web デザイン フォント
MacType非公式パッチ (MacType Unofficial Patch)

MacType公式アップデート

MacTypeが更新されました。
http://www.mactype.net/
https://github.com/snowie2000/mactype/releases

MacType v1.2016.830.0以降にはこのブログで公開しているパッチの大部分が組み込まれています。1.2016.830.0以降でこのパッチを使う場合はiniフォルダのiniファイルを開いて、[General]にDirectWrite=0を[Experimental]にClipBoxFix=0を追加してください。

Features

MacTypeの修正

  • Windows 10 Anniversary Updateでクラッシュする問題を修正。
  • 縦書きにある程度対応。
  • Chrome系ブラウザやJavaで文字が切れる問題を修正。

DirectWriteの調整

  • DirectWriteのパラメーターをUserParams.iniで調整できるようにしました。
  • Windows 8.1以降でフォントのヒンティングを切ることが出来ます。
  • レジストリモードorサービスモードでストアアプリにも効きます。

System Requirements

Screenshot

Store apps
f:id:silight_jp:20160619223549p:plainf:id:silight_jp:20160619223550p:plain

Windows 10 Internet Explorer
f:id:silight_jp:20160601074342p:plain

Windows 7 Internet Explorer
f:id:silight_jp:20160601074341p:plain

縦書きにある程度対応

f:id:silight_jp:20160605071158p:plainf:id:silight_jp:20160605071159p:plain

FirefoxFlashAIRなどで縦座標が無視される問題を修正しました。

Download

   メイン 予備
2016/11/17 MacTypePatch_1.19.zip MacTypePatch_1.19.zip
2016/10/15 MacTypePatch_1.18.zip MacTypePatch_1.18.zip
2016/10/11 MacTypePatch_1.17.zip MacTypePatch_1.17.zip
2016/10/08 MacTypePatch_1.16.zip MacTypePatch_1.16.zip
2016/10/07 MacTypePatch_1.15.zip MacTypePatch_1.15.zip
2016/10/05 MacTypePatch_1.14.zip MacTypePatch_1.14.zip
2016/08/28 MacTypePatch_1.13.zip MacTypePatch_1.13.zip
2016/07/16 MacTypePatch_1.12.zip MacTypePatch_1.12.zip
2016/06/27 MacTypePatch_1.11.zip MacTypePatch_1.11.zip
2016/06/22 MacTypePatch_1.10.zip MacTypePatch_1.10.zip
2016/06/20 MacTypePatch_1.9.zip MacTypePatch_1.9.zip
2016/06/19 MacTypePatch_1.8a.zip MacTypePatch_1.8a.zip readmeの訂正のみ
2016/06/19 MacTypePatch_1.8.zip MacTypePatch_1.8.zip 今までと使い方が変わっています
2016/06/18 MacTypePatch_1.7.zip MacTypePatch_1.7.zip
2016/06/14 MacTypePatch_1.6.zip MacTypePatch_1.6.zip
2016/06/11 MacTypePatch_1.5.zip MacTypePatch_1.5.zip
2016/06/09 MacTypePatch_1.4.zip MacTypePatch_1.4.zip
2016/06/08 MacTypePatch_1.3.zip MacTypePatch_1.3.zip サービスモードでOS起動不可
2016/06/05 MacTypePatch_1.2a.zip MacTypePatch_1.2a.zip
2016/06/05 MacTypePatch_1.2.zip MacTypePatch_1.2.zip 間違って古いファイルを配布してました
2016/06/04 MacTypePatch_1.1.zip MacTypePatch_1.1.zip
2016/06/01 MacTypePatch_1.0.zip MacTypePatch_1.0.zip

アップデートの注意

DLLをアップデートする時はUserParams.iniの更新も忘れないようにしてください。

環境によってはOSが起動しなくなることがあるようです。
もし起動しなくなったらセーフモードで起動するかLinuxを立ち上げるなどして元に戻しましょう。

使い方

  1. MacTypeに含まれるEasyHK32.dllとEasyHK64.dll(64bit版のみ)は不要なのでリネームまたは削除する。
  2. UserParams.iniをMacTypeのフォルダに入れる。
  3. zipに含まれるDLLを「MacTypeのフォルダ」と「システムフォルダ(下記の通り)」の「両方」に入れる。
    32bit
        C:\Windows\System32\EasyHK32.dll
    64bit
        C:\Windows\System32\EasyHK64.dll
        C:\Windows\SysWOW64\EasyHK32.dll

UserParams.iniを書き換えることで設定を変えられます。

Q&A

Q. ストアアプリなどでClearTypeにならない(グレースケールになる)
A. DirectWriteのClearTypeは透明度に対応しておらず、透明度付の描画ではグレースケールになってしまいます。透明度を無効にしたら悪影響が出そうなのであきらめました。

Q. Chromeで設定が一部反映されない
A. ChromeはDirectWriteが本来やっている処理の一部(文字に色を付けて背景と合成する処理)を独自に処理しているため一部の設定が効きません。

Q. ストアアプリに効かない
A. iniファイルのHookChildProcessesが0になっていたら1にしてください。

Q. Windows 10のタイトルバーにMacTypeが効かない
A. iniファイルの[UnloadDll]にdwm.exeが入っていたら消してみてください。

その他

このDLLにはMITライセンスのEasyHookとMhookが使われています。
詳しくは付属のlicense.txtを参照ください。
※1.1まではMhook、1.2まではEasyHook、1.3からは両方使われています。

Source Code

githubソースコードを公開しました。
https://github.com/silight-jp/MacType-Patch

Donations

MacType非公式パッチの作者を応援したい方がいましたら
silight.jp@gmail.comにAmazonギフトでも送っていただけたら幸いです。
https://www.amazon.co.jp/dp/B004N3APGO/
8/28に1人の方からギフトを頂きました。ありがとうございます。
9/1に1人の方からギフトを頂きました。ありがとうございます。
9/2に1人の方からギフトを頂きました。ありがとうございます。
10/8に1人の方からギフトを頂きました。ありがとうございます。
10/25に1人の方からギフトを頂きました。ありがとうございます。
12/2に1人の方からギフトを頂きました。ありがとうございます。
12/25に1人の方からギフトを頂きました。ありがとうございます。
頂いたギフトはプログラミング関係の電子書籍に使おうと思います。
※開発PCが壊れたので一度部品の買い替えに使いました。

更新履歴

1.19 安定性の向上
1.18 MacType v1.2016.830.0以降のMacTrayでも安定するように調整
DynamicCodePolicyに対応
1.17 DPIの計算が間違っていたのを修正
UserParams.iniにForceNoHintingを追加(Windows Vista以降でもヒンティングを切れる)
1.16 1.15で文字の間隔が広くなるバグを修正
1.15 1.14で遅くなった部分を高速化
1.14で文字が欠けるようになった問題を修正
1.14 高DPI環境で正しく拡大されないバグを修正
一部のフォントで半角スペースが含まれる文章にMacTypeが効かないのを無理やり修正
DirectWriteでフォントを別のフォントに置き換える機能を試験的に実装
1.13 Direct2Dの新バージョンに対応
印刷でレイアウトが崩れる可能性があったのを修正
DirectWriteを使わないソフトではDirectWriteを初期化しないように修正
1.12 開発環境をアップデートした
EasyHookをバージョンアップした
少し高速化
1.11 ReplaceDirectWriteWithGDIを廃止
少し高速化
簡単なテストプログラムを同梱
1.10 パラメーターを減らして必要最小限のフックしかしないようにした
1.9 IsPixelSnappingDisabledを廃止
1.8a 使い方を訂正
1.8 ストアアプリにも効くようにした
1.7 MacTypeの文字が少し欠けるバグを修正
コンパイルオプションをMacTypeになるべく合わせてみた
1.6 安全性が増したかも
1.5 UserParams.iniの仕様を大幅変更
Firefoxで安定性が増した
DirectWriteをGDI(MacType)に置き換える機能を試験的に実装(ReplaceDirectWriteWithGDI=1で使える)
1.4 1.3で稀にデッドロックが発生する問題を修正
ガンマ値の計算が間違っていたのを修正
1.3 EasyHookでフックできない関数だけMhookでフックするようにした
FontSubstitutesが効かなくなっていた問題を修正
いくつかのアプリが起動時にクラッシュする問題を修正
MacTypeUnicode文字が半分欠ける問題を修正
1.2 Mhookの代わりにEasyHookを使うようにした結果、MacType並みに安定するようになった
D2D1AntialiasModeを廃止(文字の描画には影響しなかった+変えるとFirefoxの描画が不安定になる)
MacTypeの縦書きバグを部分的に修正
1.1 UserParams.iniをより安全な設定に変更
DWriteTextAntialiasModeを廃止(勝手に書き換えちゃいけない設定だった)
HookTargetを追加し一部プロセスを除外するなど出来るようにした
Chromeで一部設定が効かなかった問題を修正(設定が効くようになった気がしたのですが気のせいでした)
1.0でChromeFlashで文字がおかしくなっていた問題を修正
Windows 10 Insider Previewでクラッシュする問題に対処(元のEasyHKをMhookでエミュレートするようにした)
1.0 公開
広告を非表示にする