간단한 프로그램을 만들고 싶습니다. 여기서 간단한 png를 캔버스에 추가 할 수 있습니다. 옵션 중 하나는 선택한 PNG를 회전하는 것입니다. 나는 회전 문제가있다. 변환을 사용할 때 모든 것을 캔버스에 회전시킵니다. 저는 90 '또는 뒤집기에 의한 회전 예제 만 만들었지 만 어떤 각도로든 회전하고 싶습니다.java swt image (imagedata) rotate
나는 또한 swed 이미지를 bufferedimage로 변환하려고 시도했는데, bufferedimage를 swt 이미지로 변환하고 그릴 수는 있지만 매우 느리고 투명성에 문제가있다.
나는 도움을 주셔서 감사합니다. 이미지 중심을 통해 회전하고 싶습니다. drawig에 대해 저는 GC와 Canvas를 사용하고 있습니다 - 새로운 GC (캔버스);
편집 : 내가 STIL 이미지의 중심으로 회전 문제가 :
gc.setAdvanced(true);
if (!gc.getAdvanced()) {
gc.drawText("Advanced graphics not supported", 30, 30, true);
return;
}
Transform oldTransform = new Transform(gc.getDevice());
gc.getTransform(oldTransform);
Transform transform = new Transform(GCController.getCanvas().getDisplay());
transform.translate(width/2, height/2);
transform.rotate(rotation);
gc.setTransform(transform);
gc.drawImage(image, x, y);
gc.setTransform(oldTransform);
transform.dispose();