public override void Export(Stream writeStream) { CheckStreamAndTexture(writeStream); int width = (int)Texture.Width; int height = (int)Texture.Height; var builder = PngBuilder.Create(width, height, Texture.Format.HasAlpha()); var writer = new PngWriter(builder, width); byte[] data = Texture.TexturePixels.Data.PrimaryRawImage; if (SpecifyArray >= 0 && SpecifyArray < Texture.ArrayCount) { data = Texture.TexturePixels.Data.RawImage[SpecifyArray][0]; } TextureUtil.DecodeTextureDataToWriter(data, width, height, Texture.Format, writer); builder.Save(writeStream); }
public PngWriter(PngBuilder builder, int width) { this.builder = builder; this.width = width; }