Linux 系统中发博客必备的五大图片处理神器
发博客时,总免不了要用图片说话。经过长时间的磨合,在 Linux 桌面系统下有几款图片处理软件我已经用得比较顺手了。这几款软件在 Linux 世界使用广泛,各个 Linux 发行版的软件仓库中都有自带的安装包,而且这几款软件运行稳定、界面美观。特在这里推荐给大家。
请看我的桌面,左边的 Luancher 中下面的五个图标就是我今天要介绍的五款图片处理工具:
一、截图工具 gnome-screenshot
这个软件不用自己安装,它是 Gnome 桌面自带的截图软件,一般在 Linux 系统安装完成后就自动安装了,它的软件名是 gnome-screenshot,中文名就叫截图,很直接。虽然 Linux 下还有很多其它更优秀的截图软件,但是我认为这个系统自带的已经完全够用了。而且很好用。
使用该工具甚至都不需要特别运行它,只需要记住 Gnome 桌面的几个快捷键就足够了,这几个快捷键分别如下:
1. PrintScreen 键:直接按下键盘右上方的“Print Screen”键,就可以对整个屏幕进行截图,“咔擦”一声之后,就会跳出保存图片的对话框,非常方便。
2. Alt + PrintScreen 键:如果只需要对当前窗口进行截图,按下 Alt + PrintScreen 即可。
3. Shift + PrintScreen 键:如果只想对某个区域进行截图,按下 Shift + PrintScreen 键,然后鼠标指针就变了形状,按住鼠标左键拖动,选择屏幕上的哪个范围就可以对哪个范围进行截图。
小技巧:使用快捷键截图时,往往难以截下如菜单项、下拉选框等弹出式界面里的内容。要截取这些内容,就不能使用上面的快捷键,必须打开截图软件,并设置延迟几秒后截图,然后打开菜单进行操作,设定的延迟时间一到,就把菜单、下拉选框中的内容截下了。
二、位图处理软件 GIMP
这款软件可以算得上是 Linux 系统下的 Photoshop,功能强大。正是因为功能强大,所以要驾驭它必须得下点功夫。由于本人以前有 Photoshop 基础,所以上手该软件也不算难。该软件启动后的初始界面可能不太符合大家的习惯,如下图:

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

三、矢量图绘制软件 Inkscape
先来看看 Inkscape 的界面,功能很强大的说:

为什么我这里要介绍一个位图处理软件,然后又介绍一个矢量图绘制软件呢?那是因为位图处理和矢量图处理还是有区别的。举例说明:比如我经常要在我截下的图片中,重点标出某个命令或菜单,这时我习惯在目标上画一个红色的线框表示强调。对于画框这么一件简单的事,用 Inkscape 就很方便,在矢量图绘制软件中,画框就是画框,画完框后可以改变这个框的边线颜色及样式,可以改变它的填充颜色及样式,可以拖动它的位置,可以改变它的大小,但是在位图处理软件中,就得换一种思考模式,在位图处理软件中,要画框只能先建立一个矩形的选区,然后对这个选区进行描边和填充,还可以对选取进行羽化,这样可以得到一个模模糊糊的框框,一旦描边和填充结束,则这个框框就再不能更改。所以 Inkscape 适合做添加框框、文字这样的工作,而 GIMP 适合做对选区羽化、非规则区域切图、添加阴影和发光这样的工作。在我的 Java 博客中,有一个连连看游戏的实现,其中的图片就是用 GIMP 处理的,博文地址:http://www.blogjava.net/youxia/archive/2014/02/14/409871.html。
四、一款更适合程序员使用的示意图绘制软件 Dia
Dia 功能也非常强大,它最大的优势是它里面内置很多图像元素,非常适合画流程图、UML 图等各种示意图。界面如下:

上面几个类图是我随便乱画的,就是体现一下 DIA 的效果,里面的背景颜色没有特殊意义。
五、隆重推荐一款 UML 建模工具 umbrello
为了找一款好用的的 UML 建模工具我是花了不少的心思,好的工具都要钱,比如 Rose、Enterprise Architecture、Microsoft Visual Studio 等等;不要钱的工具,品质总是不那么令人满意。经过多方测试后,我最终选择了 umbrello。这是 KDE 桌面自带的建模软件,但是在 Gnome 桌面下也可以完美运行。界面如下:

