2.2. Điểm mới trong GIMP 2.0

Trước hết, một con số thống kê: cơ sở mã của GIMP bao gồm khoảng 230.000 dòng mã C, và hầu hết những dòng đã được viết lại khi "tiến hoá" từ bản 1.2 lên bản 2.0. Tuy nhiên, theo quan điểm người dùng, về mặt cơ bản giống như GIMP 1; các đặc điểm tương tự nhau đủ để người dùng GIMP 1 không cảm thấy bị lạc lõng. Là một phần của công tác tái cấu trúc lại chương trình, các nhà phát triển đã "dọn rác" mã chương trình rất nhiều, một công sức bỏ ra mà người dùng không thấy, nhưng lại tạo điều kiện thuận lợi cho việc "bảo dưỡng" chương trình cũng như làm cho việc bổ sung tính năng trong tương lai đỡ "đau khổ hơn". Do vậy, cơ sở mã lệnh của GIMP 2 được tổ chức tốt hơn rất nhiều và dễ "bảo dưỡng" hơn so với GIMP 1.2.

Các công cụ cơ bản

Các công cụ cơ bản trong GIMP 2 không khác biệt nhiều so với "người tiền nhiệm" GIMP 1. Công cụ " Chọn vùng theo màu" ở đây được thể hiện trong hộp công cụ của GIMP, nhưng trước đây đã có trong GIMP 1 ở dạng một menu tuỳ chọn trong menu Select. Công cụ Chuyển đổi (Transform) đã được chia ra thành một vài công cụ chuyên biệt: Xoay (Rotation), Thay đổi tỷ lệ (Scale), Làm méo (Shearing) và Phối cảnh (Perspective). Các lệnh về màu sắc được đưa vào các lệnh về lớp trong menu "Layer ->Colors", nhưng đây đơn thuần chỉ là việc "dọn dẹp" lại: trước đây chúng hiện diện trong menu Image (là điều bất hợp lý, vì chúng là các lệnh về lớp). Như vậy, không có các công cụ hoàn toàn mới trong phiên bản này, tuy nhiên có hai công cụ đã được tân trang lại hoàn toàn so với các phiên bản trước đây: công cụ Text (gõ chữ) và công cụ Path (đường dẫn). Phần dưới sẽ trình bày thêm về chúng.

Giao diện người dùng đối với các công cụ cũng được thay đổi một cách đáng kể. Hộp thoại Tool Options đã được điều chỉnh để không bị thay đổi kích thước khi có một công cụ được chọn. Hầu hết người dùng đều thấy rằng cửa sổ thay đổi kích thước khi chọn một công cụ là điều phiền nhiễu. Bây giờ theo mặc định hộp thoại Tool Options luôn được mở ra và được "gắn" dưới hộp công cụ, là nơi dễ dàng tìm thấy nó.

Tool options-Các tùy chọn công cụ

Trong hộp thoại Tool Options, nhiều công cụ có các khả năng mới không có trong GIMP 1. Nói một cách tóm tắt, dưới đây là những cải tiến đáng kể nhất.

Tất cả các công cụ chọn bây giờ đều có nút chế độ: Replace (thay thế), Add (thêm), Subtract (trừ ra) và Intersect (giao nhau). Trong GIMP 1, cách duy nhất để thay đổi chế độ của phép chọn là dùng các phím Ctrl hoặc Shift, điều rất dễ gây nhầm lẫn bởi những phím trên cũng có các chức năng khác. Ví dụ, bấm và giữ phím Shift khi dùng công cụ chọn Rectangle (hình chữ nhật) sẽ buộc hình chữ nhật thành hình vuông. Do vậy, để thêm một phép chọn hình vuông, trước tiên bạn phải bấm phím Shift, sau đó nhắp chuột, sau đó thả phím Shift, sau đó lại bấm phím Shift lại, thực hiện phép chọn bằng chuột, sau đó thả phím Shift. Việc làm như vậy bây giờ có thể thực hiện được một cách dễ dàng hơn.

