private static void ExportImages(MapContainer mapContainer) { mapContainer.GetType(MapItemTypes.Image, out var imagesStart, out var imagesNum); Debug.Log("map", imagesNum > 0 ? "images:" : "images not found"); for (var i = 0; i < imagesNum; i++) { var image = mapContainer.GetItem <MapItemImage>(imagesStart + i, out _, out _); var imageName = mapContainer.GetData <string>(image.ImageName); Debug.Log("map", " " + string.Join(';', new string[] { $"name={imageName}", $"width={image.Width}", $"height={image.Height}", $"external={image.External}" })); //var imageData = mapContainer.GetData<byte[]>(image.ImageData); //var format = Image.DetectFormat(imageData); //using (var image32 = Image.Load<Rgba32>(imageData)) //{ // image32.Save($"{image.ImageName}.png"); //} mapContainer.UnloadData(image.ImageName); } }
private static void ExportImages(MapContainer mapContainer) { mapContainer.GetType(MapItemTypes.IMAGE, out var imagesStart, out var imagesNum); Debug.Log("map", imagesNum > 0 ? "images:" : "images not found"); for (var i = 0; i < imagesNum; i++) { var image = mapContainer.GetItem <MapItemImage>(imagesStart + i, out _, out _); var imageName = mapContainer.GetData <string>(image.ImageName); Debug.Log("map", " " + string.Join(';', new string[] { $"name={imageName}", $"width={image.Width}", $"height={image.Height}", $"external={image.External}" })); //var imageData = mapContainer.GetData<byte>(image.ImageData); //File.WriteAllBytes($"{image.ImageName}.png", imageData); mapContainer.UnloadData(image.ImageName); } }