0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

[Linux Mint] Xfce デスクトップを見やすいサイズに調整するには?

Last updated at Posted at 2025-12-30

TitleTeser.gif

本記事は俺ちゃん著の Linux Mint インストール記事 の追っかけ記事である。基本的に、そちらを読んだ読者を対象としているが、他サイトを参考にして Linux Mint をインストールしたとか、既に大分前にインストールして使っているよという人も利用でき、おそらく参考になるだろう。

はじめに

🕒 この記事を読むのに必要な時間 🕒
要約のみ: 3〜10分 ※オススメ!
全文: 約 45分

📜 必要な知識 📜
Linuxに関する知識: 初級
高精度ディスプレイに関する知識: 中級

💻 実行環境 💻
OS: Linux Mint 22.2 x86_64
Kernel: 6.8.0-87-generic
Shell: bash 5.2.21
DE: Xfce 4.18
WM: Xfwm4
Terminal: xfce4-terminal
Packages: xfce4 4.18, xfwm4 4.18.0-1build3, x11-xserver-utils 7.7+10build2, libgdk-pixbuf-2.0-0 2.42.10+dfsg-3ubuntu3.2, libgtk-3-0t64 3.24.41-4ubuntu1.3, firefox 146.0.1+linuxmint1+zena, thunderbird 1:140.6.0esr+linuxmint1+zena

🔶 概要

2025 年現代の PC のディスプレイ(画面、モニターとも呼ばれる)は高解像度対応のものが大半になっている。特別高価なディスプレイでなくとも、最大の解像度で画面を表示させると、表示されるあらゆるものが小さすぎて見づらいといった問題が起きうる。

Linux でもこれは同様だ。
高解像度ディスプレイではワークスペースが広く使えるものの、アイコン類が小さく、メニューや各種アプリケーションの文字は小さく見える。

本記事では この問題を解消する、いくつかの方法を紹介しよう。
特に一般ユーザーよりも視力が弱い方、老眼の方には役立つと思う。設定方法と効果の違いをどこよりも詳しく解説しておく。ただし、ある程度の知識は必要になる。

🔶 TL;DR 先ず結論の要約を述べる

🔵 画面全体が小さい場合

まず、貴方が「画面内のあらゆるものが、すごく小さい!」と思うような場合。特に Apple 社製の Retina ディスプレイなどに代表される HiDPI ディスプレイ1 を使っている場合。
この場合は UI スケーリング 機能を使用して縦横 2倍サイズにしてみよう。端末を開いて以下のように入力する。

	$ xfconf-query -c xsettings -p /Gdk/WindowScalingFactor -s 2

  ※ または本稿の以下の項目を参照して GUI の設定画面から設定を行っても良い。
  🔶 Xfce の外観設定:ウィンドウ拡大縮小を指定する

📌 初心者向けワンポイント解説 🔰

先頭の $ マークは プロンプト と言って端末のコマンドラインであることを示す記号なので打ち込まなくて良い。$ の後から入力すること。1 行づつコピー&ペーストしてから Enter キーを押すとよい。
コマンドは意外と長い場合があるので、ちゃんと末尾までコピーできているか、よく確認しよう。特に Qiita の記事にあるコマンドは隠れていて、横スクロールしなければ全文が見えない場合がある。

結果がちょうどよければ、これだけで完了。

「まだ全然小さい!」という場合には、上記コマンドの最後の 23 に変えて再び実行してみること。それでもダメなら 4 にする。

逆に「大きすぎる!」という場合には、もう一つのスケールを使って微調整しよう。これには端末を開いて以下のように入力する。

	$ SCREEN_NAME=`xrandr | sed -nr 's/^(.+) connected .+/\1/p' | head -1`
	$ xrandr --output $SCREEN_NAME --scale 1.25x1.25

  ※ または本稿の以下の項目を参照して GUI の設定画面から設定を行っても良い。
  🔶 ディスプレイ設定:スケール設定を使用する

これでもまだ大きいようであれば、例えば、

	$ xrandr --output $SCREEN_NAME --scale 1.5x1.5

のように --scale の値を少し大きくして再度実行してみる。この値を大きくすると、その分だけ画面に描画されるもの全てが小さくなってゆく。
満足ゆくまでこれを繰り返す。

🔵 全体ではなく、一部を微調整したい場合

この場合は デスクトップ や ウィンドウマネージャー、パネル、各アプリケーション などの フォント や アイコン・サイズなどを ちまちま変更する ことになる。手間ではあるが、好みに合わせて細かく設定できる。
以下で解説しているので、目的に合わせた項目を選んで行ってみてほしい。

 🔶 Xfce の外観設定:全体のフォント・サイズを大きくする
 🔶 ウィンドウの各種ウィジェットを大きくする方法
 🔶 個別のアプリケーションの設定

Xfce を10年以上使用している筆者は、大体いつもこれらの設定を行っている。







-- 以下は詳細な解説。クリックして開く --

🔶 ディスプレイ設定:画面解像度を変更する

🔵 解説

最も簡単かつ誰でも知っている方法。
それはディスプレイの 画面解像度 を変更することだ。これは以下の設定画面によって変更できる。

  [Whiskerメニュー] > [設定マネージャー] > [ディスプレイ]
  [解像度] の項目があるので、これをクリックして目的の解像度を選ぶ。

大抵の場合は、デフォルトでは現在接続されているディスプレイの最大解像度になっていると思う。

001_DisplaySettings.png

画面解像度はディスプレイの画素数を 横幅 × 高さ のピクセル数で表したものだ。上記の例は筆者の LIFEBOOK U938/T という機種の例だが、 1920x1080 (フルHD)となっている。
これが大きいほど 画面が多くのピクセルで表現される=高精細になる のだが、引き換えに画面に映る内容物が小さく見えるようになってしまう。

ピクセル数の後の * 印は現在選択中のものに付く。その後ろにあるのはアスペクト比と呼ばれる縦横比だ。現代のディスプレイでは 16:9 の横にワイドな比率が主流だ。

ここにリストされている選択肢は、ドライバがそのハードウェアが対応している解像度を列挙したものになる。画面の内容物を大きくしたければ、アスペクト比はデフォルトと同じもので、やや小さい解像度を選択してみるとよいだろう。

変更後に [適用] ボタンを押すと、その解像度に変更する。本当にそれで良いのか確認するダイアログが現れる。ここでは画面がうまく映らなかった場合に備えて [OK] ボタンを押さないまま数秒が経過すると、元の設定に自動的に戻る仕様になっている。変更したければ [OK] を押そう。

よく利用するアプリを起動しながら変更を試してみるとよいだろう。文字やアイコンのサイズ感、ピンぼけていないかどうか、滲んでいないかなどを確認できるからだ。パネルにある各種常駐アプリケーション、あるいはサービスなどのアイコンについても問題なく表示されているか、よく確認しよう。

🔵 この方法のメリット・デメリット

⭕ メリット:
ハードウェアとしてデバイスが対応している解像度へ変更するため、問題が起 きにくい。処理も高速で綺麗な画面になることが多い。 他の設定が必要なく、全体を一括して大きくできる。

❌ デメリット:
選択できる解像度は PC に搭載されているビデオカードに依存する。表示機器(ディスプレイ、モニター)が対応している解像度とも一致する必要がある。

当然ながら、それらを制御するドライバも対応している必要がある。これらすべてが合っていないと、ぼやけた表示になったり、画面に何も出力されなかったり、出力されるが一部がバグったような、おかしな表示になったりすることがある。

また、解像度を落とす(e.g. 1920x1080 -> 1280x720) ということは、ディスプレイに折角備わっている性能を落として使っていることに他ならない。大迫力のゲームを楽しみたいとか、デザインの仕事で高精細な画像を扱うといった用途の場合は、なるべくそのまま高解像度で使いたいと思うだろう。しかし、その場合はメニューやボタンなどのユーザー・インターフェイスが小さくなってしまって困るというジレンマが起きる。

❌️ 選択肢の中に対応しているはずの解像度が表示されないときは? 😣

たまに そのようなことがある。筆者も過去に何度か経験した。
これは多くの場合、ディスプレイ、およびビデオカードのドライバに起因する問題だ。ドライバを変更すれば、あるいは別のビデオカードとの組み合わせを試してみれば解決することが多い。

