Tạo hình nền gradient bằng ImageMagick (tiếp theo)

Trong bài viết trước, mình đã trình bày cách tạo một hình nền gradient bằng phần mềm ImageMagick. Trong bài này, mình sẽ tiếp tục trình bày về cách tạo hình nền radial gradient và chèn chữ vào hình nền.

Công cụ radial-gradient

Nếu linear gradient là một dải màu, được thay đổi dần theo một chiều nào đó, thì radial gradient lại bắt đầu từ một điểm, sau đó lan tỏa dần ra bên ngoài.

Và nếu linear gradient cần định nghĩa một hướng (vector) thì radial gradient cần định nghĩa một hình tròn hoặc hình elipse. Tâm của hình tròn hoặc elipse chính là điểm bắt đầu.

Để tạo một hình nền radial gradient, dùng lệnh convert với các tham số sau:

convert -size 300x300 radial-gradient:fuchsia-blue wallpaper.jpg

Trong lệnh trên, chúng ta chỉ cần định nghĩa 2 màu đầu vào và kích thước ảnh. Mặc định, ImageMagick sẽ tạo một radial gradient có dạng hình tròn.

Một số tùy chỉnh dành cho gradient

Một lần nữa, nếu chỉ dùng các tham số mặc định thì hình nền của mình nhìn rất là buồn. Do đó, mình cần định nghĩa thêm về dải màu:

convert -size 300x300 -define gradient:center=0,300 -define gradient:radii=500,500 radial-gradient:fuchsia-blue wallpaper.jpg

Giải thích một chút về các tham số trên:

  • -define gradient:center=0,300 sẽ quy định tâm của hình tròn hoặc elipse ở tọa độ 0x300.
  • -define gradient:radii=500,500 sẽ quy định radial gradient là một hình tròn, có bán kính 500.

Và kết quả là:

Các bạn có thể tìm hiểu thêm về define cho gradient ở website của ImageMagick.

Chèn chữ vào hình nền

Nếu các bạn thấy hình nền vẫn còn buồn, hãy thử thêm chữ vào để tạo ra hình nền với các câu châm ngôn hoặc trích dẫn. Bằng lệnh:

convert -size 300x300 -define gradient:center=0,300 -define gradient:radii=500,500 radial-gradient:fuchsia-blue -gravity center -fill white -pointsize 30 -annotate +0+0 'Do nothing'

Giải thích:

  • -gravity center để quy định vị trí bắt đầu.
  • -fill white quy định chữ có màu trắng.
  • -pointsize 30 quy định cỡ chữ là 30.
  • -annotate +0+0 ‘Do nothing’ yêu cầu chèn văn bản ‘Do nothing’ ở tọa độ 0x0, do chúng ta quy định gravity là center nên sẽ chèn văn bản vào giữa hình.

Các bạn cũng có thể quy định font và xuống dòng, ví dụ:

convert -size 300x300 -define gradient:center=0,300 -define gradient:radii=500,500 radial-gradient:fuchsia-blue -gravity center -fill white -pointsize 20 -font 'Purisa' -annotate +0+0 'The journey \nof a thousand \nmiles begins with\none step' wallpaper.jpg

Để xem danh sách font chữ có trên hệ thống, dùng lệnh:

convert -lists font

Kết

Vậy là xong, cảm ơn các bạn đã xem bài viết.

Related posts

Tự động dịch tài liệu với Google Translate

Quản lý nhiều phiên làm việc trong Linux

Hướng dẫn cấu hình headless Raspberry Pi