我有一个 a 形式的图像System.Drawing.Bitmap
和一个 4 点形式的矩形(Vector2
s 被简单地转换为PointF
s )。
我想使用这些点来裁剪图像的一部分。我发现这个答案非常接近我想要的,但我不确定如何从中得到正确的矩阵。
这是我到目前为止所得到的:
protected static Bitmap CropImage(Bitmap src, Vector2[] rect)
{
var width = (rect[1] - rect[0]).Length;
var height = (rect[3] - rect[0]).Length;
var result = new Bitmap(M2.Round(width), M2.Round(height));
using (Graphics g = Graphics.FromImage(result))
{
g.InterpolationMode = InterpolationMode.HighQualityBicubic;
using (Matrix mat = new Matrix())
{
// ????
}
}
return result;
}
如何从我的矩形中获得正确的变换矩阵?