MacType CTP を適用するバッチファイル

本記事は最終更新日より 1 年以上経過しております。
スポンサーリンク

 Windows の汚いフォントを滑らかスムーズにしてくれる MacType。オフィシャルパッケージのリリース後にパッチ的な配布とされている CTP だけど 6 個のファイルを所定の場所にいちいちコピーするのが面倒すぎる。
 なのでバッチファイルで一発ドーンした方が楽だなという事でちょっと作って見た。32bit 版の Windows の事は考えて居ないので未検証。64bit 版の Win7 と Win10 で動作確認済。

MacType CTP のダウンロード

 次のオフィシャルサイトにあるページよりダウンロード可能。
 2017/03/14 時点では MacType_CTP_170307_W10.rar が最新となっている。

MacType file station - http://www.mactype.net/station/

MacType CTP を展開する

 rar 形式の圧縮ファイルなので WinRar なり 7-Zip で適当なフォルダへ展開しておく。

バッチファイルを置く

 MacType CTP のアーカイブから展開したファイルのある場所へ次の内容の .bat ファイルを作成して置いておく。
 処理内容としては各ファイルを対応した場所へ適切に上書きコピーをしているだけのバッチ処理その物。
 MacType インストール先を Program Files とは無関係な所にしている場合には対応出来ないので DST_MACTYPE で指定しているフォルダを書き換える必要がある。

@echo off

rem MacType CTP 導入用ばっちふぁいる

set SRC_DIR="."
set DST32="%SYSTEMROOT%\System32"
set DST64="%SYSTEMROOT%\SysWOW64"
set DST_MACTYPE="%PROGRAMFILES%\MacType"
set ERRCHK=0

echo ==============================================
echo MacType CTP 関連ファイルを各所へコピーします。
echo ==============================================
echo.

cd /d %~dp0

rem EasyHK32.dll
copy /Y %SRC_DIR%\EasyHK32.dll %DST_MACTYPE%\ > nul 2>&1
set /A ERRCHK=%ERRORLEVEL%
copy /Y %SRC_DIR%\EasyHK32.dll %DST64%\ > nul 2>&1
set /A ERRCHK=%ERRCHK%+%ERRORLEVEL%

rem EasyHK64.dll
copy /Y %SRC_DIR%\EasyHK64.dll %DST_MACTYPE%\ > nul 2>&1
set /A ERRCHK=%ERRCHK%+%ERRORLEVEL%
copy /Y %SRC_DIR%\EasyHK64.dll %DST32%\ > nul 2>&1
set /A ERRCHK=%ERRCHK%+%ERRORLEVEL%

rem MacType.Core.dll / MacType.dll
copy /Y %SRC_DIR%\MacType*.dll %DST_MACTYPE%\ > nul 2>&1
set /A ERRCHK=%ERRCHK%+%ERRORLEVEL%

if %ERRCHK% geq 1 (
    echo ===============================================================================
    echo ※ファイルのコピー中にエラーが発生しました。
    echo ※バッチファイルは管理者権限で実行して下さい。
    echo ※MacType が動作している場合「MacType ウィザード」で起動モードの「起動しない」
    echo  にチェック。「完了」をクリックし、Windows を再起動させてからもう一度実行して
    echo  下さい。
    echo ===============================================================================
) else (
    echo ==================================================================
    echo MacType CTP の適用が完了しました。
    echo 「MacType ウィザード」よりお好みの動作モードで起動させてください。
    echo ==================================================================
)

echo.
pause

 EasyHK32.dll と EasyHK64.dll に関してはハードリンクなので MacType インストールフォルダかシステムフォルダにある何れか一方でも変更すれば自動的に内容の同じ物となる。よって冗長かもしれないが、敢えて上書きコピーしている。

fsutil hardlink list "%PROGRAMFILES%\MacType\EasyHK32.dll"
\Program Files\MacType\EasyHK32.dll
\Windows\SysWOW64\Easyhk32.dll 

MacType CTP の導入

 MacType が動作している状態だとファイルコピーが出来ないので、MacType ウィザードから起動モードを起動しないにチェックしたあと、一旦 Windows を再起動しておいた方が確実。
 その後、上記バッチファイルと MacType CTP のファイルを同じフォルダに突っ込んだ状態でバッチファイルを管理者権限で実行すると適用出来る。

おわりに

 こういったバッチファイルを 1 つ作っておけば、今後もバージョンが変わったときの対応もバッチファイルを実行するだけで済むのでとても楽な適用となる。
 EasyHK32.dll と EasyHK64.dll のコピー先はちょっと頭がこんがらがる事も多いのでミスしない為にも定形化しておいた方が良いだろうとおもう。
 最後になるが、上記バッチファイルは動作確認をしっかりと取っている物の、ご利用は自己責任の上でという事でご了承を。

