Công cụ tạo hình Blob SVG là gì?
Công cụ tạo hình Blob SVG là công cụ sinh một khối đồ họa vector có đường biên cong khép kín, thường dùng làm mảng trang trí trong thiết kế. Trong ngữ cảnh đồ họa, blob là hình mềm mại, có cảm giác hữu cơ thay vì mang cấu trúc vuông vức. Khái niệm này không đòi hỏi một hình dáng cố định: blob có thể khá đều hoặc có nhiều phần phồng, lõm tùy cách dựng đường biên.
Ở công cụ này, hình được tạo bằng cách đặt các điểm quanh một tâm, thay đổi khoảng cách từ tâm đến từng điểm rồi nối chúng bằng đường cong. Người dùng chọn số điểm neo, độ méo và màu tô; có thể tạo hình ngẫu nhiên tiếp theo, sao chép mã SVG hoặc tải hình hiện tại dưới dạng tệp .svg. Công cụ tự tạo hình đầu tiên khi giao diện khởi tạo.
Nhu cầu được giải quyết là tạo nhanh một tài nguyên hình học để đưa vào bố cục, không phải chỉnh sửa một bản vẽ có sẵn. Phần triển khai được cung cấp không có đầu vào nhập SVG, tải ảnh hoặc kéo từng điểm bằng tay. Vì vậy, đây không phải trình biên tập SVG đầy đủ.
Đầu ra là SVG tĩnh. Hiệu ứng chuyển tiếp được khai báo cho giao diện không đồng nghĩa với chức năng xuất hoạt hình. Không nên hiểu tên gọi “SVG Blob Generator” là bằng chứng rằng công cụ có thể tạo video, GIF hoặc SVG tự chuyển động.

Thông số đầu vào và kết quả SVG nhận được
Ba thông số quyết định hình và màu
Ba đầu vào có vai trò riêng: số điểm quy định cấu trúc đường biên, độ méo quy định biên độ biến thiên bán kính, còn màu tô quyết định màu của khối. Cấu hình ban đầu được xác nhận từ mã như sau:
| Thông số | Phạm vi hoặc cách chọn | Mặc định | Ý nghĩa |
|---|---|---|---|
| Số điểm neo | Từ 3 đến 15 điểm | 6 điểm | Số điểm đường biên đi qua và số đoạn cong nối chúng. |
| Độ méo | Từ 0% đến 100% | 50% | Mức cho phép khoảng cách từ tâm đến từng điểm thay đổi ngẫu nhiên. |
| Màu tô | Bộ chọn màu hoặc màu hex ngẫu nhiên | #8fb8ed |
Màu đồng nhất bên trong đường biên. |
Số điểm không phải số góc nhọn, vì các điểm được nối bằng đường cong. Độ méo cũng không diễn tả phần trăm diện tích bị thay đổi. Hai hình cùng số điểm và độ méo vẫn có thể khác nhau do lấy các giá trị ngẫu nhiên khác nhau. Màu ngẫu nhiên được tạo dưới dạng mã hex sáu chữ số; không có bước bảo đảm màu đó phù hợp với nội dung thiết kế.
Mã SVG, tệp tải xuống và bản xem trước
Bản xem trước thể hiện hình đang chọn. Mã sao chép và tệp tải xuống đều lấy từ chính SVG hiện tại, không sinh thêm một hình riêng khi xuất. Nội dung gồm vùng tọa độ, thông tin định dạng SVG và một đường khép kín được tô màu, không có nét viền.
400 × 400 là vùng tọa độ nội bộ, không phải kích thước hiển thị bắt buộc tính bằng pixel. SVG xuất không khai báo chiều rộng và chiều cao cố định; kích thước thực tế còn phụ thuộc nơi sử dụng. Nền chấm, khung và bóng thuộc giao diện xem trước, không được đưa vào tài nguyên SVG.