ドライバによってはオプションを設定可能なものもある。それを調整することで解決した事もある。ドライバ… つまり、 Linux に於いてはカーネル・モジュールに関する知識が必要になってくるが、 udev/etc/modprobe.d/ への設定ファイル追加などでこれを調整してやることでうまくいくこともある。

https://wiki.archlinux.jp/index.php/カーネルモジュール

あるいは、単に出力のポートを変えてみて解決したこともある。
HDMI, DisplayPort, DVI, VGA などのポートがあるが、別の経路を用いるとあっさり本来の解像度設定が可能になったことがある。(逆に、驚くことに本来未対応のはずの高解像度の項目が現れ、使えてしまったこともある)
…おそらく、これらもドライバに起因するのだろうが。

🔶 ディスプレイ設定:スケール設定を使用する

🔵 解説

前章で紹介したのと同じ ディスプレイ設定 画面で [スケール] という項目がある。これも画面内容物の大きさを決定するものだ。
簡単に言えば、ディスプレイ/ビデオカード のハードウェア機能として解像度を変更する上記設定とは異なり、こちらは 『見た目の大きさだけを変える』 という意味になる。

  [Whiskerメニュー] > [設定マネージャー] > [ディスプレイ]
  [スケール] の項目があるので、これをクリックして目的の値を選ぶ。

"スケール" とは英語で定規のことだ。物差しのこと。
このスケールを例えば 1x1.25x に変更すると、 『定規を 1.25 倍の大きさに変更した』 意味になり、効果としては 『画面に映し出される内容物が 25% 小さくなる』 。 …そう。 今回の目的とは真逆 である。

カスタムスケールを使用して 0.8 などにすれば、逆に大きくすることもできるが…これはオススメできない。
このスケールの変更機能はソフトウェアによるスケーリングが行われる。これは遅い上に、補間アルゴリズムの関係からフォントやウィンドウの内容物などの描画(レンダリングという)結果が綺麗にならない場合が多いからだ。
…拡大処理に於いては。

逆に言えば、
縮小処理に関してはこれはあまり問題にならない。その場合 "補間" の逆に "間引き" をすることになるが、こちらは比較的安定した結果が得られるためだ。ピンぼけたりせず綺麗に映ることが多い。よって、 1.0 以上の値で使用するのをオススメする。特に 1.25, 1.5, 1.75 など ¼ 単位で増加させるのがよいだろう。

なお、このスケール設定は次のコマンドでも同様のことができる。

1. 準備:画面名の取得と変数への格納
    $ SCREEN_NAME=`xrandr | sed -nr 's/^(.+) connected .+/\1/p' | head -1`
2. 実行①:画面サイズを 25%縮小(ズームイン)
    $ xrandr --output $SCREEN_NAME --scale 0.75x0.75
3. 実行②:画面サイズを 25%拡大(ズームアウト)
    $ xrandr --output $SCREEN_NAME --scale 1.25x1.25

002_xrandr_AfterZoom-in.png

ディスプレイ設定のスケールは、Xfce のちょっと前のバージョンまではなかった気がするので、どうもこの xrandr コマンドを間接的に使えるようにしただけの実装であるようだ。そのせいか、公式マニュアルにも記載がない。(2025年12月 現在)

Cinammon などのデスクトップ環境では後述する UI スケーリング 設定と連動した、完全な設定が可能であるようなので、それと同等の機能を期待していると落とし穴にハマる事だろう。

🔵 この方法のメリット・デメリット

⭕ メリット:
拡大/縮小 率を実数値で指定でき、きめ細かな調整ができる。 他の設定が必要なく、全体を一括して大きく(または小さく)できる。

❌ デメリット:
拡大処理は綺麗にならない場合が多い。ぼやける。

🔶 Xfce の外観設定:全体のフォント・サイズを大きくする

🔵 解説

全体的なフォントを大きくするには以下の設定画面で可能だ。

  [Whiskerメニュー] > [設定マネージャー] > [外観] > [フォント]タブ

003_Appearance.png

この設定画面で [デフォルトフォント] および [デフォルト Monospace フォント] のフォントサイズを変更する。
2 つの違いは、前者が主に使われるフォントで、通常こちらは文字幅が固定ではない、いわゆるプロポーショナル・フォントを指定する。後者は反対に固定幅フォントを指定する。こちらは端末やテキストエディタなど、文字幅が一定の方が列の位置を合わせ易く、より良いユーザー・エクスペリエンスをもたらす箇所で使用される。

サイズの代わりに、フォントファミリーを変更して 太字(Bold) スタイルのフォントを選んだり、見やすい別のフォントに変更する、といった方法もある。

この効果はウィンドウの タイトル や メニュー などには効果があるが、アプリケーションの内容には影響しない。つまり、例えば xed テキストエディタであれば編集中のテキストの本文の部分は大きくならない。(ただし、"システムの固定幅フォントを使用" の項目を選んでいる場合は別)

また、フォントだけであるので {アイコン, ボタン, チェックボックス, スライダー, スクロールバー } といった各種ウィジェットも大きくならない。

もうひとつ、
同じ [フォント]タブ の設定画面の下に [カスタムDPI設定] という項目がある。これもフォントサイズを拡大させたときと似たような効果が得られる。

DPI とは "Dots Per Inch" の略で 『1 インチ中に何ドットの画素が含まれるか』 を表す解像度の単位だ。一般的な高精細ではないディスプレイにおいてはデフォルトでは 96 DPI である場合が多いが、これは 1 インチ(2.54cm) の線を 96 のドットが並んだ形で表現するという意味だ。ただし、ここでの DPI 指定は基本的には『フォント』にのみ作用する。画面にフォントを描き出す(レンダリングするという)際のスケーリングのみを変更するという指定である。

この値が例えば現在 96 であるとすると、 120 に変更すればフォントが 1.25 倍の大きさになったような効果が得られるだろう。 144 にすると 1.5 倍に拡大される。2

フォントのサイズを変更する場合との違いは、こちらは実際にフォント・サイズを変えるのではなくて(主にフォントに関する)レンダリング処理上の大きさを変更する点である。すなわち、こちらの方が計算に時間がかかり少々遅い可能性がある。ただし、よりきめ細かな指定が可能で、さらにこの値を参照して一部の UI の大きさも変わる場合がある。例えば、Webブラウザ Firefox の タブバー や サイドバー はこれに応じて大きくなったり小さくなったりする。 Fcitx の変換時の文字サイズにもこれが影響する。

これは元々は X-Window System (X11) の設定値としてフォント出力時の画像化(ラスタライズという)時に使われる DPI を設定する値(Xft.dpi)から来ているようだ。 X 上では アプリケーション, サービス 問わず、各所でこれを参照しているが、ものによっては見ていなかったり、デスクトップ環境やウィジェット・ツールキットによって上書きされてしまったりする。この [カスタムDPI設定] という項目もその一つで GTK および Xfce 上では上記 Xft.dpi 値を上書きしたような効果が現れる。

また、少し奇妙な仕様だが、 Xfce では例え ~/.Xresources ファイルなどで Xft.dpi を設定していても、こちらの [カスタムDPI設定] を ON/OFF 操作しなければ反映されないようだ。おそらく、Xft.dpi 設定は古いものであるため、参照するのが正しいか微妙な位置づけになっており、もし指定したいなら相当するこちらの [カスタムDPI設定] を使うべきだということなのだろう。maybe... Xfce デスクトップ環境においては。

🔵 この方法のメリット・デメリット

⭕ メリット:
フォントのみの変更であるため、結果は常に綺麗である。(ビットマップ・フォントを指定してしまった場合は除く)

❌ デメリット:
ウィジェット・ツールキットが管理している メニュー や ラベル、テキストといった各種ウィジェットのフォントにのみに作用する。アプリケーション個別のフォントなどには影響がないことがある。その場合は個別に設定する必要が生じる。

また、ボタン, チェックボックス, スクロールバーなどの ウィジェット3、アイコンなどは小さいままだ。これらを大きくするためには更に追加でいくつかの設定が必要となるので手間がかかる。

🔶 Xfce の外観設定:ウィンドウ拡大縮小を指定する

🔵 解説

もうひとつ、この [外観] ダイアログには 拡大/縮小 に関する設定項目がある。それは UI スケーリング 機能4 を使用することで縦横 2倍のサイズに拡大して表示するという方法だ。

これは極端に画面の表示が小さい場合、つまり高画素密度のディスプレイ(いわゆる HiDPI ディスプレイ) を使っている場合に画面に映る全てのものを拡大する機能になる。5

