特别说明:要在我的随笔后写评论的小伙伴们请注意了,我的博客开启了 MathJax 数学公式支持,MathJax 使用$标记数学公式的开始和结束。如果某条评论中出现了两个$,MathJax 会将两个$之间的内容按照数学公式进行排版,从而导致评论区格式混乱。如果大家的评论中用到了$,但是又不是为了使用数学公式,就请使用\$转义一下,谢谢。

想从头阅读该系列吗?下面是传送门:

前言##

写博客时,总免不了要贴图片,有时是对屏幕进行截图,有时是自己画示意图,要求更高的时候,甚至还需要 GIF 动画或者屏幕录像,所以熟练掌握几个图片处理软件极其重要。在这里,我把我自己在 Linux 系统下使用到的运行稳定、界面美观、功能强大的图片处理工具介绍给大家。

录制 GIF 动画的工具 Peek##

这个工具 Ubuntu 官方软件仓库中没有,但是 PPA 中有。PPA是 personal package archive 的缩写,即个人维护的软件包,非 Ubuntu 官方维护的软件包。使用PPA,软件制作者可以轻松地发布软件,并且能够准确地对用户进行升级。Ubuntu用户使用 PPA 源将更加方便的获得软件的最新版本。关于PPA的详细情况,可以参考:https://help.launchpad.net/Packaging/PPA。针对 ubuntu 的用户,访问这个网站 https://launchpad.net/,搜索需要的软件,就可以得到该软件的PPA源。当然,对于很多开源软件,github 中也可以找到它。我们到 github 中搜索 peek,找到该软件,查看它的安装说明,如下图:

该说明中还是指导用户使用 PPA 进行安装。命令如下:

sudo add-apt-repository ppa:peek-developers/stable
sudo apt update
sudo apt install peek

Peek 的使用很简单,只需要把它的窗口拖动到要录像的区域,开始录制就行了。如下 GIF 动画:

重要的是,使用 Peek 录制的 GIF 动画文件比较小,适合发博客。顺便提一句,在 Windows 下好用的录制 GIF 动画的软件是 ScreenToGif,我也是在 github 下找到的。

Gnome 自带的截图工具 gnome-screenshot##

这个软件不用自己安装,它是 Gnome 桌面自带的截图软件,一般在 Linux 系统安装完成后就自动安装了,它的软件名是 gnome-screenshot,中文名就叫截图,很直接。虽然 Linux 下还有很多其它更优秀的截图软件,但是我认为这个系统自带的已经完全够用了。而且很好用。

使用该工具甚至都不需要特别运行它,只需要记住 Gnome 桌面的几个快捷键就足够了,这几个快捷键分别如下:

1、PrintScreen 键:直接按下键盘右上方的“Print Screen”键,就可以对整个屏幕进行截图,“咔擦”一声之后,就会跳出保存图片的对话框,非常方便。

2、Alt + PrintScreen 键:如果只需要对当前窗口进行截图,按下 Alt + PrintScreen 即可。

3、Shift + PrintScreen 键:如果只想对某个区域进行截图,按下 Shift + PrintScreen 键,然后鼠标指针就变了形状,按住鼠标左键拖动,选择屏幕上的哪个范围就可以对哪个范围进行截图。

小技巧:使用快捷键截图时,往往难以截下如菜单项、下拉选框等弹出式界面里的内容。要截取这些内容,就不能使用上面的快捷键,必须打开截图软件,并设置延迟几秒后截图,然后打开菜单进行操作,设定的延迟时间一到,就把菜单、下拉选框中的内容截下了。

功能更强大的截图工具 shutter##

使用sudo aptitude install shutter命令就可以安装。该工具比 Gnome 自带的截图工具要稍微强大一点,可以针对选区、窗口、工作区进行截图,还可以针对菜单进行截图。截图后,还可以通过运行插件的方式对图片应用简单的特效,比如我最喜欢的手撕纸效果。Shutter 的界面如下图:

运行插件的界面:

位图处理软件 GIMP##

使用sudo aptitude install gimp命令就可以安装。这款软件可以算得上是 Linux 系统下的 Photoshop,功能强大。正是因为功能强大,所以要驾驭它必须得下点功夫。由于本人以前有 Photoshop 基础,所以上手该软件也不算难。该软件启动后的初始界面可能不太符合大家的习惯,如下图:

不过没关系,通过窗口菜单中的单窗口模式选项,可以更改为以下界面:

更适合绘图板使用的工具 MyPaint##

同样使用sudo aptitude install mypaint即可安装。为什么说它更适合绘图板使用呢?因为它定义笔刷更自由。其界面如下图:

矢量图绘制软件 Inkscape##

