Vẽ logo PFIEV bằng Inkscape
Giới thiệu về Inkscape:
Inkscape là một chương trình đồ họa chuyên dùng để vẽ các ảnh vector tương tự CorelDraw, Adobe Illustrator.
Ảnh vector là dạng ảnh mà khi phóng to không bị bể hạt, ngược lại với ảnh bitmap. Hình ảnh trong loại ảnh vector được tạo dựng từ sự phối hợp các họa tiết cơ sở, không như ảnh bitmap là sự phân bố các điểm ảnh mang các tính chất màu sắc, đậm nhạt khác nhau. Bạn có thể liên hệ khái niệm vector này với cái mà bạn đã học trong Đại số tuyến tính về không gian vector, các cơ sở, các vector độc lập tuyến tính.
Ảnh vector có ưu điểm không bị bể hạt khi phóng to, nhưng có khuyết điểm (do bản chất của nó) là không phù hợp với những hình ảnh có các mảng chuyển tiếp liên tục. Tức là, ảnh vector chỉ phù hợp với những hình ảnh với các đường nét, hình khối phân biệt như logo dưới đây, còn với ảnh thiên nhiên thì chỉ có ảnh bitmap thể hiện được.
Cho tới bây giờ, đa số các định dạng ảnh vector (như của CorelDraw, Adobe Illustrator …) hầu như chỉ tồn tại trong khâu thiết kế, khi ứng dụng vào mục đích cụ thể như đưa lên web, chèn vào các tài liệu, chia sè ảnh thì vẫn phải chuyển thành ảnh bitmap vì ngoài chương trình thiết kế ra, chẳng có chương trình nào chịu hỗ trợ chúng (ngoại trừ một số chương trình xem ảnh hỗ trợ đa định dạng).
Tuy nhiên, có một định dạng ảnh vector non trẻ đã vượt qua phần nào những giới hạn ấy. Đó là định dạng SVG (Scalable Vector Graphics). Nhưng có một điều hơi tếu là SVG vốn dĩ chẳng phải là loại file binary như các định dạng ảnh (nói chung) khác, thực ra nó chỉ là một file …text viết theo lối XML (Extensible Markup Language). Do vậy, bạn có thể tạo ra nó thông qua bất cứ chương trình text editor nào (Notepad chẳng hạn), miễn là bạn biết về code SVG (có thể học trên www.w3schools.com).
SVG ra đời với mục đích biểu thị đồ họa vector trên web mà máy tính nào cũng có trình duyệt web nên SVG portable hơn các dạng ảnh vector kia. Tuy thế điều đó vẫn chưa hoàn toàn vì phần nhiều máy tính bây giờ vẫn còn sử dụng trình duyệt Internet Explorer lạc hậu với version 6- chưa hỗ trợ SVG, trong khi các trình duyệt khác như Mozilla Firefox, Opera đều đã hỗ trợ sớm. Nhưng nói gì thì nói, tương lai của SVG là rất sáng sủa, hứa hẹn cùng với ứng dụng ngày càng phổ biến của web và chuẩn XML.
Thông tin thêm về SVG nằm ở http://www.w3schools.com/svg/svg_intro.asp.
Tại sao từ nãy giờ chỉ thấy tôi nói về SVG mà không thấy đả động gì về Inkscape? Vì SVG chính là dạng file mà Inkscape làm việc. Sử dụng Inkscape trong bài này như là một cách cổ vũ cho việc sử dụng Inkscape, do tính tiện ích của file SVG và do Inkscape là phần mềm nguồn mở, miễn phí (định dạng SVG cũng là định dạng mở, không thuộc riêng hãng nào như các định dạng của CorelDraw, Adobe Illustrator).
Inkscape có thể được download từ website www.inkscape.org. Việc cài đặt rất đơn giản do không phải bẻ khóa chi hết (miễn phí mà), chỉ có OK và Next.
Nào, bây giờ hãy mở Inkscape lên và bắt đầu bài tập thứ nhất. Nhớ maximize cửa sổ chương trình lên nhá (để đảm bảo không có nút nào bị che khuất)
Tutorial 1: Vẽ logo PFIEV
(PFIEV: Programme de Formation d’Ingénieurs Excellent au Vietnam: nơi tôi đang theo học)
Đầu tiên hãy hình dung, tính toán trước hình dạng, kích thước. Dựa vào hình mẫu, tôi đã đo được tỉ lệ kích thước như ở hình dưới (hãy xem trên thước, với đơn vị pixel).
Để trợ giúp cho việc vẽ chính xác theo một kích thước định trước, Inkscape cung cấp tính năng gọi là snap. Như đã làm quen hồi học AutoCAD, các bạn có thể hiều Snap là sự bắt dính, thu hút trỏ chuột vào một điểm cố định có vị trí mà ta mong muốn đưa được trỏ chuột đến. Tuy nhiên, snap của Inkscape không giống nhiều snap của AutoCAD.
Hãy xem qua các kiểu snap của Inkscape bằng cách vào File > Document Properties > Snap:
Object Snapping: Snap dựa vào một đối tượng đã có trên hình
Grid Snapping: Bản vẽ sẽ được đặt dưới một mạng lưới và snap dựa vào các nút lưới. Lưới này chỉ phục vụ cho snap khi thiết kế chứ không hiện ra trong bản vẽ kết quả.
Guide Snapping: Snap dựa vào những đường gióng ngang dọc gọi là guide. Chuột sẽ bị bắt dính để di chuyển dọc theo các đường này hoặc bị bắt vào giao điểm các đường. Cũng như Grid, Guide không hiển thị trong bản vẽ kết quả.
So với AutoCAD, snap của Inkscape còn làm việc với điểm, cạnh của đối tượng mà ta đang dùng chuột để di chuyển, co kéo.
Bây giờ ta hãy bắt tay vào thực hành với kỹ năng sử dụng snap, kỹ năng mà nếu thiếu nó thì công việc của bạn sẽ trở nên nhọc nhằn biết bao!
Dựng Grid: Vào menu View > Grid để cho hiện Grid. Tiếp theo chọn độ Zoom là 160%, độ zoom này thuận lợi cho kích thước mà tôi đã tính ở trên (với màn hình 800×600, chỗ thay đổi độ zoom sẽ bị che khuất nếu cửa sổ không được maximize).
Dựng Guide:
Guide được tạo ra đơn giản bằng cách bấm chuột vào thước (ngang dọc tùy guide ngang hay dọc) rồi kéo rê vào khung vẽ. Bỏ Guide đi bằng cách bấm vào Guide và kéo vào thước. Tuy nhiên đừng vội mừng vì gian nan là ở chỗ đặt Guide vào đúng vị trí. Tại thời điểm viết bài này, Inkscape chưa cho nhập tọa độ nơi Guide cần đặt nên tôi phải di dời Guide một cách thủ công. Để biết Guide đã đến đúng chỗ chưa, hãy vừa di dời vừa quan sát tọa độ chuột nơi góc dưới bên phải: Hệ tọa độ gồm trục X hướng ngang sang phải, trục Y hướng lên và gốc tọa độ nằm ở góc trái phía dưới.
Với bài này, ta đặt các Guide dọc ở vị trí (X) 125, 200, 225, 250, 300, 350, 375, 400 và 475, các Guide ngang ở vị trí (Y) 500, 450, 400. Hãy xem lại hình minh họa thứ 2.
Phù, vậy là đóng xong cọc rồi đấy. Tiếp theo là xây nhà.
Vẽ đường cong đầu tiên bên trái: Có 2 cách vẽ đường cong này, bạn có thể chọn 1 trong 2 hoặc phối hợp cả 2, nhưng tốt hơn hãy thực hành hết cho quen tay.
Trước tiên, hãy vào Document Properties kiểm tra xem các tùy chọn về snap đã được bật lên chưa (không cần phải bật hết mà chỉ cần bật những cái nào thích hợp thôi, như sắp tới đây ta sẽ chấm các điểm dựa theo grid và guide nên phải bật hết những cái Snap pointa và Snap nodes).
Cách 1: Chọn công cụ Draw Bezier curves and straight lines (Shift – F6), chấm một đường vào điểm có tọa độ (125, 400). Do ta đã dựng 2 đường guides giao nhau tại đây nên việc chấm đúng vào điểm (125, 400) trở nên rất đơn giản, chỉ việc đưa chuột lại gần đó rồi click. Tiếp theo chấm vào 2 điểm (200, 450) và (225, 500). Sau khi chấm vào điểm thứ 3 này, nhấn Enter để kết thúc dựng các nút. Như vậy ta đã có một đường gấp khúc và sẽ dựng đường cong dựa trên đường gấp khúc này.