画面解像度を変更する場合と違うのは、 映し出されるもの の方が 2倍の大きさになる点だ。解像度はそのままであるため 非常に精細で綺麗な画面 で表示されるだろう。

わかりやすいよう画面を点描画に例えて説明すると、
画面解像度を下げて内容物を大きくするということは、 点ひとつひとつを大きくする ようなものだ。狙い通り内容物は大きくはなるものの、ドットが粗く、高精細とは言えない。

ExsamplePointillism.gif

対して、
UI スケーリング を用いた拡大は 点の大きさはそのままに、描画されている内容物のサイズを大きくする。これは例えば 2 倍の指定の場合、1 ピクセルを画面の 1 画素で表示していたものを、 縦横 2 画素ずつの 4 画素を使うことによって実現している。

ただし、これは GTK に依存する。すなわち、 GTK を利用しているアプリケーションやウィンドウにおいては拡大されるが、そうでないアプリケーションでは拡大されず、元のままのサイズのままとなる。例えば、画像ファイルを GTK を利用している画像ビューワー Xviewer を使用して表示した場合には拡大されるが、 利用していない display コマンドで表示した場合は拡大は行われず、原寸大で表示される。

TestUI_Scaling.gif

  ※ display コマンドは ImageMagick という画像処理CUIアプリケーションに付随するコマンドだ。もし試してみたければ別途imagemagick パッケージをインストールする必要がある。

設定方法は以下の通り。

  [Whiskerメニュー] > [設定マネージャー] > [外観] > [設定]タブ
  [ウィンドウ拡大縮小] の値を選択する。

004_WindowScale.png

ただし、"1倍 (拡大縮小なし)" か "2倍" か どちらかしか選べない ので、致命的に使い勝手が悪い…。別の倍率にできないのか、調べたが整数型のみの指定となっており、実数での指定は不可能だった。
ドンピシャリの機種ならいいが、大抵の機種ではこの方法のみで使用するのは、なかなか厳しいだろう。既に紹介した ディスプレイ設定 の スケール設定 など、他の方法を併用して調度いい大きさに微調整するのが良いと思われる。

なお、以下のコマンドを使用することでも同じ変更が可能だ。

UI スケーリングを2倍にする
	$ xfconf-query -c xsettings -p /Gdk/WindowScalingFactor -s 2

しかし、このコマンドでも 1.5倍 などの実数値指定は不可能である。整数しか受け付けない。 3倍 や 4倍 の指定は可能。

🔵 この方法のメリット・デメリット

⭕ メリット:
これのみで全体を一括して大きく拡大表示することができる。 同様の効果を持つ、初めに紹介した解像度を変更する場合と比べ、画面解像度 はそのままであるので、ハードウェア性能を余すことなく使用できる。結果も 綺麗な仕上がりになる。 グラフィック・デザイナーなど、仕事柄 高精細ディスプレイ を扱う方にはオ ススメだ。

❌ デメリット:
GUI の画面からは 2倍しか選べない。CLI で xfconf-query コマンドを使えば 3倍, 4倍などが選べるが、整数倍のみ。 1.2倍 とか 1.5倍 などのより細かな 指定は不可能である。微調整には他の方法を併用する必要がある。

🔶 ウィンドウの各種ウィジェットを大きくする方法

前々章、 🔶 Xfce の外観設定:全体のフォント・サイズを大きくする で解説した [フォント]タブ のフォント・サイズ変更や [カスタムDPI設定] ではフォントしか変わらないため、各種ウィジェットが小さいままで視認性が悪い。
それらも大きくなるように変更したくなるはずだ。
本章ではこの方法を紹介しよう。

🔵 xfwm4 テーマを変更してクッキリ見やすくする

ウィンドウ内の各種ウィジェットのデザインを定義しているのは "テーマ" である。これは以下の画面で設定の変更が可能だ。

  [Whiskerメニュー] > [設定マネージャー] > [外観] > [スタイル]タブ

で別のテーマに変更する。
例えば、これを一番下にある [ハイコントラスト] に変更する。

005_AppearanceStyle_ChangeAnim.gif

すると、全体的にクッキリしているデザインに変わる。すぐ下に表示されているスライド・スイッチのデザインも変わり、大きくなっている。
このように各種のウィジェット類も大きく、コントラストの強いはっきりしたものへと変わる。

しかしウィンドウ上部の ❎ ボタンなどの大きさは元のままだ。
こちらも変更してみよう。

  [Whiskerメニュー] > [設定マネージャー] > [ウィンドウマネージャー] > [スタイル]タブ

この画面で [テーマ] を左のリストボックスから選んで変更する。
大きく視認しやすくするには、 [Default-hdpi] または [Default-xhdpi] がいいだろう。

006_WMStyle_ChangeAnim.gif

もし、デザインが気に食わなかったり、もっと大きくしたいという場合には別のテーマを探してインストールするか、デフォルトのテーマをコピーしてきて改造するという手がある。

🔵 別のテーマのインストール方法

例えば以下のテーマ配布サイトでお好みのテーマを検索して ZIP、または tar.gz ファイルをダウンロードし、インストールする。

🔗 【参考】
XFCE_XFWM4 Themes - Eyecandy for your XFCE-Desktop - xfce-look.org

Xfce の各種テーマを扱う Web サイト。投稿型。
例えばこのサイトで "HiDPI" をキーワードに検索すると、高解像度環境に適したテーマが。"High Contrast" をキーワードに検索すると、視認性に優れたデザインのテーマが表示されるだろう。その際、カテゴリを "XFCE/XFWM4 Theme" に絞ると効率よくリストを表示できる。
  e.g. HiDPI, Hight Contrast
  ${\tiny ※\ このサイトは他サイトから直でクエリを投げるとブロックするらしく、初回は上手く表示されない。}$
  ${\tiny  \ ブラウザの更新ボタンを押すことで表示できる。}$

テーマによっては [ウィンドウ拡大縮小] を "2倍" にすることが前提で わざと小さいデザインで作られている場合もあるので、よく配布ページのインストール方法や使用方法の項目を読むこと。また、右の方にまとめられているライセンスにも目を通しておくこと。

インストールには [外観] > [スタイル] から [追加] ボタンを使用する。

もしも 「⛔ テーマのインストールに失敗しました」 と表示される場合は、まずは元のページでインストール方法が紹介されていないかどうか確認すること。書かれていればそれを実行する。
書かれていない場合、おそらく言うまでもないので省略されているのだろう。以下の手順で手動インストールする。

  1. アーカイブファイルを展開する。ファイルマネージャー Thunar で該当ファイルを右クリックして [ここに展開] を選べばよい。
  2. 展開してできたディレクトリを切り取り。
  3. ホームディレクトリ直下の .themes ディレクトリへ移動する。ディレクトリ名の先頭が "." であるディレクトリは隠しディレクトリであり、通常は表示されないが、 ThunarCtrl + H キーを押すことで表示させることができる。なお、もう一度このキーを押すと再び隠すことが可能だ。 .themes ディレクトリが無い場合は先に作成しておこう。
  4. 貼り付け(ペースト)する。

007_ThemeManualInstall_Anim.gif

インストールできたら、それを選択して適用してみよう。

  [Whisker メニュー] > [設定マネージャー] > [外観] > [スタイル]
  または、
  [Whisker メニュー] > [設定マネージャー] > [ウィンドウマネージャー] > [スタイル]

のいずれかに目的のテーマが追加されているはずだ。それを選択しよう。

008_ThemeManualInstall03_WMStyleSelected.png

注意としては、ディレクトリのパスが以下のような構成でなければならない点だ。

  /<ホームディレクトリ>/.themes/<テーマ名>/xfwm4/

例えば、俺ちゃんの場合は以下のようになる。

  /home/9hnder/.themes/Mowi-72/xfwm4/

xfwm4 ディレクトリには最低限 themerc というファイルが入っている必要がある。

🔵 既存のテーマの改造方法

例えば先に紹介した "Default-xhdpi" テーマを改造する場合を例に解説しよう。以下の場所にそのファイル群がある。

  /usr/share/themes/Default-xhdpi

これをディレクトリごと、以下のパスにコピーしてくる。

  /<ホームディレクトリ>/.themes/

