/// <summary>Split and save each sprite</summary> /// <param name="img">Image to be cropped in sprites.</param> /// <param name="fileDir">The directory for the sprites to be saved.</param> public virtual void SaveEachSubimage(Image img, string fileDir) { int spriteSize = inputTileset.TileSize(); string ex = Path.GetExtension(fileDir); fileDir = Path.GetDirectoryName(fileDir) + @"\" + Path.GetFileNameWithoutExtension(fileDir) + "_"; Bitmap[] sprites = SplitImageInSprites(img, spriteSize, spriteSize); for (int i = 0; i < sprites.Length; i++) { int ipp = i + 1; string s = ipp > 99 ? s = ipp.ToString() : ipp > 9 ? s = ipp.ToString() : s = "0" + ipp; sprites[i].Save(fileDir + s + ex); } }
/// <summary>Get the number of pixels to be moved to center the sprite on the tileset.</summary> /// <returns>The number of pixels to be moved to center the sprite on the tileset.</returns> protected virtual int GetOffset() { return(outputTileset.TileSize() / 2 - inputTileset.TileSize() / 2); }