Giữ đường gấp khúc còn trong trạng thái được chọn, chọn công cụ Edit path nodes or control handles (F2).

Chấm vào node giữa

Trông lên thanh công cụ phía trên, bấm vào Make selected nodes symmetric
Node mà ta chọn sẽ trở thành một tiếp điểm đường cong và tiếp tuyến qua nó là một đoạn thẳng 2 đầu đối xứng. Dùng chuột di dời 2 đầu (điểm tròn màu trằng) sẽ làm đường gấp khúc uốn cong.
Trong trường hợp này, tôi nhận thấy rằng do hai đầu luôn đối xứng nhau nên đường cong mà nó tạo ra không có được dáng như tôi muốn. Để công việc dễ dàng hơn, ta cần sửa đổi một chút công cụ của mình bằng cách chấm lại vào node giữa (hình vuông) rồi bấm chọn nút Make selected nodes smooth
.
Bây giờ thì 2 đầu vẫn thẳng hàng với nhau qua node giữa nhưng ta đã có thể thay đổi khoảng cách 2 bên để tạo ra đường cong có dáng mong muốn.

Sau khi vẽ xong đường cong, bấm chuột trở lại vào công cụ đầu tiên (Select and transform objects) để kiểm tra kết quả.
2) Cách 2: Cũng dùng công cụ vẽ đường thẳng như trên, nhưng lần này vẽ một đoạn thẳng thay vì đường gấp khúc, từ điểm (125, 400) đến (225, 500)
Chọn công cụ Edit path nodes, chọn đoạn thẳng vừa vẽ rồi bấm chọn nút Make selected segments curves ở thanh công cụ phía trên
Đoạn thẳng bây giờ trở thành đường cong với 2 tiếp tuyến ở 2 đầu. Hãy dùng chuột di chuyển các đầu tiếp tuyến cho đến khi ra được đường cong mong muốn.
Vậy là xong đường cong bên trái, bây giờ ta sẽ dựng đường cong bên phải. Để ý rằng, đường bên phải là ảnh đối xứng qua trục dọc của đường cong bên trái, do vậy ta không cần phải vẽ mà chỉ việc sao chép rồi xoay chuyển lại cho thích hợp.
Đầu tiên, bấm chọn đường cần sao chép, nhấn Ctrl+D hoặc right-click > chọn Duplicate, ta sẽ có một bản sao nằm chồng lên đường cũ. Hãy bấm chọn nó rồi kéo sang phải:
Tiếp theo bấm vào nút Flip selected objects horizontally trên thanh cong cụ phía trên.
Hình cong đã được lật ngang, bây giờ ta chỉ cần nương theo các guide mà đặt nó vào đúng vị trí. Xong!
Tới đây có lẽ bạn đã thạo việc vẽ các đoạn thẳng và dựa vào guide để chấm điểm chính xác rồi, cho nên việc vẽ các đường ngang dọc cho thành cầu của chúng ta rất đơn giản, tôi không cần phải trình bày phần này mà nhảy đến phần vẽ đoạn cong giữa của cây cầu luôn.
Theo như tôi đoán, đường cong giữa cầu không phải là một đường cong tự do mà là một cung tròn nên tôi sẽ không vẽ như hai đường cong trên mà sẽ vẽ một cung tròn đi qua 3 điểm (225, 500), (300, 450) và (375, 500). Tất nhiên bạn có quyền phản đối tôi và vẽ theo ý bạn, nhưng tại sao ta không thử xem cách vẽ một cung tròn nó như thế nào nhỉ? Sẽ có lợi lắm đó.
Inkscape không phải là AutoCAD, cho nên bạn không thể vẽ cung tròn theo kiểu AutoCAD là chọn công cụ vẽ cung tròn (arc), chọn 3 điểm mà cung tròn đi qua rồi bấm Enter được. Inkscape không có công cụ vẽ cung tròn, cũng không có chỗ nhập tọa độ, tính sao đây?
Nói rằng Inkscape không có công cụ vẽ cung tròn, nhưng thực ra không phải vậy. Inkscape có công cụ vẽ elipse rất linh hoạt. Bạn có thể dùng nó vẽ đường tròn, sau đó co kéo, co kéo thế nào đó cho nó thành một phần chiếc bánh (như biểu đồ tròn) hay thành một cung tròn. Chúng ta hãy khám phá nhé.
Vậy là ta sẽ phải vẽ một đường tròn đi qua 3 điểm cố định, thế nào nhỉ? Công cụ elipse chỉ cho vẽ đường tròn từ một góc ngoại tiếp, hoặc từ tâm chứ đâu cho vẽ qua điểm? Ta phải dùng chút Toán học để giải quyết vấn đề này thôi.
Hãy nhớ lại bài toán xác định tâm đường tròn đi qua 3 điểm cho trước. Biết rằng tâm đường tròn ngoại tiếp tam giác sẽ có tâm là giao điểm các đường trung trực của tam giác đó nên ta sẽ dùng nguyên lý này để tìm tâm.

