ARGBImageData ToImage() { var w = BufferWidth - 12; var h = BufferHeight - 24; var data = new ARGBImageData(w, h); var targetOffset = 0; var sourceOffset = (BufferWidth * (12 + offsetVertical)) + offsetHorizontal + 6; for (var y = 0; y < h; y++) { for (var x = 0; x < w; x++) { var colorIndex = buffer[sourceOffset + x]; ARGB color; if (TransparentColorOverride && ((colorIndex == transparentColor) || (colorIndex == clearColor))) { color = TransparentColorValue; } else { color = palette[colorIndex]; color.Alpha = GlobalAlpha; } data[targetOffset++] = color; sourceOffset += BufferWidth; } } return(data); }
ARGBImageData ToImage() { int w = BufferWidth - 12; int h = BufferHeight - 24; var data = new ARGBImageData(w, h); int targetOffset = 0; int sourceOffset = (BufferWidth * (12 + m_OffsetVertical)) + m_OffsetHorizontal + 6; for (int y = 0; y < h; y++) { for (int x = 0; x < w; x++) { byte colorIndex = m_Buffer[sourceOffset + x]; ARGB color; if (TransparentColorOverride && ((colorIndex == m_TransparentColor) || (colorIndex == m_ClearColor))) { color = TransparentColorValue; } else { color = m_Palette[colorIndex]; color.Alpha = GlobalAlpha; } data[targetOffset++] = color; sourceOffset += BufferWidth; } } return(data); }