Đối với các công cụ chuyển đổi, các nút bấm bây giờ kiểm soát được đối tượng nào (lớp, phép chọn hoặc đường dẫn) chịu ảnh hưởng của phép chuyển đổi. Ví dụ bạn có thể chuyển đổi một phép chọn hình chữ nhật thành nhiều hình dạng tứ giác khác. Phép chuyển đổi đường dẫn (path transformation) bây giờ dễ dàng hơn rất nhiều so với trước đây.

Các lệnh Fade out (làm mờ dần) và Paint Using Gradient (vẽ bằng gradient) bây giờ đã có trong tất cả các công cụ vẽ. Thực ra, tất cả các công cụ vẽ bây giờ đã có cọ vẽ, gradient và các thiết lập kiểu (pattern) riêng của chúng, khác với GIMP 1 trước đây chỉ có một thiết lập toàn cục áp dụng cho tất cả các công cụ vẽ. Bây giờ bạn đã có thể chọn các cọ vẽ khác nhau cho công cụ Pencil và công cụ Paintbrush, hoặc các kiểu khác nhau cho các công cụ Clone và Fill. Bạn có thể thay đổi các thiết lập này bằng cách dùng chuột chọn các nút lệnh (đây là điều rất hữu ích giúp nhanh chóng và dễ dàng chọn một cọ vẽ).

Giao diện người dùng

Những thay đổi dễ nhận thấy nhất trong GIMP liên quan đến giao diện người dùng. GIMP bây giờ dùng bộ công cụ đồ họa GTK2+ thay vì GTK+. Một trong những tính chất hay có được nhờ các thư viện mới là các hộp thoại có thể gắn được (dockable dialog), và sự định vị theo các thẻ (tab navigation) giữa các hộp thoại gắn trong cùng một cửa sổ -- một tính chất có trong một vài trình duyệt web phổ biến. GIMP 1 nổi tiếng về chuyện nó mở các hộp thoại ở bất kỳ nơi nào trên màn hình, GIMP 2 có thể nói rằng nó dùng các hộp thoại cố định. Các hộp thoại bây giờ có một menu tùy biến theo tab (tab-customization), cho bạn sự linh động tối đa trong việc tổ chức không gian làm việc.

Cửa sổ ảnh bây giờ đã có một số tính chất mới. Những tính chất này không nhất thiết phải được kích hoạt theo mặc định, nhưng có thể đánh dấu chúng như các tùy chọn trong menu Preferences->Interface->Image Windows. Ví dụ với tùy chọn Show Brush Outline (thể hiện đường viền của cọ vẽ), cho phép bạn xem đường viền của cọ vẽ khi đang sử dụng các công cụ vẽ. Trong phần phụ Appearance, bạn có thể bật/tắt việc hiển thị một thanh menu trên đầu các cửa sổ ảnh. Bạn có thể thiết lập một tùy chọn để làm việc ở chế độ toàn màn hình. Các tùy chọn xem cụng có ở tất cả các cửa sổ ảnh bằng cách nhắp chuột phải để mở ra một menu, sau đó chọn View. Cái gọi là menu "ảnh" cũng có thể dùng được bằng cách nhắp chuột vào một hình tam giác nhỏ ở góc trên bên trái của không gian vẽ. Thiết lập bạn chọn trong hộp thoại Preferences được dùng làm giá trị mặc định, và các tùy chọn bạn thiết lập từ một ảnh chỉ dùng cho ảnh đó. (Bạn cũng có thể bật/tắt chế độ toàn màn hình bằng cách dùng phím F11; phím Esc cũng giúp thoát chế độ toàn màn hình).

GIMP 2 có các phím tăng tốc (accelerator)  từ bàn phím giúp cho việc mở các menu dễ dàng. Nếu bạn thấy rằng di chuyển giữa các menu bằng chuột là phiền hà, giải pháp là có thể dùng bàn phím. Ví dụ, nếu có thanh menu, để tạo một ảnh mới chỉ cần nhấn Alt-F-N. Nếu không có thanh menu, nhấn Shift-F10 để mở menu ở góc trên bên trái, và dùng các phím mũi tên hoặc F và sau đó là N để tạo ra một ảnh mới. Các phím tăng tốc khác với các phím tắt (shortcut): các phím tăng tốc hữu ích trong việc di chuyển giữa các menu, trong khi đó các phím tắt gọi trực tiếp một mục nào đó trong menu. Ví dụ Ctrl-N là một tổ hợp phím tắt và là cách nhanh nhất để mở một ảnh mới.

