SVG 画像フォーマットをネイティブにサポート
GTK 4.22 で SVG 画像フォーマットがネイティブにサポートされます。GTK
GTK は GUI アプリの GUI を構築するためのライブラリーです。GNOME アプリでよく利用されているライブラリーですね。
GTK はクロスプラットフォームであり Linux 以外にも Windows 等で動作しますが、開発や配布にやや難易度の高さを感じてしまうかもしれません。
SVG
SVG(Scalable Vector Graphics)はベクター形式の画像フォーマットです。ベクター形式の画像フォーマットはあらゆる解像度に柔軟に対応できる特徴を持ちます。
VGA サイズの解像度で表示しても、4K サイズの解像度表示しても、ボヤけたり滲むような描画になりません。
ネイティブにサポート
さて今まで GTK は SVG 画像のレンダリングに gdk-pixbuf を通じ、librsvg を利用してラスタライズしてきました。GTK 4 ではシーングラフと分数スケーリングにより、早期のラスタライズを避けることで、より好ましい結果が得られます。
しかし librsvg はそれを実現するのに必要な API を提供していません。
そこで GTK 4 で SVG 画像フォーマットをネイティブにサポートすることになりました。
この成果により GtkSvg が登場しました。
GtkSvg は SVG アニメーションにも対応します。
