在寻找功能或方法来做我正在寻找的事情时遇到一个小问题,希望有人可以在这里提供一些见解。
我有一个函数应该从一个较大的位图中提取并返回一个 32x32px 的位图,该位图中有一组 32x32 的图块。
这是我现在拥有的代码,但这是错误的,因为Tile.GFX_Pos
属性告诉它要在目标图像中的哪个位置绘制,而不是在源图像中的哪个位置绘制。
Overloads Shared Function TileGFX(ByVal SrcGFX As Bitmap, ByVal Tile As TileDef) As System.Drawing.Bitmap
Try
Dim GFX As Bitmap = TileBitmap()
Dim GGFX As Graphics = Graphics.FromImage(GFX)
GGFX.DrawImageUnscaledAndClipped(SrcGFX, New Rectangle(Tile.GFXXPos, Tile.GFXYPos, TileSize, TileSize))
Return GFX
Catch ex As Exception
Return TileBitmap()
End Try
End Function
因此,由于这不起作用,我想知道是否有人知道一个好方法来选择SrcGFX
位图中的位置,而不是(当前和错误地)选择目标位图中的位置。