Để tạo thuận lợi cho việc truy nhập vào các mục menu thường sử dụng nhất, GIMP cho ta các phím tắt từ các phiên bản trước đây. Khi một menu mở ra, bạn có thể di chuyển đến mục cần thiết và giữ tổ hợp phím tắt của nó. Tính chất này vẫn còn hiện diện nhưng không được kích hoạt ở chế độ mặc định trong GIMP 2, để tránh việc sơ ý gán lại các phím tắt đã có.

GIMP cũng có một số bộ "gắn phím" (key-binding) cho các menu của nó. Ví dụ bạn có thể thay thế bộ gắn phím mặc định của GIMP bằng bộ của Photoshop, bằng cách di chuyển tập tin "menurc" trong thư mục dữ liệu người dùng của bạn thành "oldmenurc", và thay thế "ps-menurc" thành "menurc".

Quản lý các Thẻ và Dock

GIMP 2 đưa vào một hệ thống hộp thoại có các thẻ để cho phép bạn điều chỉnh không gian làm việc của bạn theo ý muốn. Hầu hết các hộp thoại đều có thể kéo được vào một cửa sổ hộp thoại khác và thả vào đó để trở thành một bộ hộp thoại theo thẻ.

Hơn nữa, dưới cùng mỗi hộp thoại có một vùng có thể gắn được, kéo và thả vào đó để gắn các hộp thoại ngay vào nhóm thẻ phía dưới.

Viết tập lệnh

Python-fu hiện giờ là giao diện tập lệnh ngoài tiêu chuẩn trong GIMP 2. Điều này có nghĩa là bạn có thể sử dụng các chức năng của GIMP trong các tập lệnh Python, hoặc ngược lại dùng Python để viết các plug-in cho GIMP. Python tương đối dễ hiểu ngay cả đối với người mới bắt đầu, đặc biệt là nếu so sánh với ngôn ngữ Sheme tương tự như Lisp được dùng cho Script-Fu trong GIMP 1. Các kết nối với Python được tăng cường nhờ một bộ các lớp (class) dùng cho các thao tác thông thường, do vậy bạn không còn buộc phải tìm kiếm trong Cơ sở dữ liệu Thủ tục của GIMP để thực hiện các thao tác cơ bản. Hơn nữa, Python đã tích hợp các môi trường phát triển và một thư viện khổng lồ, và không chỉ chạy trên Linux mà cả trên Microsft Windows và Macintosh OS X. Hạn chế lớn nhất, đối với GIMP 2, là giao diện người dùng tiêu chuẩn của Python-fu không sử dụng hoàn hảo sức mạnh của ngôn ngữ Python. Giao diện này hiện nay được thiết kế để hỗ trợ các tập lệnh đơn giản, nhưng một phiên bản phức tạp hơn chính là mục tiêu cho việc phát triển trong tương lai.

Gimp-Perl không còn được phân phối chung với bản phân phối GIMP 3 tiêu chuẩn nữa, nhưng có ở dạng gói độc lập. Hiện tại, Gimp-Perl chỉ được hỗ trợ trên các hệ điều hành tương tự Unix. Nó bao gồm một ngôn ngữ viết tập lệnh đơn giản, và khả năng mã hoá các giao diện bóng bẩy hơn bằng cách dùng module Gtk2 perl. Khả năng xử lý điểm ảnh trực tiếp cũng có thông qua việc dùng PDL.

Script-fu, dựa trên Scheme, có chung mặt hạn chế như trước đây: không trực quan, khó dùng và thiếu một môi trường phát triển thực sự. Tuy nhiên, nó lại có một ưu điểm lớn so với Python-fu: các tập lệnh của Script-Fu được GIMP diễn giải một cách trực tiếp và không cần phải cài đặt phần mềm bổ sung. Python-fu đòi hỏi bạn phải cài đặt gói phần mềm cho ngôn ngữ Python.

