画像やリンクが無効になっている可能性もあるのでご了承下さい。
Windows の汚いフォントを滑らかスムーズにしてくれる MacType。オフィシャルパッケージのリリース後にパッチ的な配布とされている CTP だけど 6 個のファイルを所定の場所にいちいちコピーするのが面倒すぎる。
なのでバッチファイルで一発ドーンした方が楽だなという事でちょっと作って見た。32bit 版の Windows の事は考えて居ないので未検証。64bit 版の Win7 と Win10 で動作確認済。
MacType CTP のダウンロード
次のオフィシャルサイトにあるページよりダウンロード可能。
2017/03/14 時点では MacType_CTP_170307_W10.rar が最新となっている。
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 適用は今からやっておいた方が良いのかも知れない。
Creators Update (RS2) での動作確認
(2017/04/06 22:40 追記修正)
Windows10 RS2 では管理者権限でバッチファイルを実行すると、カレントフォルダがシステムルートである “%WINDIR%\system32” とされてしまうので “cd /d %~dp0” を追加することで対応した。
尚、Windows10 RS2 でも CTP 適用でエラー無く使えているが、MacType が効いている部分と効いていない部分が混在しているような状況である事を確認している。
しらいと氏の Patch も一緒に適用する方法
上記しらいと氏のサイトより MacType 非公式パッチ (MacTypePatch_x.xx.zip) をダウンロードを行う。
パッチの ZIP ファイルに含まれる EasyHK32.dll と EasyHK64.dll の 2 つのファイルを予め展開しておいた MacType_CTP の物へ上書きコピーして置き換える。UserParams.ini は %PROGRAMFILES%\MacType\ 以下に展開する。
それから本記事のバッチファイルを実行すると MacType + CTP + Patch の環境が出来上がる。
MacType 自体の ini ファイルに関する修正はしらいと氏のパッチに入っているドキュメントを読んで各自行おう。
コメント
初心者で、スミマセン。
MacType_CTP_170307_W10.rar を解凍して、mactypeにいれば良いのでしょうか?
MacType CTP は手動で所定の場所へコピーする必要があるので、本記事ではその作業をバッチファイルで自動化させる事を目的としております。
rar ファイルの中にあるファイル群をそのまま一箇所に展開するだけでも適用されません。
また、現在では既に CTP よりも新しい正式版の MacType が公開されていますので、CTP でなくては行けない理由がない限りは正式版を使用した方が宜しいかと思います。
>また、現在では既に CTP よりも新しい正式版の MacType が公開されていますので、CTP でなくては行けない理由がない限りは正式版を使用した方が宜しいかと思います。
早々に有難うございます。
Windows10 64bit に、Mactype最新を入れているのですが反映しない部分が反映するわけでないのですね?
MacType を入れると無条件に全てのフォントレンダリングが改善されるわけではなく、Chrome や Firefox といったブラウザではそれぞれ固有の設定を要する場合があります。
「MacType が対象とする文字の表示方法」とは異なる手法を用いていることが原因です。
フォントが綺麗にならない部分に関しては適時個別に対処していくほか無いかと思います。
また、MacType 最新版 (MacTypeInstaller_2017_0628_0.exe) に CTP を適用させてしまうと一部ファイルのバージョンが古い物へと差し替わるだけなので、ちょっとばかり複雑な状態になってしまうかと思われます。
私の様な者にも、親切に有難うございます。
当たらない部分には、個々に設定が必要ということなんですよね。
分かって入るつもりですが、誰かがパッチを作って頂けたらと期待しています。
コメントを頂ければ分け隔てなく必要とあれば返信させていただいておりますし、なにかしらお役に立てればと思って記事を書いておりますのでお気になさらずです。
個別に対処が必要というのはソフトウェア毎の固有設定である場合がおおいので、MacType 自体を改編するパッチでは個別の対処という物は難しいと思います。
例えば Thunderbird というメールソフトを例に挙げてみますが、このソフトウェアも現在では標準で MacType が反映されない物の 1 つです。
そこでこのリンクに示す記事の様にソフトウェア側で MacType が効くように設定を変えてあげる必要がある。という事になります。
物によっては間違えた設定をすると動作に支障の出るような難しい部分もあったりするので、当ブログのみならず色々なサイトを調べた上でやってみる方が安全かと思います。
寛大な対応、有り難うございます。
Windows LIve メールの本文で反映しないのが、残念です。
助言の通り、反映されない部分もあるって事でしょうか?
今ざっと Windows Live メールに関して調べてみましたが、「本文の文字に効かないけどインターフェイスには効いている」という情報が殆どでした。本文の文字表示にハードウェアアクセラレーションを強制されており、それが解除できないので MacType が効かないという事になるそうです。
同じソフトウェアの画面でも効く場所と効かない場所が出てくるのも文字の表示方法が異なるためなので、現象としては十分にあり得る事象です。
他のソフトウェアでもハードウェアアクセラレーションが原因で MacType が効かず、それを解除する事で効くようにすると言った対処法が殆どです。それが出来ないとなれば諦める他無いかと思われます。
ご親切に、有り難うございます。
私なりにも、調べて勉強したいと思います!
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?
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.
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?
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.
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?
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.