/// <summary> /// Initializes a new instance for the given FreeImage bitmap. /// </summary> /// <param name="dib">Handle to a FreeImage bitmap.</param> /// <exception cref="ArgumentNullException"><paramref name="dib"/> is null.</exception> /// <exception cref="ArgumentException"><paramref name="dib"/> is not /// <see cref="FREE_IMAGE_TYPE.FIT_BITMAP"/><para/>-or-<para/> /// <paramref name="dib"/> has more than 8bpp.</exception> public Palette(FIBITMAP dib) : base(FreeImage.GetPalette(dib), (int)FreeImage.GetColorsUsed(dib)) { if (dib.IsNull) { throw new ArgumentNullException("dib"); } if (FreeImage.GetImageType(dib) != FREE_IMAGE_TYPE.FIT_BITMAP) { throw new ArgumentException("dib"); } if (FreeImage.GetBPP(dib) > 8u) { throw new ArgumentException("dib"); } }