LinuxでWindowsアプリを動かす その2

前回の続きです。

 

o-junk.hatenablog.com

 

Puppy LinuxでWine6.0を動かすということで

色々と試してみました。

bionicpup32-8.0-21-ja-uefi.isoにwine-6.19_v3.2.pet

インストールして動作するところまで確認しましたが

以下も2つの大きな問題があります。

・アプリインストーラなどで表示フォントがトウフになる。

サクラエディタなど一部のアプリで日本語変換前の

 文字が表示が表示されない。(確定すると表示される)

 

google先生に聞いたところ

表示フォントについては

$HOME/.wine/drive_c/ windows/Fonts

に必要なFontを入れればOKらしいです。

とはいえ、windows環境から直接コピーするのは

ライセンス上、問題ありそうなので代替Fontとして

cjkfontを使うのが定番のようです。

※CJKとは中国、日本、韓国のことらしいです。

ここでのcjkfontとはGoogle無料フォント「Noto Sans CJK JP」と

「Noto Serif CJK JP」のことらしいです。

※Notoはノー豆腐のことらしい。。。

但し、現状は配布が終わっているようでdownloadできませんでした。

代わりに「Noto Sans Japanese」と「Noto Serif Japanese」で対応できました。

以下のファイル名でdownloadされます。

Noto_Sans_JP.zip
Noto_Serif_JP.zip

 

fonts.google.com

 

 

---追記

cjkfontはGitHubにもあった。。

github.com

Googleにもあるけど名前が変えてあるって、、面倒なことしてるな。。

Noto CJK fonts are also available on Google Fonts but under different names than in this repository. The two letter code here is replaced at Google Fonts as follows:

JP -> Japanese
KR -> Korean
SC -> Simplified Chinese
TC -> Traditional Chinese
HK -> Hong Kong

---

 

解凍してwine環境にコピーします。

デフォルトだと以下です。(Puppyは$HOMEがrootなんだ。。)

$HOME/.wine/drive_c/ windows/Fonts

※ファイラーを使う場合、おめめアイコンで隠しファイルを表示させる。

 

代替Fontの設定は以下の内容をファイルにし、

wine環境のregeditを起動し、インポートします。

※エクスポートした結果からテキストの形式は

 UTF16 BOMあり CRLF みたいです。

#-------------------------------------------------

Windows Registry Editor Version 5.00

[HKEY_CURRENT_USER\Software\Wine\Fonts\Replacements]
"Meiryo"="Noto Sans JP"
"Meiryo UI"="Noto Sans JP"
"MS Gothic"="Noto Sans JP"
"MS Mincho"="Noto Serif JP"
"MS PGothic"="Noto Sans JP"
"MS PMincho"="Noto Serif JP"
"MS Sans Serif"="Noto Sans JP"
"MS Shell Dlg"="Noto Sans JP"
"MS UI Gothic"="Noto Sans JP"
"Tahoma"="Noto Sans JP"
"Yu Gothic"="Noto Sans JP"
"Yu Gothic Light"="Noto Sans JP DemiLight"
"Yu Gothic Medium"="Noto Sans JP Medium"
"Yu Gothic UI"="Noto Sans JP"
"Yu Gothic UI Light"="Noto Sans JP Light"
"Yu Gothic UI Semibold"="Noto Sans JP Medium"
"Yu Gothic UI Semilight"="Noto Sans JP DemiLight"
"Yu Mincho"="Noto Serif JP"
"Yu Mincho Demibold"="Noto Serif JP SemiBold"
"Yu Mincho Light"="Noto Serif JP DemiLight"
"メイリオ"="Noto Sans JP"
"游ゴシック"="Noto Sans JP"
"游明朝"="Noto Serif JP"
"MS ゴシック"="Noto Sans JP"
"MS 明朝"="Noto Serif JP"
"MS Pゴシック"="Noto Sans JP"
"MS P明朝"="Noto Serif JP"

#-------------------------------------------------

上記設定でも一部、表示されないFontがあるのですが

とりあえず、大体は表示できたのでOKとしときます。

 

変換前の文字が表示されない問題については

同じように以下の内容をファイルにし、

wine環境のregeditを起動し、インポートします。

#-------------------------------------------------

Windows Registry Editor Version 5.00

[HKEY_CURRENT_USER\Software\Wine\X11 Driver]
"ClientSideWithRender"="N"
"InputStyle"="root"

#-------------------------------------------------

一応、上記で対応できたのですが

日本語入力が常に画面の下部分あたりで行われるので

見にくいです。(通常に日本語入力できていたアプリも)

"InputStyle"を"root"から"onthespot"に変えるとよい

という情報もありましたが、カーソル位置と表示位置が

ズレることが多くて実用になりませんでした。 

使いにくい部分もありますが、これ以上は改善の

方法が見つからなかったので我慢します。

 

ちなみに

slacko-7.0.iso

lang_pack_ja-upbb-r2.pet

wine-6.19_v3.2.pet

の組み合わせでも同様に動作確認できました。

PuppyとWineの組み合わせはWindowsXPより

動作が軽いかも、ってくらいなので、運よく

アプリが動けば、なにか使い道がありそうと

思っているのですが、どうでしょう?