带有集成 optipng 或 pngcrush 的截图工具

带有集成 optipng 或 pngcrush 的截图工具

这是

如何获得最大程度压缩的截图?

optipng是否有已包含的截图工具 pngcrush可以最小化 png 截图的文件大小?

我个人比较喜欢Shutter,但是任何能够创建优化 png 的截图工具都很棒。

也许有可用的插件?

答案1

如果你最喜欢的工具是“快门”您可以尝试为其创建一个小插件。

为快门创建插件。

1)确保您已经安装了 optipng,或者使用以下命令安装:

  • sudo apt-get install optipng

2)如果快门正在运行,请将其关闭或杀死。

  • pkill shutter

3)为插件创建一个文件夹并赋予其正确的权限。(例如:optipngplugin)

  • sudo mkdir /usr/share/shutter/resources/system/plugins/shell/optipngplugin

  • sudo chmod 755 /usr/share/shutter/resources/system/plugins/shell/optipngplugin

4)创建脚本(例如:optipngplugin)

  • gksudo gedit /usr/share/shutter/resources/system/plugins/shell/optipngplugin/optipngplugin

5)将此内容放入脚本中:

#!/usr/bin/env bash
TEXTDOMAIN=shutter-plugins
TEXTDOMAINDIR=$SHUTTER_INTL
PLUGIN_NAME=$"OptiPNG Plugin"
PLUGIN_SORT=$"Recompress"
PLUGIN_TIP=$"OptiPNG is a PNG optimizer that recompresses image files to a smaller size"
PLUGIN_EXT="image/png"
if [[ "${1}" = "name" ]];then
    echo "${PLUGIN_NAME}"
    exit 0
elif [[ "${1}" = "sort" ]];then
    echo "${PLUGIN_SORT}"
    exit 0
elif [[ "${1}" = "tip" ]];then
    echo "${PLUGIN_TIP}"
    exit 0
elif [[ "${1}" = "ext" ]];then
    echo "${PLUGIN_EXT}"
    exit 0
fi
FILE="${1}"
#LOGO="/usr/share/shutter/resources/system/plugins/shell/optipngplugin/optipngplugin.png"
optipng -o7 "${FILE}"
exit 0

在我的例子中,我选择 OptiPNG 的优化级别为 Maximun(-o7)(非常慢),并添加了一张图片作为徽标。

手册页

在此处输入图片描述

笔记: 根据需要随意更改脚本

6)保存更改并赋予权限。

sudo chmod 755 /usr/share/shutter/resources/system/plugins/shell/optipngplugin/optipngplugin

7)在我的例子中,我使用 gimp 编辑了一个 png 徽标,并保存为“optipng插件.png”在我的桌面上。

在此处输入图片描述

8)将徽标复制到插件目录(赋予其与插件相同的名称.png)并赋予正确的权限:

sudo cp /home/user/Desktop/optipngplugin.png /usr/share/shutter/resources/system/plugins/shell/optipngplugin/optipngplugin.png

sudo chmod 644 /usr/share/shutter/resources/system/plugins/shell/optipngplugin/optipngplugin.png

9)测试插件。打开快门并截取桌面的屏幕截图。

在此处输入图片描述

在屏幕截图中单击右键,然后单击“运行插件...”,然后选择从列表中选择“OptiPNG 插件”。

在此处输入图片描述

10)运行插件来重新压缩您拍摄的屏幕截图。

在此处输入图片描述

笔记:如果你需要在脚本中添加一些内容或进行一些更改,你可以使用此命令运行 shutter 来强制它重新加载所有插件

  • shutter --clear_cache

希望有帮助。

相关内容