Năm thuật ngữ cần hiểu khi tạo Blob SVG
Blob
Blob trong thiết kế là một khối hình có đường biên mềm, thường không đều và gợi liên tưởng đến hình dạng tự nhiên. Nó có thể làm dịu một bố cục nhiều đường thẳng hoặc tạo điểm nhấn phía sau nội dung. Trong bài này, blob chỉ hình đồ họa. Không nên nhầm với đối tượng Blob của trình duyệt, vốn là cơ chế chứa dữ liệu được dùng khi tạo tệp tải xuống, không phải một kiểu đường cong.
SVG và đồ họa vector
SVG là định dạng mô tả đồ họa bằng hình học, chẳng hạn đường và màu tô, thay vì chỉ lưu một lưới điểm ảnh. Với hình đơn giản như blob, cấu trúc vector giúp thay đổi kích thước hiển thị mà vẫn dựa trên đường biên hình học. Tuy nhiên, SVG không tự đồng nghĩa với hoạt hình hoặc dung lượng nhỏ nhất. Kết quả của công cụ là một đường tĩnh, còn khả năng hiển thị phụ thuộc môi trường sử dụng.
viewBox
viewBox là vùng tọa độ nội bộ mà SVG sử dụng để ánh xạ nội dung vào khung hiển thị. Ở đây, vùng đó bắt đầu tại tọa độ (0, 0), có chiều rộng và chiều cao đều bằng 400 đơn vị. Có thể hình dung đây là hệ thước đo của bản vẽ, không phải kích thước vật lý của màn hình. Nhầm 400 đơn vị SVG với 400 pixel sẽ dẫn đến hiểu sai khi đặt hình vào bố cục có kích thước khác.
Điểm neo và đường cong Bézier
Điểm neo là điểm mà đường biên đi qua. Giữa hai điểm neo liên tiếp, đường Bézier bậc ba dùng thêm hai điểm điều khiển để định hướng độ cong. Công cụ tính các điểm điều khiển từ những điểm lân cận, thay vì cho người dùng kéo chúng. Vì vậy, chọn sáu điểm neo không có nghĩa là nhận một đa giác sáu góc nhọn. Các điểm điều khiển cũng không nằm trong số điểm được chọn bằng thanh trượt.
Độ méo và biến thiên bán kính
Độ méo ở công cụ này là mức cho phép bán kính của từng điểm biến thiên quanh một giá trị cơ sở. Bán kính là khoảng cách từ tâm đến điểm neo, không phải bán kính của một đường tròn bao ngoài chính xác. Tăng độ méo mở rộng khoảng giá trị có thể được lấy ngẫu nhiên. Nó không tăng độ mờ, không biểu thị tỷ lệ diện tích và không phải thang đánh giá chất lượng: hình méo hơn chưa chắc phù hợp hơn.

Hình blob được tạo như thế nào?
Chia điểm quanh tâm và thay đổi bán kính
Quá trình bắt đầu với tâm tại (200, 200) và bán kính cơ sở bằng 35% cạnh vùng tọa độ: 400 × 0,35 = 140 đơn vị SVG. Nếu chọn N điểm neo, khoảng cách góc giữa các hướng liên tiếp bằng 360°/N. Các hướng được chia đều, không bị xoay lệch ngẫu nhiên; sự ngẫu nhiên nằm ở khoảng cách từ tâm.
Gọi m là độ méo chia cho 100 và u là một giá trị ngẫu nhiên từ 0 đến nhỏ hơn 1. Bán kính từng điểm được tính theo r = 140 + (2u − 1) × m × 84. Số 84 bằng 60% bán kính cơ sở. Khi m lớn hơn 0, bán kính nằm từ 140 − 84m đến nhỏ hơn 140 + 84m.
Với hướng θ, tọa độ được suy ra bằng x = 200 + r × cos(θ) và y = 200 + r × sin(θ). Đây là cách chuyển một khoảng cách và một hướng thành vị trí trên bản vẽ, không phải thao tác thay đổi diện tích trực tiếp.
Nối thành đường cong khép kín
Mỗi cặp điểm liên tiếp được nối bằng một đoạn Bézier bậc ba. Hai điểm điều khiển được suy ra từ các điểm lân cận, với hệ số cố định 0,25. Cách dùng các điểm xung quanh giúp định hướng đường nối mềm; đoạn cuối nối trở về điểm đầu rồi đường được khép kín để tô màu.
Tọa độ ghi trong các đoạn cong được làm tròn đến hai chữ số thập phân. Riêng tọa độ mở đầu không được làm tròn theo cùng cách. Đây là đặc điểm biểu diễn dữ liệu hình học, không phải cam kết về độ chính xác của phần mềm nhận SVG.
Khi nào hình thay đổi, khi nào chỉ đổi màu?
Thay đổi số điểm, độ méo hoặc yêu cầu tạo hình tiếp theo đều chạy lại quá trình sinh điểm. Đổi màu, kể cả đổi sang màu ngẫu nhiên, chỉ cập nhật màu tô và giữ đường biên. Khi độ méo bằng 0%, mọi bán kính đều bằng 140, nên tạo lại với cùng số điểm không đổi hình. Đường biên vẫn được dựng bằng Bézier, không trở thành đường tròn toán học chính xác.