Công cụ Text

Khó khăn lớn nhất đối với công cụ gõ chữ trong GIMP 1 là chữ không thể thay đổi được sau khi nó được thể hiện (render). Nếu bạn muốn thay đổi bất kỳ thứ gì trong chữ, tất cả những gì bạn có thể làm là "undo" và thử lại (nếu bạn đủ may mắn có đủ bộ nhớ cho lịch sử quay ngược lệnh, và sau đó tất nhiên là bạn cũng phải "undo" tất cả những gì mà bạn đã làm trong cùng thời gian đó). Trong GIMP 1.2 cũng có một plug-in là Dynamic Text (chữ động) cho phép bạn tạo ra các lớp chữ đặc biệt và giữ chúng vô thời hạn, ở một dạng có thể thay đổi được, nhưng nó có lỗi và sử dụng rất kỳ cục. Công cụ Text thế hệ thứ hai là sự phối hợp cải tiến của công cụ Text cũ và plug-in Dynamic Text. Hiện giờ tất cả các tùy chọn đều có trong hộp thoại Tool Options: kiểu chữ, kích thước chữ, màu chữ, canh thẳng, chống răng cưa, thụt lề, cách dòng. Để tạo ra một đối tượng chữ mới, nhắp chuột vào ảnh và một chương trình chỉnh sửa nhỏ xuất hiện. Chữ xuất hiện trên ảnh khi bạn chỉnh sửa (và dấu xuống dòng đã được quản lý một cách "nghiêm ngặt"!). Một lớp mới được tạo ra, lớp này thay đổi kích thước động để phù hợp với chữ bạn đã gõ vào. Bạn có thể nhập chữ trơn (plain text) từ một tập tin, và bạn thậm chí có thể làm những chuyện như viết từ phải qua trái giống như tiếng Ả Rập. Nếu bạn chọn một lớp chữ, nhắp chuột vào nó sẽ mở trình biên tập, và bạn có thể thay đổi chữ của bạn.

Công cụ Path

Công cụ Path (đường dẫn) thế hệ thứ hai này có một giao diện hoàn toàn mới. Sự khác biệt chính đầu tiên mà bạn nhận thấy là các đường dẫn không bị buộc phải khép kín. Một đường dẫn có thể được tạo thành từ nhiều đoạn cong không nối nhau. Sự khác biệt lớn tiếp theo là bây giờ công cụ đường dẫn có ba chế độ khác nhau: Design (thiết kế), Edit (chỉnh sửa) và Move (di chuyển).

Trong chế độ Design bạn có thể tạo ra đường dẫn, thêm các nốt vào một đường dẫn đã có và thay đổi hình dạng của một đường cong hoặc bằng cách kéo các cạnh của đường cong hoặc bằng cách kéo các "tay cầm" của một nốt.

Trong chế độ Edit bạn có thể thêm các nốt vào giữa các cạnh của đường cong, loại bỏ các nốt hoặc các cạnh, cũng như thay đổi hình dạng của đường cong. Bạn cũng có thể nối hai thành phần của một đường dẫn lại.

Ở chế độ thứ ba, Move, như bạn nghĩ, được dùng để di chuyển các thành phần của đường dẫn. Nếu đường dẫn của bạn có vài thành phần, bạn có thể di chuyển từng thành phần một cách độc lập. Để di chuyển tất cả các thành phần cùng một lúc, dùng phím Shift.

Có hai tính chất mới liên quan đến đường dẫn có trong GIMP 2.0. GIMP không thể nhập một ảnh SVG thành một ảnh raster, nhưng nó cũng có thể giữ các đường dẫn SVG không thay đổi giống như các đường dẫn của GIMP. Điều này có nghĩa là GIMP hiện giờ có khả năng hơn bao giờ hết trong việc bổ sung cho công cụ vẽ bằng vector ưa thích của bạn. Một tính chất khác khiến cho công cụ đường dẫn tốt hơn rất nhiều là việc đưa vào chức năng đánh dựa trên vector (vector-based stroking). Trong các phiên bản trước, đánh đường dẫn và các phép chọn chỉ là việc vẽ một đường đánh cọ vẽ (brush-stroke) chạy theo đường dẫn. Chế độ này hiện vẫn có, nhưng bây giờ đã có thể đánh một đường cong một cách chính xác, bằng cách dùng thư viện vector libart.