Để ý rằng ta đã có trước một đường trung trực là cái đường guide dọc ở vị trí 300, như vậy ta chỉ phải vẽ một đường trung trực của cạnh xiên bên phải thôi.
Đầu tiên vẽ cạnh xiên đó rồi đổi màu, đổi nét cho khác với các đường khác để ta nhớ rằng đường này chỉ là tạm thời, sẽ xóa đi sau. Chỗ để thay đổi tinh chất của nó là góc dưới bên phải cửa sổ, double-click vào đó sẽ làm hiện ra hộp thoại Fill and Strock giúp bạn thay đổi các tính chất mong muốn.
Để tạo đường vuông góc của cạnh xiên, ta Duplicate (Ctrl+D) nó rồi xoay 90° bản sao vừa tạo này:
Để ý rằng đường vuông góc vừa tạo ra nằm ngay chóc vị trí đường trung trực (hú hồn). Bây giờ ta chỉ việc kéo dài cho nó cắt đường guide – trung trực thứ nhất thôi.
Để làm vậy, hãy vào Document Properties (Shift+Ctrl+D) > Snapping, chỉ chọn mỗi Snap bounding boxes to guides thôi (quan trọng, nếu các snap khác còn bật, chúng sẽ ảnh hưởng đến thao tác sắp tới của bạn!). Sau đó zoom lên mức cao hơn (320% chẳng hạn) để ngắm cho rõ rồi vừa ấn giữ phím Ctrl (hoặc Ctrl+Shift) vừa dùng chuột kéo đầu trên của đường trung trực về phía guide 300. Khi đến gần guide thì click rồi thả ra, đầu mút sẽ tự động cắm ngay ngắn vào guide, chỗ cắm ấy chính là tâm đường tròn.
Bây giờ quay lại mức zoom cũ (160%), mở Document Properties lên và thêm 3 tùy chọn Snapping là Snap nodes to object, Snap to object path và Snap to object nodes.
Để vẽ đường tròn, click chuột chỗ tâm đường tròn, chuột của bạn sẽ được bắt dính vào đầu mút đường trung trực, tức là ngay tâm. Tiếp theo, vừa ần giữ Ctrl + Shift, vừa kéo chuột chéo xuống. Hãy căn khi đường tròn đi qua 3 điểm mong muồn thì thả ra.
(Ctrl giúp vẽ đường tròn và Shift giúp vẽ từ tâm)
Bây giờ thì ta biến đường tròn thành vòng cung bằng cách click chuột vào dấu tròn phía phải của đường tròn rồi kéo ngược chiều kim đồng hồ. Thật kỳ diệu, đường tròn biến đổi như ta đang gấp chiếc quạt vậy.
Hãy để ý 2 công cụ Open arc và Make whole. Open arc cho phép chuyển đổi qua lại giữa cung tròn (bật) và hình quạt (tắt). Còn Make whole giúp biến trở lại thành đường tròn kín ban đầu.
Xong xuôi, xóa các đường tạm đi, ta có logo gần hoàn tất.

