2022/10/24

LibreOffice のレンダリングに Skia を使用するとどうなるのか 〜 縦書き書式の文書 (1)

LibreOffice Writer で縦書き書式の文書を作成し、ページ数が多くなってくるとスクロールやページの切り替えが重くなってくることがあります。時にはフリーズしたり強制終了してしまったりすることもあります。

改善する方法はないかとオプションの表示設定を確認してみるとグラフィック出力の項目に “すべてのレンダリングにSkiaを使用” というものがあることに気づきました。

Skia って何ですか?

詳しいことはよくわかりませんが、グラフィック出力に関連した設定らしいということで、これを有効にしたり無効にしたりして効果を検証してみました。

私のパソコンの環境は以下の通りです
Windows 11 Home 22H2
CPU: Intel Core i5-4690 (動作周波数: 3.5GHz、4コア)
グラフィックカード: NVIDIA GeForce GTX 1650 / 4096 MB GDDR5
LibreOffice 7.4.2.3

まずは Skia を無効にした状態にしてみます。

というか、もともとこの状態で使っていました。ハードウェアアクセラレーションは有効になっているので、この状態ならきっと動作も軽くなるはずだとは思っていたのですが、実際にはこの状態が一番動作が重くなっていました。ハードウェアアクセラレーションを無効にして確認してみましたが特に違いはありませんでした。

この状態で表示される文字はアンチエイリアシングの効きがやや弱くなるように見えました。

Skia を有効にしてみます。

この状態だとスクロールやページの切り替えは軽くなりました。設定項目を見るとハードウェアアクセラレーションが無効になっているように見えますが、この状態だと Vulkan というものが有効になっているらしいので、一種のハードウェアアクセラレーションが効いているのだと思われます。

Skia を有効にすることで動作は最も軽くなるということがわかりました。

さらに、この状態で表示される文字のアンチエイリアシングはやや強めになるようです。

カタカナの「」の文字の横棒の辺りを見るとにじみが強くなっているのがわかると思います。Skia の有無でフォントのレンダリングにも違いが出ているようです。

なお、グラフィック出力の項目にある「アンチエイリアシングを使用」という項目はフォントのアンチエイリアシングには全く影響はありませんでした。これは Draw などで描画されるグラフィック用の機能だと思われます。

「フォントリスト」の項目は文書内のフォントの表示には関係ないと思っていたのですが、念のためここも確認してみました。「表示フォントにアンチエイリアシングをかける」という項目を無効にすると、

UI の描画もすべてアンチエイリアシングが無効になりギザギザした文字になります。さらに、文書内のフォントの表示もアンチエイリアシングが無効になります。

描画の負荷は軽くなるかもしれませんが、かなり汚くなるのでお勧めはできません。

0 件のコメント:

コメントを投稿