2013-12-22 11 views
2

ImageMagick의 퍼스널 기능을 사용하려고합니다. 예제를 살펴 보았고 어떤 값이 해당하는지 이해할 수 없습니다. 이 코드가 있습니다ImageMagick 왜곡

var stream = new MemoryStream(); 
using (MagickImage image = new MagickImage("image.jpg")) 
{ 
image.VirtualPixelMethod = VirtualPixelMethod.Tile; 
image.MatteColor = Color.DodgerBlue; 
image.Distort(DistortMethod.Perspective, new double[] { 0, 0, 20, 60, 90, 0, 70, 63, 0, 90, 5, 83, 90, 90, 85, 88 }); 
image.Write(stream); 
} 

을 그리고 난이 이미지가 있습니다

input

출력 :

output

내가 정말 원하는 것은 관점을 변경할 수 있도록입니다 크기가 비슷하고 다음과 비슷한 모양이됩니다. what I want

품질이 좋지 않을 수도 있지만 비슷한 결과가 나타납니다. 이것을 어떻게 할 수 있습니까?

답변

2

숫자 문자열은 이동할 픽셀과 위치를 식별하는 좌표입니다. 귀하의 예에서 처음 두 숫자 0, 0은 왼쪽 상단의 픽셀을 식별합니다. 다음 숫자 쌍인 20, 60은 왜곡 된 후의 픽셀의 대상을 나타냅니다. 다음 쌍인 90, 0은 이동할 다음 픽셀을 식별하고 대상의 좌표를 나타냅니다. 소프트웨어는 중간에있는 모든 픽셀을 어떻게 처리해야하는지 파악합니다.

네 개의 좌표 쌍은 상자의 네 구석에 있습니다. 네 구석은 상자가있는 위치와 원하는 위치입니다.

ImageMagick Usage site에는 몇 가지 좋은 예가 있습니다.