使用sudo aptitude install inkscape安装。先来看看 Inkscape 的界面,功能很强大的说:

为什么我这里要介绍一个位图处理软件,然后又介绍一个矢量图绘制软件呢?那是因为位图处理和矢量图处理还是有区别的。举例说明:比如我经常要在我截下的图片中,重点标出某个命令或菜单,这时我习惯在目标上画一个红色的线框表示强调。对于画框这么一件简单的事,用 Inkscape 就很方便,在矢量图绘制软件中,画框就是画框,画完框后可以改变这个框的边线颜色及样式,可以改变它的填充颜色及样式,可以拖动它的位置,可以改变它的大小,但是在位图处理软件中,就得换一种思考模式,在位图处理软件中,要画框只能先建立一个矩形的选区,然后对这个选区进行描边和填充,还可以对选取进行羽化,这样可以得到一个模模糊糊的框框,一旦描边和填充结束,则这个框框就再不能更改。所以 Inkscape 适合做添加框框、文字这样的工作,而 GIMP 适合做对选区羽化、非规则区域切图、添加阴影和发光这样的工作。

示意图绘制软件 Dia##

使用sudo aptitude install dia进行安装。Dia 功能也非常强大,它最大的优势是它里面内置很多图像元素,非常适合画流程图、UML 图等各种示意图。界面如下:

上面几个类图是我随便乱画的,就是体现一下 DIA 的效果,里面的背景颜色没有特殊意义。

在线示意图绘制工具 Draw.io##

直接在浏览器的地址栏输入www.draw.io就可以使用该工具了,其界面如下:

当然,也可以直接下载它的桌面版进行安装,然后离线使用。桌面版界面如下:

估计也就是对在线版做了个简单的封装。

UML 建模工具 umbrello##

为了找一款好用的的 UML 建模工具我是花了不少的心思,好的工具都要钱,比如 Rose、Enterprise Architecture、Microsoft Visual Studio 等等;不要钱的工具,品质总是不那么令人满意。经过多方测试后,我最终选择了 umbrello。这是 KDE 桌面自带的建模软件,但是在 Gnome 桌面下也可以完美运行,使用sudo aptitude install umbrello就可以安装。界面如下:

和 DIA 相比,它最大的优势就是支持 UML 的前向功能和逆向功能。也就是说,它可以从 UML 模型生成代码,也可以从我们写好的代码生成 UML 图。而 DIA 则是纯粹的绘图工具,UML 图就是图,它不能理解它的内涵,更不能生成代码。

思维导图工具 XMind##

我试过好几个开源的思维导图工具,包括 vym、 freemind 及其分支 freeplane,最后发现界面最美观,且生成的图片最美观的,依然是 XMind。其官网是 https://www.xmind.net/。它是个开源软件,但同时也收费。除了官网,github 上也可以找到它。下载安装后,其界面如下:

视频录制工具##

要将我们的操作录制为视频,可以使用的软件比较多,有 recordmydesktop、simplescreenrecorder 和 kazam 可以用。前者在命令行使用,后两者都可以在图形界面下使用,并且在录制视频的同时还可以录制音频。这三个软件都可以使用sudo aptitude install安装。下面是后两者的界面截图:

版权申明##

该随笔由京山游侠在2018年10月01日发布于博客园,引用请注明出处,转载或出版请联系博主。QQ邮箱:1841079@qq.com