Ví dụ đọc cấu hình và hiểu hình tạo ra
Các ví dụ sau là phép suy luận từ mã và giả định đã nêu, không phải kết quả chạy thử. Chúng giúp hiểu thông số nhưng không dự báo một hình ngẫu nhiên cụ thể.
Hình ít biến thiên với độ méo 0%
Giả sử chọn sáu điểm neo, độ méo 0% và màu #8fb8ed. Bước góc bằng 360°/6 = 60°. Vì hệ số độ méo bằng 0, bán kính của cả sáu điểm đều là 140 đơn vị SVG. Điểm đầu ở hướng 0° có tọa độ (340, 200).
Sáu điểm được nối bằng sáu đoạn Bézier rồi khép kín. Tạo lại không đổi đường biên vì phần ngẫu nhiên đã bị nhân với 0. Kết quả đều quanh tâm, nhưng không nên gọi đó là đường tròn chuẩn chỉ vì các điểm neo có cùng bán kính.
Hình ngẫu nhiên với độ méo 50%
Vẫn chọn sáu điểm nhưng đặt độ méo 50%, hệ số tính toán là 0,5. Biên độ thay đổi bán kính bằng 84 × 0,5 = 42 đơn vị SVG. Do đó, mỗi bán kính nằm từ 98 đến nhỏ hơn 182 đơn vị; bước góc vẫn là 60°.
Kết quả có sáu đoạn cong khép kín, nhưng không thể xác định chính xác phần nào phồng hay lõm nếu chưa biết các giá trị ngẫu nhiên. Khoảng bán kính mô tả phạm vi của điểm neo, không mô tả toàn bộ đường cong hoặc diện tích hình.
Giữ hình, đổi màu và lưu SVG
Giả sử đã chọn được một đường biên phù hợp rồi đổi màu từ #8fb8ed sang #ff6600. Xử lý đổi màu không sinh lại điểm, nên hình học được giữ nguyên và chỉ màu tô chuyển sang cam.
Nếu xuất ngay sau đó, mã sao chép hoặc tệp tải xuống chứa chính hình này với màu mới. Nền chấm và khung xem trước không đi kèm. Đây là cách thay màu cho một hình đã chọn mà không cần tìm lại đường biên ngẫu nhiên.
Một trường hợp vượt vùng tọa độ
Giả sử độ méo là 100% và giá trị ngẫu nhiên ở hướng đầu tiên, 0°, bằng 0,9. Bán kính khi đó là 140 + (2 × 0,9 − 1) × 84 = 207,2 đơn vị SVG. Điểm tương ứng nằm tại (407,2; 200).
Tọa độ ngang lớn hơn 400, chứng minh điểm neo có thể vượt cạnh phải của vùng tọa độ. Ví dụ không khẳng định tình huống ấy luôn xảy ra; nó cho thấy cần kiểm tra mép hình khi dùng độ méo cao.

