Layer trong canvas

Chào mọi người, xin được giúp đỡ:

hiện tại mình đang gặp khó khăn về cách thức tạo các layer trên Canvas, giống như các layer trong các chương trình đồ hoạ có thể gán ảnh, cắt, vẽ, ẩn hiện tùy ý. Mình tìm nhiều tài liệu thì không thấy có, còn tiếng nước ngoài thì mình quá kém không thể hiểu nổi.

xin được sự hỗ trợ từ các thành viên của nhóm. Thanks.

Mỗi lớp (layer) là một bộ đệm. Thường thì lớp BufferedImage sẽ làm bộ đệm. Từ đây, bạn có thể gọi đến getGraphics2D() để vẽ cho từng lớp riêng biệt.

Trong Android thì có lớp Bitmap.

5 Likes

Cảm ơn sự phản hồi của bạn, mình vẫn chưa hiểu lắm về chế độ này.
Ý bạn là minh có thể tạo ra nhiều canvas lồng lên nhau hay nhiều bitmap trong một canvas??? Và nếu mình làm với nhiều bitmap thì mình không biết cách ( phương thức ) để gán ảnh, cắt vẽ… Với từng bimap riêng biệt như vậy. Nói chung là vẫn chưa hiểu lắm, nếu bạn có tài liệu nào về vấn đề này có thể cho mình tham khảo, được chứ.
Xin cảm ơn!!!

Đơn giản thì mỗi hình sẽ thể hiện cho 1 lớp (layer). Nhiều bản vẽ chồng lên nhau đấy, trong đó 1 bản vẽ chính sẽ thể hiện các bản vẽ khác.

Đây là mẫu đơn giản mình viết bằng Java Swing dùng JPanel để làm bản vẽ (canvas).
https://drive.google.com/folderview?id=18a6U5sGFxMilOkAExzbZfEZAypzES7Vn
Dự án tạo bằng Netbean + Maven.

3 Likes

Thanks bạn rất nhiều, mình sẽ tìm hiểu thêm.

83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?