和 DIA 相比,它最大的优势就是支持 UML 的前向功能和逆向功能。也就是说,它可以从 UML 模型生成代码,也可以从我们写好的代码生成 UML 图。而 DIA 则是纯粹的绘图工具,UML 图就是图,它不能理解它的内涵,更不能生成代码。
好了,今天就写这么多,希望大家 Enjoy Linux。
(京山游侠于2014年10月20日发布于博客园,转载请注明出处。)
Linux 系统中发博客必备的五大图片处理神器的更多相关文章
- Linux系统编程博客参考
通过看前人的博客更易于把握知识要点 http://www.cnblogs.com/mickole/category/496206.html <Linux系统编程> http://www.c ...
- 绿色版Tomcat 启动 + 停止 + 随系统自动启动 - - 博客频道 - CSDN.NET
body { font-family: "Microsoft YaHei UI","Microsoft YaHei",SimSun,"Segoe UI ...
- 使用metaweblog API实现通用博客发布 之 本地图片自动上传以及替换路径
使用metaweblog API实现通用博客发布 之 本地图片自动上传以及替换路径 通过metaweblog API 发布博文的时候,由于markdown中的图片路径是本地路径,将导致发布的文章图片不 ...
- 基于.NetCore开发博客项目 StarBlog - (9) 图片批量导入
系列文章 基于.NetCore开发博客项目 StarBlog - (1) 为什么需要自己写一个博客? 基于.NetCore开发博客项目 StarBlog - (2) 环境准备和创建项目 基于.NetC ...
- 基于.NetCore开发博客项目 StarBlog - (10) 图片瀑布流
系列文章 基于.NetCore开发博客项目 StarBlog - (1) 为什么需要自己写一个博客? 基于.NetCore开发博客项目 StarBlog - (2) 环境准备和创建项目 基于.NetC ...
- Linux 桌面玩家指南:05. 发博客必备的图片处理和视频录制神器
特别说明:要在我的随笔后写评论的小伙伴们请注意了,我的博客开启了 MathJax 数学公式支持,MathJax 使用$标记数学公式的开始和结束.如果某条评论中出现了两个$,MathJax 会将两个$之 ...
- linux和android博客链接
1.Tracy Mcgrady的专栏冰山一角:linux和Android底层开发,主要是mtk系列点击打开链接 2.郁闷Wednesday:嵌入式linux 单片机 android,点击打开链接 3. ...
- .NET作品集:linux下的博客程序
博客程序架构 本博客程序是博主11年的时候参考loachs小泥鳅博客内核开发的.net跨平台博客cms,距今已有6年多了,个人博客网站一直在用,虽然没有wordpress那么强大,但是当时在深究.ne ...
- 使用linux服务器安装wordpress博客详细教程
前言 最近读了<软技能:代码之外的生存指南>,这本书给了我很大的启示.之前虽然知道作为一个程序员,应该拥有自己的博客,以便于提升自己的知名度,但是并没有了解的过于详细.这本书描写博客的作用 ...
随机推荐
- 从源码看Azkaban作业流下发过程
上一篇零散地罗列了看源码时记录的一些类的信息,这篇完整介绍一个作业流在Azkaban中的执行过程,希望可以帮助刚刚接手Azkaban相关工作的开发.测试. 一.Azkaban简介 Azkaban作为开 ...
- hash表长度优化证明
hash表冲突的解决方法一般有两个方向: 一个是倾向于空间换时间,使用向量加链表可以最大程度的在节省空间的前提下解决冲突. 另外一个倾向于时间换空间,下面是关于这种思路的一种合适表长度的证明过程: 这 ...
- JavaScript权威指南 - 对象
JavaScript对象可以看作是属性的无序集合,每个属性就是一个键值对,可增可删. JavaScript中的所有事物都是对象:字符串.数字.数组.日期,等等. JavaScript对象除了可以保持自 ...
- “RazorEngine.Templating.TemplateParsingException”类型的异常在 RazorEngine.NET4.0.dll 中发生,但未在用户代码中进行处理 其他信息: Expected model identifier.
这个问题是由于在cshtml中 引用了model这个单词 它可能和Model在解析时有冲突. 解决方法:把model换成别的单词就可以了.
- StrategyPattern (策略模式)
/** * 策略模式 * @author TMAC-J * 根据环境的不同选择不同的策略,把策略用接口抽象出来 */ public class StrategyPattern { interface ...
- VC中的MFC到底是什么?
1. 微软基础类库(英语:Microsoft Foundation Classes,简称MFC)是一个微软公司提供的类库(class libraries),以C++类的形式封装了Windows API ...
- JavaScript事件代理和委托(Delegation)
JavaScript事件代理 首先介绍一下JavaScript的事件代理.事件代理在JS世界中一个非常有用也很有趣的功能.当我们需要对很多元素添加事件的时候,可以通过将事件添加到它们的父节点而将事件委 ...
- 浏览器的兼容模式下的button中文字垂直方向不居中显示
<button style="cursor:pointer;vertical-align: middle;" >删除</button> 这时候垂直不居中. ...
- Linux系统中的Device Mapper学习
在linux系统中你使用一些命令时(例如nmon.iostat 如下截图所示),有可能会看到一些名字为dm-xx的设备,那么这些设备到底是什么设备呢,跟磁盘有什么关系呢?以前不了解的时候,我也很纳闷. ...
- 我们公司的ASP.NET 笔试题,你觉得难度如何
本套试题共8个题,主要考察C#面向对象基础,SQL和ASP.NET MVC基础知识. 第1-3题会使用到一个枚举类,其定义如下: public enum QuestionType { Text = , ...