Ứng dụng Blob SVG trong giao diện và thiết kế
Mảng trang trí cho giao diện và banner
Một blob có thể được dùng làm mảng màu sau tiêu đề, hình nhấn trong banner hoặc thành phần phụ giữa các khu vực nội dung. Đây là ứng dụng thiết kế của tài nguyên SVG, không phải các chế độ bố cục mà công cụ tự tạo. Người dùng vẫn quyết định vị trí, tỷ lệ và cách đặt hình trong sản phẩm đích.
Blob cũng có thể làm thành phần nền quanh khu vực avatar để tạo cảm giác mềm mại. Tuy nhiên, công cụ không tải ảnh chân dung, không cắt ảnh vào hình và không tạo sẵn một avatar hoàn chỉnh. Nếu muốn ghép ảnh với đường biên, cần thực hiện trong môi trường thiết kế phù hợp.
Tệp SVG có thể được đưa vào quy trình thiết kế nếu phần mềm đích hỗ trợ định dạng này. Cách nhập, khả năng chỉnh sửa và cách hiển thị cần được kiểm tra tại nơi sử dụng; không có căn cứ để khẳng định tích hợp tự động.
Chọn hình phù hợp với nội dung
Khi cần mảng nền ít gây chú ý, có thể giảm độ méo để hình đều hơn. Khi muốn cảm giác hữu cơ rõ hơn, có thể tăng biến thiên rồi đánh giá từng kết quả. Số điểm nhiều hoặc độ méo cao không phải mục tiêu mặc định: hình tốt là hình phục vụ bố cục.
Nên kiểm tra độ tương phản với nền, khoảng trống quanh chữ và mép hình ở kích thước sử dụng thực tế. Một mảng màu đẹp riêng lẻ vẫn có thể làm chữ khó đọc hoặc cạnh tranh với nội dung chính. Đây là lời khuyên thiết kế; công cụ không tự kiểm tra tương phản hay khoảng cách an toàn.

Blob đơn lẻ khác gì họa tiết lặp và ảnh raster?
Một khối nhấn hay một nền lặp?
Blob đơn lẻ phù hợp khi bố cục cần một điểm nhấn có ranh giới rõ, chẳng hạn một mảng màu gần tiêu đề. Họa tiết lặp thường phục vụ mục tiêu khác: phủ một vùng nền bằng cấu trúc có nhịp điệu. Một bên tập trung sự chú ý vào một khối, bên kia tạo tính liên tục trên bề mặt.
Nếu nhu cầu nghiêng về nền lặp, chủ đề tạo họa tiết SVG sẽ phù hợp để tìm hiểu hơn việc tăng số điểm của blob. Đây là phân biệt mục đích thiết kế, không phải khẳng định hai công cụ tự tích hợp hoặc chuyển đổi đầu ra cho nhau.
SVG tĩnh và ảnh raster
SVG mô tả đường hình học, còn ảnh raster như PNG hoặc JPEG mô tả hình bằng các điểm ảnh. Với blob, vector thuận tiện khi cần dùng cùng một đường biên ở nhiều kích thước. Ảnh raster vẫn phù hợp trong nhiều quy trình, đặc biệt khi hệ thống đích yêu cầu định dạng đó.
Không thể kết luận SVG luôn nhẹ hơn hoặc tốt hơn: điều này phụ thuộc độ phức tạp và cách sử dụng. Công cụ hiện tại không chuyển đầu ra sang ảnh raster.
Định dạng SVG nói chung có thể tham gia các cơ chế hoạt hình, nhưng khả năng của định dạng không phải tính năng của mọi công cụ tạo SVG. Hình xuất ở đây là tĩnh; các chuyển tiếp trên trang không được đóng gói thành hoạt hình trong tệp.

