private static void CopyColormap(Bitmap img, Pix pix) { Color[] entries = img.Palette.Entries; PixColormap pixColormap = PixColormap.Create(pix.Depth); try { for (int index = 0; index < entries.Length; ++index) { if (!pixColormap.AddColor(entries[index].ToPixColor())) { throw new InvalidOperationException(string.Format("Failed to add colormap entry {0}.", (object)index)); } } pix.Colormap = pixColormap; } catch (Exception) { pixColormap.Dispose(); throw; } }
private void CopyColormap(Bitmap img, Pix pix) { var imgPalette = img.Palette; var imgPaletteEntries = imgPalette.Entries; var pixColormap = PixColormap.Create(pix.Depth); try { for (int i = 0; i < imgPaletteEntries.Length; i++) { if (!pixColormap.AddColor(ToPixColor(imgPaletteEntries[i]))) { throw new InvalidOperationException(String.Format("Failed to add colormap entry {0}.", i)); } } pix.Colormap = pixColormap; } catch (Exception) { pixColormap.Dispose(); throw; } }