0
Batik 라이브러리를 사용하여 Java에서 SVG 파일을 처리하고 있습니다. 문제는 내가 규모를 조정할 때 발생합니다. 선의 픽셀을 볼 수 있습니다. 물론 이것은 일어나지 않아야합니다. 적어도 약 4000 %는 확대하고 부드러움을 유지할 수 있어야합니다.Java에서 스케일링 할 때 SVG 파일의 픽셀보기
SVG 파일은 확장 클래스에서 읽어 들여 오버라이드 페인트 메서드에서 그립니다. 먼저 새로운 스케일을 AffineTransform 변수로 설정하고이를 메소드의 그래픽에 적용하고 super.paint()를 사용하여 페인트합니다.
저는 정말로 붙어있어 문제를 파악할 수 없습니다. 사용중인 SVG 파일은 괜찮습니다. 잉크 스케이프에서 열었고 픽셀이 표시되지 않고 확대/축소 할 수있었습니다. 도와주세요.
코드 : 필요했다 무엇
@Override
public void paint(Graphics g) {
try {
rad = (int)(radInit*zoom);
updateTransform();
Graphics2D g2d = (Graphics2D) g;
g2d.setTransform(transform);
super.paint(g);
paintElements(g2d);
} catch(NullPointerException nulle) {
// System.out.println("SVG not loaded yet");
}
}
private void updateTransform(){
transform = new AffineTransform();
transform.translate((-1)*zoom*centarX, (-1)*zoom*centarY);
transform.scale(zoom, zoom);
}
코드의 관련 부분을 게시하십시오. 그렇지 않으면 당신을 도울 수 없을 것입니다. – Baz