補足

 次の記事によると次期 Windows の Update である Creators Update では MacType 本体の更新が無い場合には MacType CTP を適用しないとフォントのレンダリングが改善されないそうなので、CTP 適用は今からやっておいた方が良いのかも知れない。

【朗報】MacTypeがWindows 10 Creators Update(RS2)に対応!! : Wicachi~Windows好きなmicachiの日記~
MacTypeが、間もなくリリースされるWindows 10 Creators Update(RS2)に対応しました。これは非常に喜ばしいことですが、まだβであり、しらいと氏のDirectWriteパッチとは併用出来ません。 

Creators Update (RS2) での動作確認

(2017/04/06 22:40 追記修正)
 Windows10 RS2 では管理者権限でバッチファイルを実行すると、カレントフォルダがシステムルートである “%WINDIR%\system32” とされてしまうので “cd /d %~dp0” を追加することで対応した。

 尚、Windows10 RS2 でも CTP 適用でエラー無く使えているが、MacType が効いている部分と効いていない部分が混在しているような状況である事を確認している。

しらいと氏の Patch も一緒に適用する方法

MacType非公式パッチ (MacType Unofficial Patch) - しらいとブログ
2017-04-10 Windows 10 Creators Updateに対応しました 古いパッチを使っている方、MacType 1.2016.904.0またはそれ以前のMacTypeを使っている方は、そのままだとCreators Updateで不具合が生じます。MacTypePatch 1.20を入れることでこの問...

 上記しらいと氏のサイトより MacType 非公式パッチ (MacTypePatch_x.xx.zip) をダウンロードを行う。
 パッチの ZIP ファイルに含まれる EasyHK32.dll と EasyHK64.dll の 2 つのファイルを予め展開しておいた MacType_CTP の物へ上書きコピーして置き換える。UserParams.ini は %PROGRAMFILES%\MacType\ 以下に展開する。
 それから本記事のバッチファイルを実行すると MacType + CTP + Patch の環境が出来上がる。
 MacType 自体の ini ファイルに関する修正はしらいと氏のパッチに入っているドキュメントを読んで各自行おう。

スポンサーリンク

