스크롤 뷰어 내에서 이미지를 확대/축소 할 때 문제가 있습니다. zoom-in 버튼을 사용할 때마다 버튼을 클릭 할 때마다 이미지의 너비/높이를 원래 크기의 1.25로 설정하는 이중 애니메이션을 사용합니다. 배율을 0.75로 설정하는 축소 버튼에 대해서도 마찬가지입니다. 지금까지 너무 좋아.커서로 줌/스크롤
문제는 클릭 지점을 향해 스크롤하려는 scrollviewer ID의 중심을 기준으로 클릭하는 위치를 기반으로합니다. x와 y 축의 스크롤 방향을 결정하는 데 사용되는 델타 x/y를 계산합니다.
double deltaX = (ClickPosition.X - center.X)
double deltaY = (ClickPosition.Y - center.Y)
은 이제 (도 이중 애니메이션 애니메이션되는) 수직 및 수평 스크롤바에 델타를 적용 할 때 이미지의 계정에 현재의 줌 배율을한다.
동시에 확대/축소하고 스크롤하면 최종 위치가 예상대로 끝나지 않습니다. 이미지 스케일링의 원점은 항상 이미지의 0,0 (맨 위 왼쪽 구석)에있는 것처럼 보이므로이를 처리하는 방법이 확실하지 않으므로 센터의 왼쪽을 클릭하면 클릭하는 것보다 왼쪽으로 더 강하게 스크롤됩니다 센터의 오른쪽.
예 : http://212.214.41.66/SilverlightZoom/RealQImageMapTestPage.html
출처 : 코드에서 http://212.214.41.66/SilverlightZoom/ImageMap.zip
코드를 살펴 봤습니다. 스케일링 변환을 사용하는 대신 너비와 높이를 사용하여 이미지의 크기를 조절하는 이유는 무엇입니까? – Johannes