Linux 桌面玩家指南:05. 发博客必备的图片处理和视频录制神器的更多相关文章

  1. Linux 桌面玩家指南:18. 使用 Docker 隔离自己的开发环境和部署环境

    特别说明:要在我的随笔后写评论的小伙伴们请注意了,我的博客开启了 MathJax 数学公式支持,MathJax 使用$标记数学公式的开始和结束.如果某条评论中出现了两个$,MathJax 会将两个$之 ...

  2. Linux 桌面玩家指南:17. 在 Ubuntu 中使用 deepin-wine,解决一些依赖 Windows 的痛点问题

    特别说明:要在我的随笔后写评论的小伙伴们请注意了,我的博客开启了 MathJax 数学公式支持,MathJax 使用$标记数学公式的开始和结束.如果某条评论中出现了两个$,MathJax 会将两个$之 ...

  3. Linux 桌面玩家指南:16. 使用 CUDA 发挥显卡的计算性能

    特别说明:要在我的随笔后写评论的小伙伴们请注意了,我的博客开启了 MathJax 数学公式支持,MathJax 使用$标记数学公式的开始和结束.如果某条评论中出现了两个$,MathJax 会将两个$之 ...

  4. Linux 桌面玩家指南:15. 深度学习可以这样玩

    特别说明:要在我的随笔后写评论的小伙伴们请注意了,我的博客开启了 MathJax 数学公式支持,MathJax 使用$标记数学公式的开始和结束.如果某条评论中出现了两个$,MathJax 会将两个$之 ...

  5. Linux 桌面玩家指南:14. 数值计算和符号计算

    特别说明:要在我的随笔后写评论的小伙伴们请注意了,我的博客开启了 MathJax 数学公式支持,MathJax 使用$标记数学公式的开始和结束.如果某条评论中出现了两个$,MathJax 会将两个$之 ...

  6. Linux 桌面玩家指南:13. 使用 Git 及其和 Eclipse 的集成

    特别说明:要在我的随笔后写评论的小伙伴们请注意了,我的博客开启了 MathJax 数学公式支持,MathJax 使用$标记数学公式的开始和结束.如果某条评论中出现了两个$,MathJax 会将两个$之 ...

  7. Linux 桌面玩家指南:12. 优秀的文本化编辑思想大碰撞(Markdown、LaTeX、MathJax)

    特别说明:要在我的随笔后写评论的小伙伴们请注意了,我的博客开启了 MathJax 数学公式支持,MathJax 使用$标记数学公式的开始和结束.如果某条评论中出现了两个$,MathJax 会将两个$之 ...

  8. Linux 桌面玩家指南:11. 在同一个硬盘上安装多个 Linux 发行版以及为 Linux 安装 Nvidia 显卡驱动

    特别说明:要在我的随笔后写评论的小伙伴们请注意了,我的博客开启了 MathJax 数学公式支持,MathJax 使用$标记数学公式的开始和结束.如果某条评论中出现了两个$,MathJax 会将两个$之 ...

  9. Linux 桌面玩家指南:10. 没有 GUI 的时候应该怎么玩

    特别说明:要在我的随笔后写评论的小伙伴们请注意了,我的博客开启了 MathJax 数学公式支持,MathJax 使用$标记数学公式的开始和结束.如果某条评论中出现了两个$,MathJax 会将两个$之 ...

随机推荐

  1. 对JDK的深入理解

    今天对Java的jdk有了更加深入的理解: Java的jdk其实一共包含三部分内容: 1.工具包 2.类库 3.JRE jdk的全名:Java develop kit (java开发工具) jdk包含 ...

  2. Libevent教程001: 简介与配置

    本文内容大致翻译自 libevent-book, 但不是照本翻译. 成文时, libevent最新的稳定版为 2.1.8 stable. 即本文如无特殊说明, 所有描述均以 2.1.8 stable ...

  3. Spring Boot 使用 AOP 实现页面自适应

    鉴于复杂页面自适应的难度,一般会做几套模板分别适应手机.平板.电脑等设备.使用 Spring Boot 开发单体应用时,一般会使用 Thymeleaf 模板,那么可以使用 AOP 技术来实现页面自适应 ...

  4. redis缓存本地安装教程

    http://www.runoob.com/redis/redis-install.html

  5. 第七章 函数表达式和函数声明,关于this对象 ,私有作用域(function(){})() ,私有变量和特权方法

    一:函数表达式和函数声明 1:函数声明和函数表达式的区别 ①函数声明不需要分号结尾 ②函数声明有函数提升的特点 ③函数声明后面不能跟圆括号直接调用,因为javascript将function关键字当作 ...

  6. React从入门到放弃之前奏(3):Redux简介

    安装 npm i -S redux react-redux redux-devtools 概念 在redux中分为3个对象:Action.Reducer.Store Action 对行为(如用户行为) ...

  7. bzoj4476 [Jsoi2015]送礼物

    化简式子 $M>=m+ans*(r-l+k)$ 发现$M,m$确定时,总区间长度越小越好,于是假定右端点为最小值$M+ans*l>=m+ans*r+ans*k$, 右面都确定了,但最大值仍 ...

  8. spss汉化详解

    今天写一下关于SPSS的汉化以及激活码 下载spss: 安装过程比较简单,主要就是激活码: 9DNCAF2O3QVDV7FBIO696OO6GWLNXZPPRYTPWF2PPX7C8T6Y24LMVV ...

  9. MYSQL—— char 与 varchar的区别!

    一.char 和 varchar 的区别: 1)取值范围: char:取值范围:0~255 varchar:取值范围:0~65535 2)空间占用与速度: char: 定长字符串,占用空间大,速度快, ...

  10. 为什么说 Java 程序员到了必须掌握 Spring Boot 的时候?

    Spring Boot 2.0 的推出又激起了一阵学习 Spring Boot 热,就单从我个人的博客的访问量大幅增加就可以感受到大家对学习 Spring Boot 的热情,那么在这么多人热衷于学习 ...