WebP图像文件在网络上变得越来越普遍. 侏儒之眼(eog
)不支持开箱即用。有些浏览器会, 和图像魔术师以及仅仅安装webp
软件包(magick
/ convert -list format
)。
A简单搜索导致webp-pixbuf-加载器,但对于初学者来说可能不太容易找到并遵循该说明。
如何为 Eye of GNOME 添加 WebP 支持?
参考
Bugzilla 上的旧问题:Bug 700751 – 在 EOG 中支持“WebP”格式的图像。
GitLab 上较新的问题:无法打开 WebP 文件。
eog 使用 GDK-PixBuf,它本身并不支持大多数格式(出于可维护性考虑),而是支持由实际实现图像格式的库添加的格式。目前,libwebp(所讨论的库)不为 GDK-PixBuf 提供任何加载器,但链接的存储库(https://github.com/aruiz/webp-pixbuf-loader) 提供了一个。
Launchpad 上的下游gdk-pixbuf(重复于库) 和欧格。
在 Debian 上
答案1
2023-12-01 更新:为 GNOME 平台/SDK 添加了内置 WebP 支持。
2023-10-11 更新:libwebp 存在一个巨大的漏洞,CVE-2023-4863:
- https://www.magnetforensics.com/blog/how-to-detect-blastpass-inside-a-webp-file/
- https://security-tracker.debian.org/tracker/CVE-2023-4863
- https://ubuntu.com/security/CVE-2023-4863
对于 Ubuntu 22.04
sudo apt install webp-pixbuf-loader
对于 Ubuntu 20.04
按照以下步骤为 Eye of GNOME 添加对 WebP 的支持:
预构建
sudo apt install git meson ninja-build cd /tmp/ git clone https://github.com/aruiz/webp-pixbuf-loader cd webp-pixbuf-loader/ sudo ln -s /usr/lib/*/gdk-pixbuf-2.0/gdk-pixbuf-query-loaders /usr/bin/gdk-pixbuf-query-loaders # https://github.com/aruiz/webp-pixbuf-loader/issues/9#issuecomment-537437407
在 Debian/Ubuntu 上构建
meson builddir -Dgdk_pixbuf_query_loaders_path=/usr/lib/x86_64-linux-gnu/gdk-pixbuf-2.0/gdk-pixbuf-query-loaders ninja -C builddir
安装
sudo ninja -C builddir install
测试
wget -O /tmp/samplefile.webp "https://www.gstatic.com/webp/gallery/1.sm.webp"
eog /tmp/samplefile.webp
.webp 扩展名的默认应用程序(图片/webp網絡媒體類型
来自 EOG 问题eog.desktop 不包含 webp mimetype:
安装后https://github.com/aruiz/webp-pixbuf-loadereog 可以正确加载 webp 图像...但它仍未作为受支持的 mime 类型添加到 .desktop 文件中,因此默认情况下不提供打开这些图像的功能
修复这个问题:
# Get info
# If you didn't go through above steps:
wget -O /tmp/samplefile.webp "https://www.gstatic.com/webp/gallery/1.sm.webp"
xdg-mime query filetype /tmp/samplefile.webp # MIME type of the file: image/webp
xdg-mime query default image/webp # .desktop filename of the application which is registered
# Set open .webp with eog
xdg-mime default org.gnome.eog.desktop image/webp # Ask the desktop environment to make application the default
# application for opening files of type mimetype: Search on
# ~/.local/share/applications/ (user-wide) or /usr/share/applications/ (system-wide).
sudo update-mime-database /usr/share/mime # Apply system-wide
# Test
xdg-open /tmp/samplefile.webp
当然,org.gnome.eog.desktop
你想改成什么就改成什么。
bash 完成
要为 .webp 启用 bash-completion 支持,我们应该 /usr/share/bash-completion/completions/eog
手动()编辑(在 22.04 和 24.04 上测试)_filedir '@(webp|ani|?
或者只是:
sudo sed -i 's/_filedir '\''@(/_filedir '\''@(webp|/' /usr/share/bash-completion/completions/eog && . /usr/share/bash-completion/completions/eog; grep webp /usr/share/bash-completion/completions/eog
Ubuntu 22.10 提供开箱即用的 WebP 支持[1] . 针对 22.04你可以使用 PPA(如果您信任开发人员)。
也可以看看
- 无法打开 90% 的最近保存的图片(webp 格式)
- Linux 中哪些图像查看器支持“webp”图像格式?
- 基本 Ubuntu 桌面中的 URL 协议处理程序
- 这有前途的格式JPEG-XL/JXL由 ImageMagick 的jpeg-xl
- 放大镜,大概EOG 替代品。
答案2
Ubuntu 22.04
您只需安装webp-pixbuf-loader
EOG 并将其设为扩展的默认程序webp
。
sudo apt install webp-pixbuf-loader
Ubuntu 20.04
对于以前版本的 Ubuntu,您可以添加ppa:helkaluin/webp-pixbuf-loader
PPA 并按照类似的方式进行操作。
sudo add-apt-repository ppa:helkaluin/webp-pixbuf-loader
sudo apt update
sudo apt install webp-pixbuf-loader
答案3
我找到了这篇 OMG! Ubuntu! 文章:如何为 Ubuntu 22.04 LTS 添加 WebP 支持
只需添加ppa:helkaluin/webp-pixbuf-loader
PPA:
sudo add-apt-repository ppa:helkaluin/webp-pixbuf-loader
然后安装webp-pixbuf-loader
:
sudo apt install webp-pixbuf-loader
大功告成。我在 Ubuntu 20.04 上可以使用。
答案4
应该安装这些依赖包。
sudo apt install libwebp-dev libgdk-pixbuf2.0-dev libgtk-3-dev meson build-essential
然后,像这样构建并安装。
git clone https://github.com/aruiz/webp-pixbuf-loader
cd webp-pixbuf-loader/
meson builddir -Dgdk_pixbuf_query_loaders_path=/usr/lib/x86_64-linux-gnu/gdk-pixbuf-2.0/gdk-pixbuf-query-loaders
ninja -C builddir
sudo ninja -C builddir install