在这个话题▼

ColorResolutionCommand和优化选项

调色板提供必须的数组Leadtools.RasterColor结构有四个1字节字段:

Leadtools.ImageProcessing.ColorResolutionCommand,将图像的像素值映射到调色板条目,也可以填写一些条目与优化通过指定的颜色ColorResolutionCommandPaletteFlags.Optimized国旗的ColorResolutionCommand.PaletteFlags财产。的保留的颜色Leadtools.RasterColor结构控制命令是否填写条目,如果任何像素值映射到该条目,如下表所示:

价值 意义
0 x01(或RasterColor.ReservedColor) 保留调色板条目——没有任何像素值映射到该条目。使用这个值保留供以后使用的条目。
0 x02(或RasterColor.EmptyColor) 调色板条目——让命令填写颜色。命令供应优化颜色填充和像素值映射到这些条目。
0 常规的调色板条目——像素值映射到所提供的颜色。确保定义RasterColor.R,RasterColor.G,RasterColor.B在这种情况下的条目。

例子
c#
/ /这个c#示例假定是24/32/48/64-bit位图图像。它将它转换为一个优化的255种颜色的调色板。/ /在这种情况下,选择一个颜色的调色板[0],让由ColorResolutionCommand其他255个条目。私人静态无效TestCustomOptimizedPalette (RasterImage图片){RasterColor[]面板=RasterColor [256];/ /选择一个颜色的调色板条目(例如,一个透明位图颜色)。/ /在这种情况下,设置这个条目的颜色不是图像,然后用这种颜色填充透明区域。面板[0]=RasterColor (1 1 1);面板[0]。保留= RasterColor.Reserved;/ / ColorResolutionCommand应该忽略这个颜色在生成优化的调色板/ /其他调色板条目标记为空,所以ColorResolutionCommand将填补他们(inti = 1;< = 255;我+ +)调色板[我]。保留= RasterColor.EmptyColor;/ /或面板[我]。IsEmptyColor = trueColorResolutionCommand cmd =ColorResolutionCommand (ColorResolutionCommandMode.InPlace8日,RasterByteOrder.Rgb,RasterDitheringMethod.FloydStein,ColorResolutionCommandPaletteFlags.Optimized,);cmd.SetPalette(面板);cmd.Run(图片);/ /现在“形象”是一个调色板的8位图像。如果你“RasterColor [] imagePalette = image.GetPalette ():/ /——imagePalette[0]应该选择的颜色/ /——imagePalette [1], imagePalette [2],…imagePalette[255]应该多种颜色选择的ColorResolution命令}

另请参阅

RasterColor.Reserved

ColorResolutionCommand

LEADTOOLS成像、医学和文档
188金宝搏的网址客服|支持|联系我们|知识产权的通知
©1991 - 2022领先的技术公司。保留所有权利。