Thunar ファイルマネージャーでやる場合は Ctrl + H キーで隠し ファイル/ディレクトリ を表示するようにしておくこと。おそらく初めはこのディレクトリがないので作成する必要があるだろう。コピー後のディレクトリ名は変更しておく必要がある。

Thunar の代わりに、コマンドラインで一気にやることもできる。この方が手間なくオススメだ。以下のようにする。

コマンドライン
    $ mkdir -p ~/.themes; cp -r /usr/share/themes/Default-xhdpi ~/.themes/Custom-xhdpi

  ※ ここではコピー先ディレクトリ名に "Custom-xhdpi" を指定しているが、これはそのままテーマ名になる。好きに変更していいが、他と被らないようにするとよい。

改造するには themerc ファイルを編集したり、 *.png*.xpm といったボタンなどのアイコンに使う画像ファイルを変更したりすればいい。編集には画像編集ソフトである GIMP が利用できる。XPM形式 は実際はテキストファイルであるので、テキストエディタも利用できる。編集には以下の公式 Webページ が参考になるはずだ。

https://wiki.xfce.org/howto/xfwm4_theme

テーマによっては XFCE4/XFWM4 テーマだけではなく GTK3/GTK2 テーマが含まれるものもある。それらについては以下のページが参考になるだろう。

https://wiki.xfce.org/howto/gtk_theme

https://docs.gtk.org/gtk3/

GTKテーマの方は GUI で編集を行いたい場合には Oomox というアプリケーションがあるようだ。HiDPI に対応したテーマに改造する機能があるらしい。筆者は使用したことがないので詳しく解説できないが。


編集が終わったら、 [ウィンドウマネージャー] 設定画面を開く。
[スタイル]タブ > [テーマ] に "Custom-xhdpi" または自分で好きに付けた名前のテーマが加わっているだろう。あるいはフルセットのテーマであれば [外観] > [スタイル] の方にあるかもしれない。
それを選べば適用できる。

🔵 画面下部のパネルのアイコンを設定する

xfwm4 テーマを変更しても、画面下に表示されているパネルのアイコン群の大きさは相変わらず小さいままだ。次はこれを大きくしてみよう。

パネルの何もないところを右クリックして、 [パネル] > [パネルの設定] を選ぶ。

010_NaviPanelSettings.png

パネルの設定ダイアログが表示されるので [表示] タブの [寸法] にある [行サイズ] を変更する。[+] ボタンを押して大きくすると、パネルの縦の広さが大きくなる。[行数] を変えて二段にすることもできる。

011_PanelSettings.png

通常、アイコンもそれに応じて大きくなるが、ならない場合は [外観] タブに移動して [アイコン][自動的にサイズを調節する] にチェックを付けること。
ただし、これにチェックが付いていても キーボード, Bluetooth, アップデート通知, Wi-Fi/有線LAN(ネットワークマネージャー) などの一部のアイコンは大きさが変わらないかもしれない。

012_PanelSettings_AnyIconsLittle.png

これはそのアイコンが個別に大きさを指定されているためだ。次の手順でこれらのアイコンのサイズを変更すれば改善する。

  1. [アイテム]タブ > [ステータストレイ] をダブルクリック。
    [アイコン] 項目の [自動的にサイズを調整する] を ON にするか、 [固定されたアイコンサイズ] の値(デフォルト:20)を大きい値に変更する。
  2. [アイテム]タブ > [XApp の状態プラグイン] をダブルクリック。 [シンボリック] の項目のサイズ(デフォルト:22)を大きい値に変更する。

013_PanelSettings_AnyIconsLargeChaged.png

こうしてアイコン類を大きく調整したパネルは以下のようになる。

014_PanelSettings_AnyIconsLargeCompleted_Anim.gif

なお、ここで使われているアイコン・セットは以下の設定画面で変更できる。

  [Whisker メニュー] > [設定マネージャー] > [外観] > [アイコン]タブ

ファイルマネージャー や デスクトップ 各所で使われるアイコンも変わるので、それらも合わせて確認してみて、視認しやすいアイコン・セットを選ぶとよいだろう。

🔵 Whiskerメニューのサイズを調整する

さて、
パネルの大きさは変更されたが、一番左の Whiskerメニュー を開いてみると、レイアウトが崩れてしまっていることに気づくだろう。

015_WiskerMenuLittleLength.png

アイコンやフォントのサイズが変わったため、幅が足りなくなってしまったのだ。
これを直しておこう。

  パネル上の何もない場所か、Whiskerメニュー を右クリックして [パネル] > [パネルの設定] を選ぶ。
  [アイテム] タブ > [Whisker Menu] をダブルクリック。

016_WiskerMenuSettings_Width.png

"Menu Width:" と "Menu Hight:" の値を [+] ボタンを押すなどして増加する。
これで丁度いい長さになるまで調節すればいい。

🔶 個別のアプリケーションの設定

外観, ウィンドウマネージャー, パネル で設定を行っても、個々のアプリケーションのフォントやアイコンの大きさは変わっていない場合がある。これらを調整する手段は大抵の場合、その設定画面に [フォント] のサイズを指定する項目や [アイコン] のピクセル数を指定する方法があるはずだ。

誰もがよく使う、主なアプリケーションについて以下で解説しておこう。

🔵 ファイルマネージャー Thunar の設定

ファイルマネージャー Thunar を開くと、デフォルトでは左側のサイドペインにショートカット・アイコンが表示されるが、これが小さいままになっている。

020_ThunarLittleIcons.png

これを大きくするには以下を実行する。

  1. [Thunar メニュー] > [編集] > [設定] > [サイドペイン]タブ を選ぶ。
  2. "ショートカットペイン" の [アイコンのサイズ] (デフォルト: 16ピクセル) を変更する。
  3. ついでに "ツリーペイン" の [アイコンのサイズ] (デフォルト: 16ピクセル) も変更しておく。

なお、右側のメインとなるペインの方は、 [外観] で設定したフォント・サイズに応じて適切な大きさのものが自動的に選ばれるようである。

拡大したい場合には Ctrl + + キーを押すか、 Ctrl + マウスホイール で拡大表示させることができる。これは画像ファイルや動画ファイルのサムネイルにも適用されるので、写真の整理をするときなどに役立つだろう。 Ctrl + 0 キーでデフォルトの大きさに戻すことができる。

🔵 Webブラウザ Firefox の設定

Web ブラウザでも文字が小さいと感じる場合。
これを大きくするには、

  画面右上の ハンバーガーボタン [☰] > [設定] を選び、設定画面を表示。
  [一般]タブ の "フォント" の [サイズ] を大きくする。

または、

  同じく設定画面 [一般]タブ の "ズーム" の [規定のズーム] の値を変更する。

021_FirefoxSettings_Zoom.png

前者は、文字通り基準となるフォントのサイズを変更するだけ。画像やウィジェット類(例えばボタンやチェックボックスなど)は大きくならない。
後者は Firefox のレンダリングエンジンに拡大描画させる指定。つまり Firefox が映し出すものは全て大きくする。ただし、 [文字サイズのみ変更する] チェックボックスを ON にしていると、文字のみを大きくしたような効果に限定する。(結果的にフォントサイズを設定したときと似たような効果)

コツとしては、少しだけ「文字が小さいな…」と思う程度ならフォントの [サイズ] のみを変更するのが良いだろう。 「かなり小さい!」 とか、 「全体的に大きくしたい!」 と思うのであれば、 [規定のズーム] を変えてしまうほうが良い。 [規定のズーム] は大きくしすぎると、画像などが粗くなるため、両方を併用するのも手だ。

気をつけないといけない点は、
[規定のズーム] は各種ウィジェットも大きくなるため、あまりにも大きな値(200%以上とか)を指定すると 画面のレイアウトが崩れてしまう 可能性が高い。そうなると、もはや製作者の意図から外れ、サイトとして使いにくくなってしまう恐れがある 。過ぎたるは及ばざるが如し、である。

もし、それほどまでに大きくしないと見えないというのであれば、そもそものディスプレイの大きさが貴方に合っておらず、小さすぎるか、解像度が高すぎるのではないかと思われる。 解像度変更を試してみて、それでもダメならより大型のディスプレイ製品に買い替えを検討してはいかがだろうか。

なお、ズームに関しては Ctrl + + キー、または Ctrl + マウスホイール を使用して拡大表示を行うことも可能だ。 Ctrl + 0 キーで規定の大きさに戻せる。「他のページは良いけど、このページだけやたら小さくて見づらいな…」というようなときに利用できるので、覚えておくとよいだろう。