『MacType CTP を適用するバッチファイル』へのコメント

  1. 名前:匿名 投稿日:2017/08/08(火) 20:45:58 ID:1729e265c 返信

    初心者で、スミマセン。
    MacType_CTP_170307_W10.rar を解凍して、mactypeにいれば良いのでしょうか?

  2. 名前:ぶっち 投稿日:2017/08/08(火) 20:58:47 ID:5675e848f 返信

     MacType CTP は手動で所定の場所へコピーする必要があるので、本記事ではその作業をバッチファイルで自動化させる事を目的としております。
     rar ファイルの中にあるファイル群をそのまま一箇所に展開するだけでも適用されません。
     また、現在では既に CTP よりも新しい正式版の MacType が公開されていますので、CTP でなくては行けない理由がない限りは正式版を使用した方が宜しいかと思います。

  3. 名前:匿名 投稿日:2017/08/08(火) 21:04:52 ID:1729e265c 返信

    >また、現在では既に CTP よりも新しい正式版の MacType が公開されていますので、CTP でなくては行けない理由がない限りは正式版を使用した方が宜しいかと思います。

    早々に有難うございます。

    Windows10 64bit に、Mactype最新を入れているのですが反映しない部分が反映するわけでないのですね?

    • 名前:ぶっち 投稿日:2017/08/08(火) 21:20:26 ID:5675e848f 返信

       MacType を入れると無条件に全てのフォントレンダリングが改善されるわけではなく、Chrome や Firefox といったブラウザではそれぞれ固有の設定を要する場合があります。
       「MacType が対象とする文字の表示方法」とは異なる手法を用いていることが原因です。
       フォントが綺麗にならない部分に関しては適時個別に対処していくほか無いかと思います。
       また、MacType 最新版 (MacTypeInstaller_2017_0628_0.exe) に CTP を適用させてしまうと一部ファイルのバージョンが古い物へと差し替わるだけなので、ちょっとばかり複雑な状態になってしまうかと思われます。

  4. 名前:匿名 投稿日:2017/08/08(火) 21:28:37 ID:1729e265c 返信

    私の様な者にも、親切に有難うございます。

    当たらない部分には、個々に設定が必要ということなんですよね。
    分かって入るつもりですが、誰かがパッチを作って頂けたらと期待しています。

  5. 名前:ぶっち 投稿日:2017/08/08(火) 21:38:20 ID:5675e848f 返信

     コメントを頂ければ分け隔てなく必要とあれば返信させていただいておりますし、なにかしらお役に立てればと思って記事を書いておりますのでお気になさらずです。
     個別に対処が必要というのはソフトウェア毎の固有設定である場合がおおいので、MacType 自体を改編するパッチでは個別の対処という物は難しいと思います。
     例えば Thunderbird というメールソフトを例に挙げてみますが、このソフトウェアも現在では標準で MacType が反映されない物の 1 つです。

    https://bucci.bp7.org/archives/38110

     そこでこのリンクに示す記事の様にソフトウェア側で MacType が効くように設定を変えてあげる必要がある。という事になります。
     物によっては間違えた設定をすると動作に支障の出るような難しい部分もあったりするので、当ブログのみならず色々なサイトを調べた上でやってみる方が安全かと思います。

  6. 名前:匿名 投稿日:2017/08/08(火) 21:50:12 ID:1729e265c 返信

    寛大な対応、有り難うございます。
    Windows LIve メールの本文で反映しないのが、残念です。

    助言の通り、反映されない部分もあるって事でしょうか?

  7. 名前:ぶっち 投稿日:2017/08/08(火) 22:05:25 ID:5675e848f 返信

     今ざっと Windows Live メールに関して調べてみましたが、「本文の文字に効かないけどインターフェイスには効いている」という情報が殆どでした。本文の文字表示にハードウェアアクセラレーションを強制されており、それが解除できないので MacType が効かないという事になるそうです。
     同じソフトウェアの画面でも効く場所と効かない場所が出てくるのも文字の表示方法が異なるためなので、現象としては十分にあり得る事象です。

     他のソフトウェアでもハードウェアアクセラレーションが原因で MacType が効かず、それを解除する事で効くようにすると言った対処法が殆どです。それが出来ないとなれば諦める他無いかと思われます。

  8. 名前:匿名 投稿日:2017/08/08(火) 22:08:28 ID:1729e265c 返信

    ご親切に、有り難うございます。
    私なりにも、調べて勉強したいと思います!

  9. 名前:wang dachui 投稿日:2018/04/23(月) 16:47:00 ID:f5a651197 返信

    hello,ぶっち

    I am a MacType user in China with the win7(x64) system. Since i didn’t know any japanese,there some questions about the use of MacType_CTP_171017 patch after reading your blog “MacType CTP を適用するバッチファイル”. You know, Google Translation cannot always provide an accurate expression.

    I should replace EasyHK32.dll and EasyHK64.dll in MacType_CTP_171017 with the same file in MacTypePatch_1.26,then run your bat file, is it right?

    By the way, what is your blog name ぶっち means in English?

    • 名前:ぶっち 投稿日:2018/04/23(月) 17:07:03 ID:6f168d725 返信

      Thank you for reading.

      If you extract MacType_CTP_171017 and excute this batch file in the same directory as the obtained file, I think that it will work.

      “ぶっち” means my handle name on the internet :)
      There is no particular deep meaning.

      • 名前:wang dachui 投稿日:2018/04/23(月) 20:00:50 ID:f5a651197 返信

        Thank you for reply.

        So when operating MacType + CTP + Patch environment, I should put EasyHK32.dll,EasyHK64.dll (from MacTypePatch_1.26 by Shiorai) in the MacType directory while MacType*.dll(from MacType_CTP_171017)on the MacType directory.

        At the same time, copy EasyHK32.dll,EasyHK64.dll(from MacTypePatch_1.26 by Shiorai) to the system directory according to your actual meaning on bat file,right?

        Here I got 2 questions if my expressions above was correct.

        1. The real functioning files in MacType_CTP_171017 are MacType*.dll rather than the EasyHK*.dll(Since We replace it with the same file in the MacTypePatch_1.26 by Shiorai)?

        2. Does it work well when mixing two patch files into one diretory? Any changes needed to write in the *.ini file?

        • 名前:ぶっち 投稿日:2018/04/24(火) 16:51:54 ID:3b2cc6924 返信

          Hello,

          The two questions are as follows.
          1. I do not know about the actual program operation.
          2. After overwriting the Patch file over CTP, if you execute the batch file of this article, I think that it can be applied all at once.
          There was no problem in terms of operation on our side.

          However, there is also concern that Patch is older than DLL version than CTP.
          I currently use Patch without applying it, so I do not know the details.

          • 名前:wang dachui 投稿日:2018/04/25(水) 02:43:57 ID:f46146aae 返信

            Mr. ぶっち , your patience and help is greatly appreciated. MacType run successfully in my computer with your article. I think you can add a further readme txt file in MacType_CTP on http://www.mactype.net/station/, that will be perfect.

            As for the 2nd question I mentioned before, I will feed back to snowie2000, hoping for a final answer.

            Have you met such a situation that autorun mode is always a failure in portable build through Mactray? In addition, fonts blurred slightly despite great beautiful changes?

            I made parameter like that: Contrast=1.0 RenderWeight=1.0 also using ForceChangeFont. How about your configuration?

            • 名前:ぶっち 投稿日:2018/04/25(水) 02:58:35 ID:381f0075b 返信

              Hello,

              It was good that MacType seemed to work properly.

              Currently, in my environment there is no phenomenon that letters blur.
              My Setting is..
              GammaMode=0
              GammaValue=1.3
              RenderWeight=1.3
              Contrast=1
              etc…
              in the Registory mode.