这个组件的功能:
1. 对图片进行裁剪
2. 为每副图像维持一个裁剪操作栈
3. 裁剪的撤销,重做
4. 裁剪时可以遮掩图像,以突出显示裁剪矩形边框
5. 设置遮掩的颜色,裁剪边框的颜色
原理:JLabel持有一个剪裁矩形框,和一个遮掩矩形框。并为JLabel添加MouseListener监听器实现开始裁剪和结束裁剪,MouseMotion事件监听器实现设置裁剪矩形边框的大小。
直接上代码:
效果图:
此组件必须保证图像的左上角定点位于父组件的左上角,可以将这个组件包含于JScrollPanel中,效果很好