🔵 Thunderbird の設定

Thunderbird の場合も同じ Mozilla Foundation の製品であるので Firefox と同じような手順でサイズを変更できる。
ただし、 [規定のズーム] に当たる項目は無い。フォント・サイズを変更する機能については有る。大きく分けで 3 種類存在する。以下に設定方法をスクリーンショット画像と共に列挙する。

  [☰] > [フォントサイズ]UI 上で使われているフォント・サイズ を変更。
022_ThunderbirdHamburgerMenu.png

  [☰] > [⚙️設定] > [一般] > [フォント] 項目の [サイズ]、または [詳細設定...] を選んで、 本文の各種フォント・サイズ を変更する。
023_ThunderbirdSettings_Font.gif

  [☰] > [⚙️設定] > [一般] > [編集] > [HTMLスタイル] 項目の [サイズ] を選ぶことで HTML メールの編集時のフォント・サイズ を変えることができる。
024_ThunderbirdSettings_HtmlFont.png

フォント以外のウィジェット類などの UI の大きさは [☰] > [UI 密度] という項目を使う。UI の大きさを { コンパクト, 規定, リラックス } の 3種類から選ぶというもので左から順に UI が大きくなってゆく。

…しかし、
この機能では選択できる大きさが、かなり限られてしまう。上述したフォント・サイズと合わせて調整すれば多少は希望へ近づくかも知れないが… 希望よりもかなり小さい場合には これで調整するのは厳しいだろう。

そこで、
全体をもっと大きくしたい場合、 設定エディター を使って直接 Thunderbird の設定値を書き換えるという方法がある。ただし、これは Firefox で言うところの about:config で設定をすることと同様になり、裏技的な方法だ。問題が起きる可能性がある。6
それでも構わないという方のみ、実施してほしい。

  1. [☰] > [⚙️設定] > [一般] ページで一番下までスクロール。右側の [設定エディター] の項目をクリック。
  2. [高度な設定] ページが開くので [🔍] テキストボックスに layout.css.devPixelsPerPx を入力して Enter キーを押す。
  3. 右の [✏️] アイコンをクリック。初期値 -1.01.52.0 などに変更する。あまりにも大きな値や小さな値を入れないように注意すること! 1.02.0 の範囲以外はオススメできない。

025_ThunderbirdSettingsEditorAnim.gif

なお、 Firefox 同様に、ショートカットキーを使って ズームイン/ズームアウト が可能だ。 Ctrl + + キーで拡大。Ctrl + - キーで縮小。または Ctrl + マウスホイール でもいい。 Ctrl + 0 キーで規定の大きさに戻せる。

🔶 その他の補助的手法

最後に、画面の拡大に関する いくつかの補助的手法を紹介しよう。
これらの方法は常用するわけではないが、役に立つ方法だ。

🔵 拡大鏡を使って部分的に拡大

magnus というアプリケーションをインストールして使用すると、 Windows でいうところの "拡大鏡" の機能が使用できる。
これは虫眼鏡を使ったように、マウス・ポインタのある辺りだけを拡大表示してくれる機能だ。

030_Magnus.png

拡大箇所は常にマウス・ポインタに追随する。

magunus のウィンドウのタイトル部分を右クリックして [常に最前面へ] を選んでおくと、別のウィンドウにフォーカスを移しても拡大鏡が表示され続けるので便利だ。

📝 MEMO:
これはどちらかと言えば、視力に問題がある方ではなく、画像の一部を拡大表示させながら編集したい、デザイナーなどに向いている機能のように思う。

🔵 一時的にフォントや画面を拡大する方法

🔶 個別のアプリケーションの設定 の各項で説明したが Ctrl + マウスホイール または Ctrl + + キーを使うと アプリケーション内の各フォントを一時的に拡大 することができる。フォント・サイズのみの変更なので、画像が小さくて見づらいといった用途には使えないが、それでも十分便利な機能だ。処理も軽く、フォントも粗くなったりしないのでオススメである。

ほとんどのアプリケーションで共通して使用できるが、これは元々はアプリケーションが使用しているライブラリ(ウィジェット・ツールキット)が提供している機能であるため、別のウィジェット・ツールキットを採用しているアプリケーションでは動作しない場合がある。

Alt + マウスホイール画面全体を 拡大/縮小 することもできる。
こちらは スマートフォン や タブレット で ピンチアウト することで画面を拡大するのによく似ている。ただし、これはソフトウェアによって拡大処理するようで、補間の関係で拡大し過ぎるとかなり文字や画像がピンぼけしたようになってしまう。

この Alt + マウスホイール でのズーム機能を使用するには、次のようにする。
(※ Linux Mint 22.2 Xfce エディション では最初から設定されていたので不要)

  [スタート] > [設定マネージャー] > [ウィンドウマネージャー(詳細)] > [アクセシビリティ]タブ
  [ウィンドウを掴んだり移動したりするために使うキー][Alt] を設定し、
  同ウィンドウの [コンポジット処理]タブ[マウスホイールでデスクトップをズームする] を ON にする。

こちらの方法はアプリケーションに依存せず、 必ず使用できる。ただし、逆にアプリケーション側でこのキーの組み合わせに何らかの機能が割り当てられていても、動作しなくなってしまう。

特に見づらい画面が表示されたときなどに、一時的に使用するとよいだろう。

🔵 使う人によって画面の 拡大/縮小 を切り替えたい

PC を家庭で使用していると、家族で共有して使用する場合がある。
そういった場合はユーザーごとにアカウントを作って、別々にお好みの設定をするのが望ましい。画面の設定はユーザーごとに保存されるので、大抵は この方法で解決する。
シャットダウン・メニューから [ログアウト] するか [ユーザーの切り替え] を選べばよいのだ。後者の場合は現在のユーザーのセッションも継続して維持される。

しかし、同じアカウントのままで一時的に操作を変わるというシチュエーションも時にはあるだろう。家族から 「わからないからやって!」 などと頼まれたときだ。そういった場合も画面の拡大率が違うと非常にやりづらい。

この場合、コマンドラインから一気に設定を切り替えると楽だ。
さらに、それをシェルスクリプトとしてまとめておけば、それを呼び出すだけで変更が可能になる。
例えば、普段は家族用に拡大された大きな画面の設定にしているが、自分が使うときのみ縮小して使用たい場合。以下のようなスクリプト・ファイルを作成する。

ToggleScreenZoom.sh
#!/bin/sh
# 画面の 拡大/縮小 を切り替える.
SCREEN_NAME=`xrandr | sed -nr 's/^(.+) connected .+/\1/p' | head -1`
SCREEN_ZOOMING=`xfconf-query -c xsettings -p /Gdk/WindowScalingFactor`
if [ "$SCREEN_ZOOMING" -eq 2 ] ; then
	# 画面を縮小する
	xfconf-query -c xsettings -p /Gdk/WindowScalingFactor -s 1
	xrandr --output $SCREEN_NAME --scale 1.0x1.0
elif [ "$SCREEN_ZOOMING" -eq 1 ] ; then
	# 画面を拡大する
	xfconf-query -c xsettings -p /Gdk/WindowScalingFactor -s 2
	xrandr --output $SCREEN_NAME --scale 1.25x1.25
fi

これを ToggleScreenZoom.sh という名のファイルとして保存しておき、

	$ chmod +x ToggleScreenZoom.sh && sudo mv ToggleScreenZoom.sh  /usr/local/bin/

で実行パスの通った場所へ移動しておく。
後はファイル名を指定して実行すればよい。

	$ ToggleScreenZoom.sh

実行するごとに、画面の拡大率が切り替わる。
お好みで xrandr コマンドの --scale の値などを調整すること。

さらに、頻繁に利用する場合には これをショートカットキーに登録し、キー 一発で動作するようにしておくと良い。

デスクトップ環境のショートカットキーは Xfce では、

  [スタート]ボタン > [設定マネージャー] > [キーボード] > [アプリケーションショートカットキー]タブ

で設定できる。



以上。
お役に立てれば幸い。






🔶 おまけ①:マルチディスプレイ環境について

複数のディスプレイを同時に使用するマルチ・ディスプレイ(またはマルチ・モニター。2つの場合は デュアル・ディスプレイとも言う)環境でも Xfce を使用することはできる。