À, có 2 đường dọc phía dưới chưa đủ dài kìa, hãy kéo nó lên chạm vào cung tròn nhé. Tiếp đến, quét chọn tất cả các đường rồi chỉnh lại thông số Fill and Stroke (Shift+Ctrl+F) để nét dày lên chút (4 pixels)
Để thêm các chữ P.F.I.E.V bên dưới, dùng công cụ Create and edit text objects (chữ A), chọn font Arial, cỡ 36 rồi click vào bản vẽ mà gõ chữ. Cuối cùng sắp xếp lại cho ngay ngắn.
À, còn khi lưu bản vẽ, hãy lưu ý các định dạng như sau:
Inkscape SVG là dạng SVG mà Inkscape dùng để lưu lại công việc dang dở, nó khác chút với loại SVG nói ở đầu bài (Plain SVG) vì nó phải lưu thêm những dữ liệu của việc thiết kế như Guide, Snap, Layer v.v… Mặc dù Inkscape SVG có thể dùng cho web được nhưng chỉ nên dùng nó để lưu bản thiết kế, còn khi đưa vào sử dụng thì nên chuyển qua lưu dưới dạng Plain SVG.
Trước khi sử dụng bản vẽ vào những việc thông thường khác như chia sẻ, chèn vào tài liệu, bạn nên export nó ra thành dạng ảnh Bimap (vào menu File > Export Bitmap), do hiện tại sự hỗ trợ ảnh vector chưa phổ biến. Khi export, nên chọn đuôi PNG hoặc GIF để đảm bảo nén ảnh tốt. (Chú thích: PNG và GIF phù hợp để nén ảnh mà các mảng, các chi tiết phân biệt rạch ròi, còn JPG phù hợp nén ảnh mà các mảng chuyển tiếp liên tục hay phân biệt không rõ rệt)
Nguyễn Hồng Quân
ng.hong.quan@gmail.com
15/08/2007