c#
VB
c++
使用Leadtools;
使用Leadtools.Codecs;
使用Leadtools.ImageProcessing;
使用Leadtools.ImageProcessing.Core;
公共无效NetscapePaletteExample ()
{
字符串srcFileName = Path.Combine (LEAD_VARS.ImagesDir,“Image1.cmp”);
字符串destFileName = Path.Combine (LEAD_VARS.ImagesDir,“Image1_Netscape.bmp”);
RasterCodecs编解码器=新RasterCodecs ();
编解码器。ThrowExceptionsOnInvalidImages =真正的;
/ /加载源图像为8位/像素
RasterImage srcImage =编解码器。加载(srcFileName 8 CodecsLoadByteOrder。Rgb, 1, 1);
/ /得到网景调色板
RasterColor [] netscapePalette = RasterPalette.Netscape ();
/ /创建新的托盘化的形象。
RasterImage destImage =新RasterImage (
RasterMemoryFlags.Conventional,
srcImage.Width,
srcImage.Height,
8日,
srcImage.Order,
srcImage.ViewPerspective,
netscapePalette,
IntPtr.Zero,
0);
/ /设置抖动的方法。
srcImage。DitheringMethod = RasterDitheringMethod.StevensonArce;
srcImage.Access ();
destImage.Access ();
/ /初始化抖动的过程。
srcImage。StartDithering (netscapePalette, 256);
/ /分配8位数据的输出缓冲区。
字节[]inbuf =新字节[srcImage。宽度* 3];/ /缓冲区来保存输入行。
字节[]outBuffer =新字节[srcImage.Width];/ /缓冲输出行。
/ /使用DitherLine方法处理图像中的每一行。
为(int我= 0;我< srcImage.Height;我+ +)
{
srcImage。GetRow(我inbuf 0, srcImage.BytesPerLine);
srcImage。outBuffer DitherLine (inbuf, 0, 0);
destImage。SetRow(我outBuffer 0, destImage.BytesPerLine);
}
/ /抖动过程结束。
srcImage.StopDithering ();
destImage.Release ();
srcImage.Release ();
/ /保存目的地形象
编解码器。保存(destImage destFileName RasterImageFormat。Bmp, 8);
/ /清理
srcImage.Dispose ();
destImage.Dispose ();
}
静态类LEAD_VARS
{
公共常量字符串ImagesDir =@“C: \ LEADTOOLS21 \ Resources \图片”;
}
进口Leadtools
进口Leadtools.Codecs
进口Leadtools.ImageProcessing
进口Leadtools.ImageProcessing.Core
公共子NetscapePaletteExample ()
昏暗的编解码器作为RasterCodecs =新RasterCodecs ()
编解码器。ThrowExceptionsOnInvalidImages =真正的
昏暗的srcFileName作为字符串= Path.Combine (LEAD_VARS.ImagesDir“Image1.cmp”)
昏暗的destFileName作为字符串= Path.Combine (LEAD_VARS.ImagesDir“Image1_Netscape.bmp”)
“加载源图像为8位/像素
昏暗的srcImage作为RasterImage =编解码器。加载(srcFileName 8 CodecsLoadByteOrder。Rgb, 1,1)
“网景调色板
昏暗的netscapePalette作为RasterColor () = RasterPalette.Netscape ()
“创建新托盘化的形象。
昏暗的destImage作为RasterImage =新RasterImage (RasterMemoryFlags。传统,srcImage。宽度,srcImage。高度,8 srcImage。订单,srcImage。ViewPerspective、netscapePalette IntPtr。0,0)
“设置抖动的方法。
srcImage。DitheringMethod = RasterDitheringMethod.StevensonArce
srcImage.Access ()
destImage.Access ()
“初始化抖动的过程。
srcImage。StartDithering (netscapePalette, 256)
“分配8位数据的输出缓冲区。
昏暗的inbuf作为字节()=新字节(srcImage。宽度* 3 - 1){}的缓冲区来保存输入行。
昏暗的outBuffer作为字节()=新字节(srcImage。宽度- 1){}“缓冲输出行。
“使用DitherLine方法处理图像中的每一行。
昏暗的我作为整数= 0
做而我< srcImage.Height
srcImage。srcImage.BytesPerLine GetRow(我inbuf 0)
srcImage。outBuffer DitherLine (inbuf, 0, 0)
destImage。destImage.BytesPerLine SetRow(我outBuffer 0)
我+ = 1
循环
的抖动过程结束。
srcImage.StopDithering ()
destImage.Release ()
srcImage.Release ()
“拯救目的地形象
编解码器。保存(destImage destFileName RasterImageFormat。Bmp, 8)
的清理
srcImage.Dispose ()
destImage.Dispose ()
结束子
公共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点
联系我们请填写这张表格,我们将通过电子邮件联系你。