しかし、こと UI スケーリング に関しては Xfce は少し機能不足で、 システム全体で単一のスケール値しか設定できない。 すなわち、 HiDPI ディスプレイと高解像度ではない普通のディスプレイを組み合わせて使う場合などにはスケールの値を別々にするほうが望ましいが、 Xfce ではこれが叶わないのだ。

ディスプレイ設定画面(あるいは xrandr コマンド)から行うことができる 解像度の変更スケール設定 については普通に行うことができるので、それらで我慢するしか無い。(しかし、おそらく、それはぼやけた文字などを映し出すだろう)
例えば以下の Xfce 公式フォーラム でこの話題があがっている。

CinammonGNOME, KDE Plasma などはマルチ・ディスプレイそれぞれにUI スケーリング機能を割り当てることができ、綺麗に映るそうだ。マルチ・ディスプレイを常用したいユーザーはそちらへの変更を考えてみるほうが良いかもしれない。

残念ながら筆者はマルチ・ディスプレイを基本的に使用しておらず、あまりこの辺りに明るくないので、役に立ちそうな Webページ のリンクだけ紹介して お茶を濁しておくことにする。:-p
以下を参照していただきたい。

🔶 おまけ②:デザイナー向け:正しい DPI を設定するには?

🔶 Xfce の外観設定:全体のフォント・サイズを大きくする で少し触れたが、 X-Window System に DPI を設定することができる。(Xft.dpi) あるいは、 [カスタムDPI設定] を指定して Xfce 上のこの設定を上書きすることができる。
ただし、これは既に書いたように、基本的には "フォントに対する DPI の指定" である。7 フォント以外に対してはサイズが変わるか否かは未定義で保証されない。アプリケーションの実装方針によるのだ。

この DPI 値をディスプレイが持つ画面密度の DPI 値に合わせて正しく設定すると、理論上は 画面上に表示されたテキストのサイズと全く同じ大きさで、そのまま印刷される 。いわゆる WYSIWYG (What You See Is What You Get) というやつである。

このおまけでは、これを検証しながら解説してみよう。

🔵 DPIの算出方法