Giới hạn cần biết trước khi sử dụng và xuất SVG
Kiểm tra mép hình và phạm vi xuất
Ở độ méo cao, điểm neo có thể nằm ngoài vùng tọa độ 400 × 400; đường cong cũng cần được kiểm tra riêng. Mã không có bước tự thu nhỏ hoặc căn lại để bảo đảm toàn bộ hình nằm vừa vùng này. Tùy cách hiển thị, phần vượt biên có thể bị cắt, vì vậy nên kiểm tra cả bản xem trước lẫn nơi sử dụng cuối cùng.
Phạm vi hiện có là một khối màu đồng nhất. Không có điều khiển gradient, độ trong suốt, nét viền, nhiều lớp hoặc từng điểm. Phần triển khai cũng không cung cấp xuất ảnh raster, xuất hoạt hình, lựa chọn seed để tái tạo hình hay hoàn tác. Nếu đã chọn được hình, lưu SVG là cách giữ lại đường biên thay vì trông chờ tạo ngẫu nhiên lại.
Khả năng trình duyệt và giới hạn xác minh
Sao chép phụ thuộc Clipboard API và quyền của trình duyệt. Mã hiển thị xác nhận sau khi sao chép hoàn tất, nhưng không cung cấp thông báo lỗi hoặc phương án sao chép dự phòng. Việc tải tệp và nhập SVG cũng cần được kiểm tra trong môi trường thực tế.
Các nhận định ở đây dựa trên đọc mã, chưa phải kiểm thử trên từng thiết bị. Thuật toán tạo hình được thể hiện đầy đủ trong dữ liệu cung cấp, nhưng các thành phần khác của website chưa được xem xét. Vì vậy, không thể khẳng định toàn trang không gửi, không lưu dữ liệu hoặc bảo mật tuyệt đối.

Câu hỏi thường gặp
Vì sao chọn độ méo 0% rồi tạo lại mà hình không thay đổi?
Vì độ méo 0% loại bỏ hoàn toàn biến thiên ngẫu nhiên của bán kính. Với cùng số điểm, các hướng và khoảng cách từ tâm đều giữ nguyên, nên việc tạo lại cho cùng một đường biên. Đây là hệ quả của công thức, không nhất thiết là lỗi thao tác. Muốn các lần tạo có khả năng khác nhau, cần độ méo lớn hơn 0%. Dù vậy, hình ở mức 0% vẫn là đường Bézier dựng từ các điểm, không phải đường tròn chuẩn.
Tăng số điểm neo có luôn làm blob đẹp hơn không?
Không. Số điểm neo thay đổi cấu trúc đường biên, chứ không đo mức độ đẹp. Một hình ít điểm có thể phù hợp với bố cục đơn giản, trong khi hình nhiều điểm có thể tạo đường biên phức tạp hơn khi kết hợp với biến thiên bán kính. Kết quả còn phụ thuộc lần lấy ngẫu nhiên và mục đích sử dụng. Nên đánh giá hình ở kích thước thực tế, cạnh chữ và các thành phần khác, thay vì mặc định chọn giá trị lớn nhất.
Đổi màu có làm mất hình blob đang chọn không?
Không, thao tác đổi màu chỉ cập nhật màu tô, không tạo lại đường biên. Điều này áp dụng cho cả bộ chọn màu và chức năng màu ngẫu nhiên, nên bạn có thể thử nhiều màu trên cùng hình. Ngược lại, thay đổi số điểm hoặc độ méo sẽ sinh lại hình; thao tác tạo hình tiếp theo cũng vậy. Nếu đường biên đang chọn quan trọng, nên lưu SVG trước khi tiếp tục thử cấu hình hình học để có bản giữ lại.
Vì sao blob ở độ méo cao có thể bị cắt ở mép khung?
Vì biên độ biến thiên bán kính có thể đưa điểm neo vượt khỏi vùng tọa độ, và không có bước bảo đảm tự căn vừa. Đường nối cong cũng phải được xem xét, không chỉ các điểm neo. Khi môi trường hiển thị giới hạn nội dung trong khung, phần vượt biên có thể không hiện đầy đủ. Có thể thử mức méo thấp hơn hoặc tạo hình khác rồi kiểm tra. Không nên coi bản xem trước là bảo đảm mọi phần mềm sẽ hiển thị giống nhau.
Tệp SVG tải xuống có chứa nền chấm và hiệu ứng chuyển động không?
Không. Nền chấm và hiệu ứng chuyển tiếp thuộc giao diện trang, còn nội dung xuất lấy từ phần tử SVG của hình hiện tại. Tệp chứa đường biên và màu tô, không đóng gói nền chấm, khung, bóng hay hiệu ứng hoạt hình của trang. Phần ngoài đường tô không có một hình nền được xuất kèm; nó có thể hiện màu của nơi đặt SVG. Nếu cần chuyển động, đó là yêu cầu bổ sung ngoài chức năng xuất đã được xác nhận.
Vùng tọa độ 400 × 400 có bắt buộc ảnh hiển thị đúng 400 × 400 pixel không?
Không. Con số đó xác định hệ tọa độ nội bộ để mô tả vị trí và tỷ lệ của hình. SVG xuất không khai báo chiều rộng, chiều cao cố định, nên kích thước nhìn thấy phụ thuộc khung chứa hoặc phần mềm mở tệp. Một đơn vị tọa độ không nhất thiết tương ứng một pixel màn hình. Khi đưa hình vào trang hay tài liệu, cần kiểm tra cách môi trường đích đặt kích thước và giữ tỷ lệ, thay vì suy ra từ viewBox.
Nếu không sao chép được mã SVG, tôi có thể giữ hình bằng cách nào?
Bạn có thể dùng chức năng tải tệp SVG để giữ hình hiện tại, nếu cơ chế tải của trình duyệt hoạt động. Đây là lựa chọn xuất riêng, không cần thao tác sao chép vào clipboard. Việc sao chép thất bại có thể liên quan đến hỗ trợ API, quyền hoặc bối cảnh sử dụng, nhưng không đủ dữ liệu để kết luận nguyên nhân cụ thể. Sau khi tải, nên kiểm tra tệp trong môi trường đích và tránh tạo lại hình trước khi lưu thành công.


