我正在尝试创建一个非常基本的 Sprite 图像。
首先,我有一个现有的图像(宽度 = 100 像素,高度 = 100 像素)。
我将在这张图片中循环 10 到 100 次,每次都将它放在前一张图片旁边的 Sprite 上。
Sprite 被限制为 3000px 宽。
将图像彼此相邻放置很好,因为我可以用一种简单的方法将它们组合起来,但是,我需要将组合图像的宽度限制为 3000 像素,然后从新行开始。
最佳答案
让我尝试一些伪代码:
Bitmap originalImage; // that is your image of 100x100 pixels
Bitmap bigImage; // this is your 3000x3000 canvas
int xPut = 0;
int yPut = 0;
int maxHeight = 0;
while (someExitCondition)
{
Bitmap imagePiece = GetImagePieceAccordingToSomeParameters(originalImage);
if (xPut + imagePiece.Width > 3000)
{
xPut = 0;
yPut += maxHeight;
maxHeight = 0;
}
DrawPieceToCanvas(bigImage, xPut, yPut, imagePiece);
xPut += imagePiece.Width;
if (imagePiece.Height > maxHeight) maxHeight = imagePiece.Height;
// iterate until done
}
关于c# - 如何创建 Sprite 图像,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/10451823/