まずは画面のハードウェアが持つ、 DPI(または PPI8 を算出する方法を解説する。最初からスペック表にかかれている製品をお持ちの方は本節は読み飛ばしてしてしまって良い。
まず、ディスプレイの大きさである "型" のサイズ表記(e.g. 13.3型, 13.3インチ)を調べておく。これは一般的にどんな機種でも表記が有るはずで、画面の対角線のサイズのこと。例えば筆者の LIFEBOOK U938/T であれば以下のようになっている。

040_DsiplayInchSize.png

この型と 画面比率(e.g. 16:9) から縦・横の画面の長さ(下記では縦幅・横幅) が算出できる。

📝 MEMO:

-- 地道に手計算する場合の式の例 --

横幅を α、縦幅を β、対角線を χ とする。
この場合、三平方の定理(a.k.a. ピュタゴラースの定理)から、

	α² + β² = χ²

が成り立つ。
今回の筆者の機種では FullHD ワイドであるので、それぞれの比率は以下になる。

比率
	縦  : 横  : 対角線
	169 : ?

この ? 部分を算出するために、三平方の定理へ当てはめると、

	16² + 9² = χ²
	χ² = 337
	χ  = √337

となり、 337 の平方根であることがわかる。
これは約 18.35756 だが、厳密には割り切れないので そのまま √337 としておく。

比率
	縦  : 横  : 対角線
	169 : √337

各辺の比率がわかったので、実際の筆者の端末の対角線 13.3 インチを代入して αβ を算出してみよう。

    α = 13.3 × ( 16 / √337 ) ≒ 11.592 inch
    β = 13.3 × (  9 / √337 ) ≒  6.52  inch

さらに インチ ⇒ センチメートル に単位を変換する。 1 inch = 2.54 cm であるので、

	α = 13.3 × ( 16 / √337 ) × 2.5429.444 cm
	β = 13.3 × (  9 / √337 ) × 2.5416.562 cm

となる。
ただし、これは実寸では若干の違いが生ずることが多いようだ。もともとの画面仕様が概算であるかもしれないし、厳密だとしても 割り切れない数をどこで丸めるか(有効桁数をいくつにするのか)、四捨五入なのか、切り捨てなのか、などが関わってくるのだろうと思われる。
この後で紹介している画面長計算機 Web ページの 2 つのサイトでも僅かながら違いが生じてしまっている。よって厳密すぎる精度は、求めるべきではないだろう。

手計算が面倒な人は次のように、ネットで早見表などを見て調べることもできる。

041_MyLaptopLcdSize.png

あるいは、 xrandr コマンドの出力結果にもこれは含まれている。筆者の環境では以下のようになっていた。

	$ xrandr | grep -w connected
	eDP-1 connected 1920x1080+0+0 (normal left inverted right x axis y axis) 294mm x 165mm

最後の N mm x N mm が 横幅 x 縦幅 の値になる。

さらに、その長さと 最大の解像度(e.g. 1920x1080) から、 画素 1つ辺りの長さ が算出できる。これを 1 インチ(2.54cm) 中に幾つ入るか割り算することで、そのハードウェアが持つ DPI が算出できる。

📝 MEMO:

-- 地道に手計算する場合の式の例 --
【画素 1つ辺りの長さ】
	横: 294 mm ÷ 1920 px = 0.153125 mm/px
	縦: 165 mm ÷ 1080 px = 0.152777 mm/px
	縦横平均: 0.153125 mm/px0.152777 mm/px ÷ 2 = 0.152951 mm/px
【DPI】
	横: 25.4 mm / 0.153125 mm/px = 165.877551 px
	横: 25.4 mm / 0.152777 mm/px = 166.255391 px
	縦横平均: 165.877551 px166.255391 px ÷ 2 = 166.066471 px

上記結果を見てもらえればわかるが、残念ながらピッタリとした切りのいい数字にはならないようだ。これは、ごく僅かに画素間に間隔があったり、 "◯◯型" と謳っていたとしても少し誤差があったりするせいかもしれない。そもそもの画素が、必ずしも縦・横 同じ長さの正方形で、均一な長さではないためとも思われる。


自動で計算してくれる Web ページもある。この手のサイトは JavaScript で簡単に作れるため幾つもあるが、以下の 2 つを紹介しておこう。

🔗 【参考】 ppi、dpi 画素密度計算 - 液晶ディスプレイ

📝 Memo:
日本のサイト。画面のサイズ(インチ)と解像度(またはピクセル数)を入力することで、{ 画素密度, 画素ピッチ, 総画素数 } が得られる。

-- 🖼️ 俺ちゃんの LIFEBOOK U938/T の例 --

042_CalcDpi_testpage.jp.png

🔗 【参考】 PPI (Pixels Per Inch) Calculator | Good Calculators

📝 Memo:
こちらは海外のサイト。上記と同様だが、より多くの情報が手に入る。

-- 🖼️ 俺ちゃんの LIFEBOOK U938/T の例 --

043_CalcDpi_goodcalculators.com.png

さらに、
xrandr コマンドと xdpyinfo コマンドを使っても DPI 値の算出が可能だ。
ターミナルを開き、以下のように入力する。

	$ SCREEN_NAME=`xrandr | grep -w connected | cut -d ' ' -f 1 | head -1`
	$ SCREEN_SIZE=`xrandr | grep -w connected | sed -rn 's/.+ ([[:digit:]]+)mm x ([[:digit:]]+)mm$/\1x\2/p' | head -1`
	$ xrandr --output $SCREEN_NAME --fbmm $SCREEN_SIZE
	$ xdpyinfo | sed -n '/screen #0:/,/resolution:/p'

一行目では接続中のディスプレイの名前を取得して変数 SCREEN_NAME に格納している。(e.g. eDP-1, HDMI-1, DP-1)
最初の一台のみである点に注意されたし。すなわち、マルチ・ディスプレイ環境ではこの手はそのままでは使えない。
二行目では同じく接続中のディスプレイの "横幅 x 縦幅" を取得して変数 SCREEN_SIZE に格納している。 mm (ミリメートル) 単位の整数値で取得して x でつなぐ。(e.g. 294x165)
三行目では取得した情報を使って xrandr コマンドでディスプレイを再設定している。これにより、縦横幅に応じた DPI が算出され、設定される。
四行目では xdpyinfo コマンドの最初のスクリーンの情報から、解像度と DPI 情報のみを切り抜いて表示している。

汎用性は失われるが、
よりわかりやすく変数値に格納せずに実行すると、次の画像のようになる。

D01_xdpyinfo_exsample.png

いずれの結果も DPI は 166 だ。

なお、筆者の LIFEBOOK U938/T の場合、画素ピッチ(ドットピッチ) の表記のみが公式サイト上のスペック表に記載されていたが、これも算出した値とほぼ一致していた。

🔗 製品公式サイト より抜粋
044_FMVU17033DisplaySpec.png


🔵 DPI を設定して画面サイズと印刷したときのサイズを比べてみる

DPI がわかったら、その値を [カスタムDPI設定] で指定してみよう。

E01_Appearance166DPI.png

これによって、 画面に表示されたフォントと印刷したフォントの大きさが ほぼ一緒 になるはずだ。…理論上は。9

筆者はテキストエディタ Xed を使ってこれを実験した。
対象テキストは { ■ あいう ABC } の文字とした。測りやすそうな "■" の右辺, "あ" の縦棒付近, "B" の左辺を目安に測った。手抜きで縦幅のみ計測。

E03_Xed72pt.png

Xed の場合、エディタ画面で表示されている文字とは別に、印刷用にフォントや そのサイズを選択する。

  [メニュー] > [ファイル] > [印刷] > [テキストエディタ]タブ > [本文]

の項目で設定できる。
これを今回は 72pt, 144pt にして 2枚印刷して実験を行う。フォントは適当な固定幅フォントのものを使う。今回は俺ちゃんが常用している MigMix フォントの Migu 2M を使った。

E06_PrinterSettings00_Font.png

ついでに、この画面にある [行番号を印刷] および [ページのヘッダーを印刷] の項目は OFF にしておくほうが良いだろう。余計なので。

こうして設定したフォントは印刷プレビューの表示で確認できる。

E07_XedPrintPreview.png

これをそのまま手持ちのプリンターで印刷するか、 [ファイルに出力する] を選んで PDF 形式で一旦ファイルに出力し、コンビニなどで使えるプリントアウト・サービスに送る。
今回はもし誰かが再現実験をする際に(しないだろうけど…)プリンターによる差異がなるべく起きないよう、後者を選んでファミリーマートに備え付けてあるプリンターで印刷することにした。

当然ながら、前提条件としてプリンターの設定画面などで 拡大/縮小 を行わないよう指定しておかなければならない。まず PDF へ出力する前に以下項目が "100%" になっていることを確認する。

  [メニュー] > [ファイル] > [印刷] > [ページの設定]タブ > [拡大/縮小]

E06_PrinterSettings01_NonZoom.png

プリンターの方でも自動的に 拡大/縮小 が行われる設定になっていないか、確認しておくこと。
"用紙に合わせて印刷" だとか "自動的に拡大縮小" だとか、"余白を自動設定"だとか そういった余計な調整機能はすべて切っておく。
ファミマのネット・プリントサービス を利用した場合は、PDF ファイルの登録時に以下画面のように "原寸で印刷" を選べば良い。

E08_FamimaNetprint.png

 $\tiny{※\ お店で実際にプリント・アウトする際にも 拡大/縮小 オプションが選べてしまうが、選ばないように注意すること。}$

こうしてプリントアウトしたものと、 Xed エディタで印刷プレビュー画面上に表示させたものに それぞれ物差しを当てて測ってみた。(物理)

E09_Mesure72ptSquareAnim.gif

フォント・サイズを今回 72pt と 144pt の 2枚にしたのには理由がある。
最初 10pt 10 で試したのだが、小さすぎてよくわからなかった…。そこで 72pt, 144pt で測り直した。 72 の倍数にしたのは、 1 インチが 72pt と定義されている からだ。つまり 72pt のフォントサイズでは 1インチ(=2.54cm)以内に収まるようにフォントが出力される。
実際には文字列を並べたときの読みやすさや、美しさのためにマージン(余白、文字の間隔)が空けてあるので 1インチぴったりにはならないが。…まあ、それに近い数値にはなるはずだ。
また、 72pt の場合と 144pt の場合では縦横の長さは倍になるはずだ。

結果、
それぞれ理論値に ほぼ一致した。
測定値は以下のような値であった。

72pt の結果 144pt の結果
18.5 mm 37.0 mm
21.5 mm 43.0 mm
B 18.5 mm 37.0 mm

この結果を見るに DPI の設定値は正しく機能しており、十分使えると言えよう。
印刷業を生業にしている DTP デザイナー の方はおそらく役に立つはずだ。本記事を参考として Linux PC を設定してみると良いかもしれない。…まあ、その手の人は Mac を使っている方が大半なのだろうが。

…ただし、
やっておいてなんだが、俺ちゃん的にはあまり「この設定は好ましくはないな」と思った。 DPI をデバイスの解像度と同じ値に正しく設定すると、フォントが 大きくなりすぎる と感じたためだ。
普段使いするには、ちょっとためらわれるほど大きい。俺ちゃんはそんなに目は悪くはないし、印刷することも稀にしかなく、別に印刷結果と画面の内容の大きさが一致しなくても一向に構わない。
…実験しておいてなんですが。俺ちゃんは常用しないことにした。。

  1. HiDPI とは:
    一般的なディスプレイ製品に比べ、画面密度がとても高い高精細な表示が可能であるディスプレイ製品のことを指す。日本語では "高DPI" とも言う。(補足: 当然ながら、そのディスプレイに出力するビデオカードの性能も関係する)
    具体的にディスプレイの方のスペックとしては、 8 〜 16 インチ程度の小型ディスプレイにも関わらず 4K, 5K (または UHD-1 など)クラスに匹敵する大きな解像度を持っていたり、 1インチ中の画素数を表す DPI (より正確には PPI だが、昔からの慣例的に DPI の方が多用される)が 192 とか伝統的な 96 に比べてずっと大きな値がスペック表に書かれていたら HiDPI ディスプレイであると言えるだろう。
    誤解してほしくないのは、「4K であれば HiDPI」というのは間違いである点だ。大型テレビやディスプレイなどでは画面が大きいので、その分だけ多くの画素で構成されている。言い換えると、大きな解像度が必須となる。これは別に特別なことではなく、サイズに比例して解像度は高くなるのは当たり前のことだ。なので高密度とは言えないような製品も実際に販売され、市場に出回っている。製品によっては さも高精細であるかのような紛らわしい誇大広告を打つものも…。画素密度の指標である DPI/PPI の表記なら、こういったごまかしが効かないので偽物を見分けることができ、有用だ。
    もうひとつ、 HiDPI に欠かせないのは論理ピクセルのサポートである。論理ピクセルとは実際のハードウェアの画面の画素数(物理ピクセル数、あるいはデバイス・ピクセル数)とは別に仮想的な画素数のバッファを用意しておいて、"スケール" と呼ばれる値に応じて物理ピクセルへとマッピングする手法だ。これが高精細ディスプレイでも、各種 UI を小さくなりすぎないように表示できるかどうかの鍵となっている。

  2. 拡大だって? DPI を大きくしたら内容物は普通、小さくなるんじゃないの?:
    賢明な読者なら、この ごもっともな疑問が浮かんでくるはずだ。DPI を大きくするということは、 1 インチという固定の幅に画素がより多く含まれるのだから、内容物は以前より小さく見えるはずだ。例えば 96 dpi の画面に 96 ピクセルの画像を表示したときと、120 dpi の画面に同じく 96 ピクセルの画像を表示したときでは、同じ 1 インチなのに後者はドットが余ってしまうだろう。それは画面を見る者からすれば、画像が縮小されたように表示されることを意味する。だが、 [カスタムDPI設定] においては現実はその逆だ。なぜだろうか?
    要点はここで言う DPI画面の、つまりハードウェア上の DPI を変更するものではない ということだ。前述したように、これは単に フォントを映す際のスケーリングに使用する指標 に過ぎない。言い換えると、これは "指定した DPI に合わせてスケーリングを行う"、もっと言えば "画面の正しい DPI をここへ入力すれば正しくスケーリングされる" という意味だ。その "正しい DPI" とは、出力装置が本来持つ DPI のこと。例えばディスプレイであれば "13.3インチ・ワイド" のような物理的な大きさが決まっており、それと解像度(総ドット数)から DPI 値が算出できる。メーカーによってはこの DPI(あるいは PPI )をスペック表に明記している優秀なところもある。
    その本来の DPI 値をここへ入力した場合に、 WYSIWYG(見たままが得られる、つまり印刷時の大きさと画面上の大きさがピタリと一致する) を再現できるような大きさになるよう、計算され、スケーリングされるという意味だ。

  3. ウィジェットとは:
    "小型装置" の意味の英単語。より厳密には "グラフィカル・ウィジェット"、あるいは "GUI ウィジェット" と呼ばれる。これは主に Linux における呼び方だ。 Windows の開発者用語では "コントロール"、あるいは "コンポーネント" などと呼ばれることが多い。この ウィジェット については例えば以下で解説されている。
    https://ja.wikipedia.org/wiki/ウィジェット_(GUI)
    混同しやすいが、 Web 界隈や Android スマートフォン等の "ウィジェット" とはまったく別で、関係がない。前者は Webページの埋め込み部品を再利用しやすくまとめたもの。後者は アプリケーションの一部機能をデスクトップ画面からすぐさま確認できるように埋め込まれたもののことを指す。(e.g. 時計, 天気予報, カレンダー, ニュース速報 など)
    後者に似たようなものは Windows では "ガジェット" だ。 Linux では例えば Conky が挙げられるだろう。なお、 MARVEL のシャドウキャットことケイト・プライドとも関係がない。

  4. UI スケーリング:
    User Interface を拡大する機能のこと。Xfce 公式ヘルプでは ウィンドウ・スケーリング(Window Scaling) と記載されている。これは主にウィンドウを構成している各種ウィジェット(タイトルバー, メニュー, ボタン, フォームなど)を拡大する。ウィンドウを管理する ウィンドウ・マネージャー の基盤となっているライブラリが提供している機能である。 Xfce デスクトップ環境においては GDK という GTK+3 の画面描画に関するライブラリによって提供されており、 WindowScalingFactor プロパティ, および GDK_SCALE 環境変数, gdk_window_get_scale_factor() API関数、およびその後継 gdk_monitor_get_scale_factor() API関数 がその実体である。 GDKGNOME デスクトップ環境でも採用されているライブラリだ。
    スケーリング可能な倍率が整数倍であることから、しばしば 整数スケーリング とも呼ばれる。(ただし、これは手法を指している)
    この分野の先駆けである Retina ディスプレイ の初期の実装では 2 倍固定であったため Pixel Doubling などと呼ばれることもある。 4K や 5K といった超高解像度・高精細ディスプレイでは 3 倍以上のスケールになるが、その場合は Pixel Replication (ピクセル・レプリケーション、すなわち拡大に伴いピクセルが複製されるという意味)と呼ばれることも。少々この辺りの技術用語は混沌としているようだ。

  5. UI スケーリングとディスプレイ設定のスケーリングの違い:
    賢明な読者なら、先に紹介したディスプレイ設定の スケール と同じなのか? という疑問が湧いてくるだろうが、 答えは No だ。ディスプレイ設定の方では内部では xrandr というコマンドの --scale オプションを用いてスケーリングを設定しているようだが、この方法は --transform オプションを簡易的に使用するもので座標変換によって 拡大/縮小 処理を施している。拡大時の穴埋めにはバイリニア法(または二アレスト・ネイバー法)での補間が行われる。が、これらが拡大率によっては、かなりぼやけたような画面を産み出す原因となってしまっているようだ。
    一方、 [ウィンドウ拡大縮小] による UI スケーリングGDK (GIMP Drawing Kit) と呼ばれる GTK+3 以降のグラフィック・ライブラリに備わったスケーリング機能がその実装である。これは最終的に OpeGL, Wayland などの実際の描画を担当するバックエンドへレンダリング処理を任せるが、その際 論理ピクセル を用いて GPU も動員したスケーリングを行っているため、 より綺麗な仕上がりになるようだ。よりシンプルな整数スケーリング・アルゴリズムを採用しているのもこれに寄与している。
    論理ピクセルについては以下が参考になるだろう。
    https://toha3.fromation.co.jp/archives/1230
    "ウィンドウ" と名に付く通り、ウィンドウ, ウィジェット などの UI について拡大処理するのみだが、その中にはフォームやテキストボックスなどの画面を構成する主な部品も含まれるため、結果的には画面全体が拡大したような表示になる。ただし、本文中でも触れるが GDK が用いられていないアプリケーションやスケーリングの値を無視するアプリケーションがあると、それには効果が及ばない。

  6. 問題が起きる可能性とは?:
    この方法を取った場合、それは "HiDPI ディスプレイかどうか自動判定される(-1) 設定からマニュアル設定(1.5など)に切り替える" ことを意味する。これは特にマルチ・モニター構成にしていて、 HiDPI ディスプレイと 非 HiDPI ディスプレイ(つまり FullHD 以下の普通のディスプレイ)を混在させたときに問題が起こるだろう。それぞれの画面密度の違いに合わせて自動的にスケールを変えることができなくなってしまうのだ。
    …ただし、 Xfce に於いては どちらにせよマルチ・モニター対応が弱いため、このような混在する環境下での完璧な設定ができないので、実質的には問題はないと思われる。…少なくとも当面は。
    詳細に関しては本記事内の 🔶 おまけ①:マルチディスプレイ環境について 項目を参照せよ。
    それよりも もっと重要なのは、この機能自体が現在 Thunderbird では 非推奨(サポート対象外) とされている点だ。すなわちデフォルト値の -1.0 以外に設定していると、将来的には動作しないか、最悪の場合思わぬ不具合を引き起こす可能性がある。

  7. XDPI 指定は何故フォントのみなの?:
    この機能が実装された当時の環境では PC が扱うデータの中ではテキストが最も重要であり、中心だった。最終出力が印刷になるにしても、画面に表示になるにしても、先ず "テキストがきちんとレイアウトされること" が重要視された。グラフ、図などは無い場合も多く、有る場合も全てがテキストに合わせて調整され、配置される仕組みだ。これは主要なユーザー・インターフェイスが GUI に移行する前後の CUI から育まれただ文化・価値観に由来するところも大きい。
    今では当たり前だが、当時最新のフォントはベクター形式から "ラスタライズ" と呼ばれる手法で格子状のドットで構成されたビットマップに変換され、バッファに複写された。それが最終的にはアナログ・モニター画面、あるいはドット・インパクト・プリンターで描画される。 DPI の概念はそれらを包括的に扱うために用いられたのだ。

  8. DPI と PPI について
    既に説明済みだが、 DPI は "Dots Per Inch" の略だ。対して PPI ... すなわち "Pixel Per Inch" という言い方もある。どちらも画素(画面などを構成する最小単位)が 1インチ中にどの程度詰まっているのか、を表す… つまり画面密度を表す用語だ。しかし、この 2 つの用語について Web で検索すると、かなり混乱した答えが散見される。 2 つは同じで言い方の違いだけだという者。いや DPI は印刷用語で PPI は画面だという者。いやいや、画面ではなく、画像の単位だという者。中には DPI は色を持たず、 PPI は色情報を持つのだという者も。解像度との混同も。…いろいろ書かれていて、いったいどれが本当なのか? 初学者はひどく困惑するだろう。そこで Linux 技術者向けに、このあたりを詳しく説明しておこうと思う。ちょっと長くなりそうなので後日、別記事として記載する予定だ。
    取り急ぎ、ここでは結論だけを述べておくと。画面の画素を指す場合は PPI の方がより正しく、DPI も同じ意味で使われるが、これは昔から慣例的に UNIX 界隈などで使われ続けているだけ… とだけ理解しておいて貰えればよいと思う。

  9. ほぼ…とは? 理論上は…とは?:
    残念ながらこれは完璧ではない。既に述べた通り、この DPI 値は近似値に過ぎないのでフォント・サイズが大きくなると、それにつれて誤差が大きくなる可能性が高まるからだ。あくまで目安とすると良いだろう。この辺りは悔しいが Mac に一日の長があると言わざるを得ない。

  10. フォントのサイズを表す pt について:
    pt はフォント・サイズを表す一般的な単位。"ポイント" と読む。これは Windows, macOS, Linux など OS の違いを問わない共通的な単位である。1 pt は 1/72 インチと定義されている。計算すると約 0.0352777 mm 。 10pt = 3.52777 mm。 72pt = 25.4 mm。ただし、実際には各フォントには上下左右に余白がある。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?