Các cải tiến khác

Tóm tắt một số cải tiến khác:

  • Khả năng chống răng cưa chất lượng cao ở một số chỗ -- đáng lưu ý nhất là đối với công cụ Text.

  • Các biểu tượng và menu có thể "thay da" (skinnable). Bạn có thể tạo ra các bộ biểu tượng riêng cho mình và áp dụng nó vào hộp công cụ bằng cách dùng tuỳ chọn menu "Preference->Interface". Một theme có tên là "small" cũng được đưa vào bản phân phối chuẩn.

  • Một ảnh có thể được lưu thành một mẫu tạm (template) và được dùng để tạo ra các ảnh mới.

  • Có bốn chế độ phối hợp chính cho các lớp nằm xếp lên nhau trong một ảnh: Hard Light, Soft Light, Grain Extract và Grain Merge.

  • Nếu có một phép chọn đang được kích hoạt, bạn có thể cắt ảnh trực tiếp về kích thước của phép chọn bằng cách dùng menu "Image->Crop".

  • Cũng như khả năng tạo ra các đường chỉ dẫn (guide), bây giờ trong GIMP đã có chức năng tạo lưới. Nó bổ sung cho chức năng đường chỉ dẫn và khiến cho việc xác định vị trí đối tượng dễ dàng hơn nhờ đó chúng có thể được canh thẳng hàng một cách hoàn hảo.

  • Hộp thoại Layers mạch lạc hơn, trong đó không có các chức năng bị ẩn đi và chỉ có thể truy cập được bằng cách nhắp chuột phải trên các ảnh thu nhỏ của các lớp xuất hiện ở đó như trước đây nữa. Bây giờ bạn có thể quản lý các lệnh về lớp một cách trực tiếp từ menu ảnh: các lệnh Layer Mask, Transparency, Transformation và Layer Color bây giờ nằm trực tiếp trong menu con của Layers.

  • Các bộ lọc hiển thị màu sắc hiện giờ đã có trong menu ảnh "View->Display Filters". Sử dụng chúng bạn có thể bắt chước lại được các giá trị gamma khác nhau, các độ tương phản khác nhau, hoặc thậm chí một cái nhìn thiếu màu (color deficient vision), mà không làm thay đổi ảnh gốc của bạn. Đây thực ra là một tính chất trong các phiên bản phát triển của GIMP từ lâu, nhưng chưa bao giờ đủ ổn định để được đưa vào phiên bản chính thức của GIMP trước đây.

  • Hộp thoại chọn màu có chế độ mới CMYK, liên quan với biểu tượng máy in.

  • Dữ liệu lưu trữ trong các thẻ EXIF của các máy ảnh số bây giờ được quản lý ở chế độ đọc và ghi đối với các tập tin JPEG.

  • Các ảnh động MNG bây giờ đã được hỗ trợ. Định dạng tập tin MNG có thể được coi như là ảnh PNG động. Nó có tất cả các ưu điểm của PNG so với GIF, ví dụ như nhiều màu hơn, 256 mức độ trong suốt, và có lẽ quan trọng nhất là, mất đi gánh nặng về bản quyền. Định dạng này là tiêu chuẩn web và tất cả các trình duyệt web phổ biến hiện nay đều hỗ trợ nó.

  • Gói phần mềm Gimp Animation hiện tại làm được chuyện bóc vỏ hành (onion-skinning), tính chất  bluescreen được thêm vào cũng như hỗ trợ âm thanh.

  • Một bộ lọc trộn kênh (channel mixer filter), trước đây có được từ web dưới dạng add-on, nay xuất hiện trong "Filters->Colors".