Java 및 JAI를 사용하여 이미지의 모서리를 둥글게 만듭니다.
-
22-07-2019 - |
문제
우리는 JAI(https://jai-imageio.dev.java.net/) Java에서 이미지 크기를 조정하고 자릅니다.우리는 이미지에 둥근 모서리를 만들고 싶습니다.어떻게 해야 할까요?
이미지는 JPG와 PNG입니다.JPG로 작업하는 것이 더 쉬울 것 같나요?
이미지는 JAI의 PlanarImage입니다.
PlanarImage src = JAI.create(...,...);
java.awt.Graphics 객체로 변환될 수 있습니다.
전에 이런 일을 해본 사람이 있나요?
해결책
PNG는 투명한 알파 채널을 지원하지만 JPG는 지원하지 않습니다.따라서 JPG의 경우 둥근 모서리에 대해 직사각형의 "보이지 않는" 부분을 칠할 색상도 선택해야 합니다.
수업이 있어요 java.awt.geom.RoundRectangle2D
다음을 수행할 수 있습니다.
public void paint(Graphics g) {
Graphics2D g2d = (Graphics2D) g;
RoundRectangle2D rr = new RoundRectangle2D.Float(50, 50, 200, 100, 10, 10);
g2d.draw(rr);
}
RoundRectangle2D 클래스의 Float() 메서드는 6개의 인수를 사용합니다.
- 처음 두 개는 왼쪽 상단 모서리의 위치를 나타냅니다.
- 인수 3과 4는 둥근 사각형의 너비와 높이를 나타냅니다.
- 마지막 두 인수는 모서리에 그린 아크의 너비와 높이를 나타냅니다.
따라서 모서리를 둥글게 만들려는 이미지만 포함할 둥근 직사각형을 그린 다음 오버레이하거나 마스크를 사용하여 원하는 효과를 얻습니다.
다른 팁
이미지에서 얻은 그래픽 객체에 원하는 모서리를 그리는 것은 무엇입니까? 나는 당신의 "둥근 모서리"가 어떻게 생겼는지 확실하지 않지만 그래픽 객체에서 모든 합리적인 페인트 작업을 수행 할 수 있습니다.
제휴하지 않습니다 StackOverflow