20 bình luận
Dương Gia Nhung
Cho mình hỏi kết quả SVG có thể chèn trực tiếp vào HTML không, hay cần lưu thành file trước?
Võ Quốc Quang
blob xinh xỉu, làm nền cho ảnh sản phẩm nhìn iu hơn hẳn á :)))
Lê Quốc Phúc
Mình thích việc có cả công cụ Che mặt & Làm mờ ảnh trong danh sách liên quan. Làm nội dung web thường cần mấy tiện ích nhỏ như vậy.
Vũ Ngọc Vinh
Mình hơi tò mò: blob tạo ra có yếu tố ngẫu nhiên không, hay cùng thông số đầu vào thì luôn nhận được cùng một SVG?
Đặng Thanh Quang
Có thêm lựa chọn màu nền và màu hình ngay cạnh phần xem trước thì tiện quá. Mình chủ yếu dùng blob để trang trí slide.
Đặng Văn Trang
Từ trang này mình tìm được cả công cụ Chuyển ảnh sang Base64, đúng thứ đang cần để thử nhúng ảnh vào trang web.
Đỗ Bảo Nam
Có giới hạn nào về kích thước hoặc độ phức tạp của SVG đầu ra không ạ? Mình định dùng làm hình nền lớn.
Vũ Thanh Yến
Có cách nào tạo lại đúng hình blob mình đã làm trước đó không nhỉ? Mình muốn thử nhiều phiên bản nhưng vẫn giữ được bản đầu.
Phan Bảo Châu
Làm mấy hình trang trí cho bài thuyết trình bằng công cụ này khá vui, mỗi hình nhìn một kiểu nên không bị nhàm chán.
Trần Hữu Ngọc
Web dễ dùng nha, nhưng nên làm phần kết quả SVG nổi bật hơn xíu, lần đầu vào mình tìm hơi lâu.