c#
VB
objective - c
c++
Java
公共RemapHueCommand()
公共函数新()
- (instancetype)初始化
公共RemapHueCommand ()
公共:RemapHueCommand ();
运行RemapHueCommand在一个图像和改变所有绿色色调(绿色)附近的色调。
使用Leadtools;使用Leadtools.Codecs;使用Leadtools.ImageProcessing.Color;公共intINCREMENT_S2 (intx,int长度){返回((x + 1) %长度);}公共intDECREMENT_S2 (intx,int长度){返回((x +(- 1)长度)%长度);}公共intADD_S2 (intx,inty,int长度){返回(长度(x + y) %);}公共无效RemapHueCommandConstructorExample (){/ /加载一个图像RasterCodecs编解码器=新RasterCodecs ();编解码器。ThrowExceptionsOnInvalidImages =真正的;RasterImage图像= codecs.Load (Path.Combine (LEAD_VARS.ImagesDir,“cannon.jpg”));/ /准备命令int长度;如果(图片。BitsPerPixel > = 48)长度= 0 x10000;其他的如果(!(形象。BitsPerPixel = = 16 | |形象。BitsPerPixel = = 12))长度= 256;其他的如果(image.GetLookupTable () ! =零& & image.UseLookupTable)长度= 256;其他的长度= (1 < < image.BitsPerPixel);/ /分配表int[]MaskTable =新int(长度);int[]HueTable =新int(长度);/ /初始化表为(int我= 0;我<长度;我+ +){MaskTable[我]= 0;HueTable[我]=我;}/ /得到绿色的色调RasterHsvColor hsvRef = RasterHsvColor.FromRasterColor (新RasterColor (0 255 0));intHueGreen = hsvRef.H;/ /获得新的色彩hsvRef = RasterHsvColor.FromRasterColor (新RasterColor (255、128、0));int改变= (int)hsvRef。H - (int)HueGreen;intHueChange =(改变> 0)?(int)变化:(int)(改变+长度- 1);HueGreen * =(- 1)长度/ 255;HueChange * =(- 1)长度/ 255;/ /设置值在HueTable MaskTableHueTable [HueGreen] = (HueTable [HueGreen] + HueChange);MaskTable [HueGreen] = 1;/ /设置颜色接近绿色(+ / - 15)int数=(15 *(- 1)长度)/ 255;为(inti = INCREMENT_S2 (HueGreen、长度);数> 0;i = INCREMENT_S2(我、长度),Count (){HueTable[我]= ADD_S2 (HueTable[我],HueChange,长度);MaskTable[我]= 1;}数=(15 *(- 1)长度)/ 255;为(inti = DECREMENT_S2 (HueGreen、长度);数> 0;i = DECREMENT_S2(我、长度),Count (){HueTable[我]= ADD_S2 (HueTable[我],HueChange,长度);MaskTable[我]= 1;}RemapHueCommand命令=新RemapHueCommand ();命令。掩码= MaskTable;命令。HueTable = HueTable;命令。SaturationTable =零;命令。ValueTable =零;命令。LookUpTableLength =长度;command.Run(图片);编解码器。保存(形象,Path.Combine (LEAD_VARS.ImagesDir“Result.jpg”),RasterImageFormat。Jpeg、24);}静态类LEAD_VARS{公共常量字符串ImagesDir =@“C: \ LEADTOOLS21 \ Resources \图片”;}
进口Leadtools进口Leadtools.Codecs进口Leadtools.ImageProcessing.Color公共函数INCREMENT_S2 (按值传递x作为整数,按值传递长度作为整数)作为整数返回((x + 1)国防部长度)结束函数公共函数DECREMENT_S2 (按值传递x作为整数,按值传递长度作为整数)作为整数返回((x +(- 1)长度)国防部长度)结束函数公共函数ADD_S2 (按值传递x作为整数,按值传递y作为整数,按值传递长度作为整数)作为整数返回((x + y)国防部长度)结束函数公共子RemapHueCommandConstructorExample ()昏暗的编解码器作为新RasterCodecs ()编解码器。ThrowExceptionsOnInvalidImages =真正的昏暗的leadImage作为RasterImage = codecs.Load (Path.Combine (LEAD_VARS.ImagesDir“cannon.jpg”))“准备的命令昏暗的长度作为整数如果(leadImage。BitsPerPixel > = 48)然后长度= 65536ElseIf(不(leadImage。BitsPerPixel = 16或leadImage。BitsPerPixel = 12))然后长度= 256ElseIf(没有(leadImage.GetLookupTable)和leadImage.UseLookupTable)然后长度= 256其他的长度= (1 < < leadImage.BitsPerPixel)结束如果昏暗的MaskTable ()作为整数昏暗的HueTable ()作为整数“分配表ReDimMaskTable长度(- 1)ReDimHueTable长度(- 1)昏暗的我作为整数“初始化表为我= 0来长度- 1MaskTable (i) = 0HueTable (i) =我下一个得到绿色的色调昏暗的hsvRef作为RasterHsvColor = RasterHsvColor.FromRasterColor (新RasterColor (0 255 0))昏暗的HueGreen作为整数HueGreen = hsvRef.H获得新的颜色hsvRef = RasterHsvColor.FromRasterColor (新RasterColor (255、128、0))昏暗的改变作为整数= hsvRef。H - HueGreen昏暗的HueChange作为整数如果(改变> 0)然后HueChange =改变其他的HueChange =改变+长度- 1结束如果HueGreen = (HueGreen *长度(- 1))\ 255HueChange = (HueChange *长度(- 1))\ 255的设置值HueTable MaskTableHueTable (HueGreen) = HueTable (HueGreen) + HueChangeMaskTable (HueGreen) = 1“绿色附近设置色彩(+ / - 15)我= INCREMENT_S2 (HueGreen、长度)昏暗的数作为整数为数长度= (15 * (- 1))\ 255来1一步1i = INCREMENT_S2(我,长度)HueTable (i) = ADD_S2 (HueTable(我),HueChange,长度)MaskTable (i) = 1下一个我= DECREMENT_S2 (HueGreen、长度)为数长度= (15 * (- 1))\ 255来1一步1i = DECREMENT_S2(我,长度)HueTable (i) = ADD_S2 (HueTable(我),HueChange,长度)MaskTable (i) = 1下一个昏暗的命令作为RemapHueCommand =新RemapHueCommand命令。掩码= MaskTable命令。HueTable = HueTable命令。SaturationTable =没有什么命令。ValueTable =没有什么命令。LookUpTableLength =长度command.Run (leadImage)编解码器。保存(leadImage Path.Combine (LEAD_VARS.ImagesDir“Result.jpg”),RasterImageFormat。Jpeg, 24)结束子公共NotInheritable类LEAD_VARS公共常量ImagesDir作为字符串=“C: \ LEADTOOLS21 \ Resources \图片”结束类
帮助收藏
光栅net|C API|c++类库|HTML5 JavaScript
文档net|C API|c++类库|HTML5 JavaScript
医疗net|C API|c++类库|HTML5 JavaScript
医疗Web查看器net
188宝金博怎么下载
支持的平台上
net, Java, Android和iOS / macOS组件
C / c++类库的API
HTML5 JavaScript库
你的邮件已经发送到支持!有人应该联系!如果你的问题是紧急请回到聊天。
聊天时间:
周一——周五,上午6点等
谢谢你的反馈!
请填写表单重新开始一个新的聊天。
所有代理目前离线。
聊天时间:
周一-周五
早上8:30 - 6点
联系我们请填写这张表格,我们将通过电子邮件联系你。
