第 3 章 开始使用GIMP的第一步

1. 基本概念

图 3.1. Wilber,GIMP吉祥物

Wilber,GIMP吉祥物

Wilber 构造工具包(docs/Wilber_Construction_Kit.xcf.gz)允许您赋予吉祥物不同的外观。这是 Tuomas Kuosmanen(tigertATgimp.org)的作品。

本节简要介绍GIMP中使用的基本概念和术语。这里介绍的概念在别处有更深入的解释。除了少数例外,我们避免了大量链接和交叉引用使本节变得混乱:这里提到的所有内容都非常高级,您可以轻松地在索引中找到它。

图像

图像是GIMP使用的基本实体。粗略地说,一个“图像”对应一个单一的文件,例如一个 TIFF 或 JPEG 文件。您还可以将图像视为对应于单个显示窗口(尽管实际上可以让多个窗口都显示相同的图像)。即,一个窗口不可能显示多个图像,或者一个图像没有窗口来显示。

一个GIMP图像可能是一个相当复杂的东西。与其把它想象成一张上面有图片的纸,不如把它想象成一堆纸,称为“图层”。除了一堆图层之外,GIMP图像还可能包含一个选择蒙版、一组通道和一组路径。事实上,GIMP提供了一种将任意数据片段(称为“寄生虫”)附加到图像的机制。

在GIMP中,可以同时打开多个图像。尽管大图像可能使用数兆字节的内存,但GIMP使用复杂的基于图块的内存管理系统,允许GIMP优雅地处理非常大的图像。但是,仍存在限制,拥有更多可用内存可能会提高系统性能。

图层

如果一个简单的图像可以比作一张纸,那么一个带有图层的图像就像一堆透明的纸叠在一起。您可以在每张纸上绘图,但仍然可以通过透明区域看到其他纸的内容。您还可以相对于其他纸移动一张纸。老练的GIMP用户经常处理包含许多层,甚至几十层的图像。图层不必是不透明的,也不必覆盖图像的整个范围,因此当您查看图像的显示时,您可能看到的不仅仅是顶层:您可能会看到许多图层的元素。

分辨率

数字图像由方形像素网格组成。每张图像都有一个在两个维度上测量的大小,例如 900 像素宽 x 600 像素高。但是像素在物理空间中没有固定的大小。为了设置要打印的图像,我们使用一个称为分辨率的值,定义为图像大小(以像素为单位)与其在纸上打印时的物理尺寸(通常以英寸为单位)之间的比率。大多数文件格式(但不是全部)都可以保存这个值,表示为ppi—每英寸像素数。

打印文件时,分辨率决定了图像在纸上的大小,因此决定了像素的物理大小。相同的 900x600 像素图像可以打印为一张 3x2 英寸的小卡片,几乎看不到像素—或者打印为具有大而厚实像素的大海报。

从相机和移动设备导入的图像往往具有附加到文件的分辨率。分辨率通常为 72 或 96 ppi。重要的是要认识到,这个分辨率是武断的,是出于历史原因而选择的。您可以随时使用GIMP更改分辨率—这对实际图像像素没有影响。此外,对于在线显示图像、移动设备、电视或视频游戏等用途—简而言之,任何非打印用途—分辨率的值毫无意义,并被忽略。相反,图像通常显示为每个图像像素符合一个屏幕像素。

通道

通道是像素颜色的单个分量。对于GIMP中的彩色像素,这些分量通常是红色、绿色、蓝色,有时有透明度 (Alpha)。对于灰阶图像,它们是灰色和Alpha;对于索引彩色图像,它们是索引和Alpha。

图像中所有像素的任何一种颜色分量的整个矩形阵列也称为通道。您可以使用通道对话框查看这些颜色通道。

显示图像时,GIMP将这些分量放在一起以形成屏幕、打印机或其他输出设备的像素颜色。某些输出设备可能使用不同的红色、绿色和蓝色分量。如果是这样,当显示图像时,GIMP的通道将转换为适合设备的通道。

当您处理需要以一种特定颜色进行调整的图像时,通道会很有用。例如,如果您想从照片中去除“红眼”,您可以使用红色通道。

您可以将通道视为允许或限制通道所代表颜色输出的蒙版。通过对通道信息使用过滤器,您可以在图像上创建许多不同且微妙的效果。在颜色通道上使用过滤器的一个简单示例是通道混合器过滤器。

除了这些通道之外,GIMP还允许您创建其他通道(或更准确地说,通道蒙版),这些通道显示在通道对话框的下部。您可以创建一个新通道或保存选区为一个通道(蒙版)。有关通道蒙版的更多信息,请参阅蒙版上的词汇表条目。

选区

Often when modifying an image, you only want a part of the image to be affected. The “selection” mechanism makes this possible. Each image has its own selection, which you normally see as a moving dashed line separating the selected parts from the unselected parts (the so-called “marching ants” ). Actually this is a bit misleading: selection in GIMP is graded, not all-or-nothing, and really the selection is represented by a full-fledged grayscale channel. The dashed line that you normally see is simply a contour line at the 50%-selected level. At any time, though, you can visualize the selection channel in all its glorious detail by toggling the QuickMask button.

学习如何有效地使用GIMP的一个重要组成部分,是获得做出好的选区的艺术——选区仅包含你所需要的。因为选区处理非常重要,所以GIMP提供了许多工具来完成它:各种选区工具、选区操作菜单、以及切换到快速蒙版模式的能力,在这种模式下,您可以将选区通道视为是一个颜色通道,从而“绘制选区”。

撤销

当你犯错时,你可以撤消它们。您对图像所做的几乎所有操作都是可撤销的。事实上,如果您认为它们被误导了,您通常可以撤消您最近所做的大量事情。GIMP通过保留您的操作历史记录使这成为可能。但是,这段历史记录会消耗内存,因此可撤销性不是无限的。有些操作使用很少的撤消内存,因此您可以在从历史记录中删除最早的操作之前执行数十次操作;其他类型的操作需要大量撤消内存。可以配置GIMP每个图像的允许撤消历史的内存量,但在任何情况下,您应该始终能够撤消至少 2-3 个最近的操作。(不可撤销的最重要的操作是关闭图像。因此,如果您对图像进行了任何更改,GIMP会要求您确认是否确实要关闭图像。)

插件

您对GIMP中的图像所做的许多(可能是大部分) 操作都是由GIMP应用程序本身完成的。然而,GIMP也大量使用了“插件”,这些插件是与GIMP交互非常密切的外部程序,能够以非常复杂的方式处理图像和其他GIMP对象。许多重要的插件都与GIMP捆绑在一起,但也有许多可以通过其他方式获得。其实,对于不上GIMP开发团队网站的人来说,写插件(和脚本)是为GIMP添加新功能的最简单的方法。

滤镜菜单中的所有命令、以及其他菜单中的大量命令,实际上都是作为插件实现的。

脚本

除了插件(用 C 语言编写的程序)之外,GIMP还可以使用脚本。现有的大多数的脚本是用一种叫做 Script-Fu 的语言编写的,这是GIMP独有的(对于那些关心的人来说,它是一种叫做 Scheme 的类 Lisp 语言的变种)。也可以用 Python 或 Perl 编写GIMP脚本。这些语言比 Script-Fu 更灵活、更强大;它们的缺点是它们依赖于软件,不会自动与GIMP打包在一起 ,因此不能保证它们在每个GIMP安装中都能正常工作。