StopDithering Method (original) (raw)
Syntax
C#
Objective-C
C++/CLI
Java
Python
public void StopDithering()
- (BOOL)stopDithering:(NSError **)error
public void stopDithering();
public:
void StopDithering();
Example
using Leadtools;
using Leadtools.Codecs;
using Leadtools.ImageProcessing;
using Leadtools.ImageProcessing.Core;
using Leadtools.ImageProcessing.Color;
using Leadtools.Dicom;
using Leadtools.Drawing;
using Leadtools.Controls;
using Leadtools.Svg;
public void StartDitheringExample()
{
RasterCodecs codecs = new RasterCodecs();
// Load an image that has BottomLeft ViewPerspective
RasterImage image = codecs.Load(Path.Combine(LEAD_VARS.ImagesDir, "IMAGE1.CMP"));
RasterColor[] Palette = RasterPalette.Fixed(256);
// Create the new palletized image.
RasterImage destinationImage = new RasterImage(RasterMemoryFlags.Conventional, image.Width, image.Height, 8, image.Order, image.ViewPerspective, Palette, IntPtr.Zero, 0);
// Set the dithering method.
image.DitheringMethod = RasterDitheringMethod.StevensonArce;
// Initialize the dithering process.
image.StartDithering(Palette, 256);
// Allocate the output buffer for 8-bit data.
byte[] InBuffer = new byte[image.Width * 3];// Buffer to hold the input row.
byte[] OutBuffer = new byte[image.Width];// Buffer to hold the output row.
// Use DitherLine method to process each row in the image.
image.Access();
destinationImage.Access();
for (int i = 0; i < image.Height; i++)
{
image.GetRow(i, InBuffer, 0, image.BytesPerLine);
image.DitherLine(InBuffer, 0, OutBuffer, 0);
destinationImage.SetRow(i, OutBuffer, 0, destinationImage.BytesPerLine);
}
destinationImage.Release();
image.Release();
// End the dithering process.
image.StopDithering();
codecs.Save(destinationImage, Path.Combine(LEAD_VARS.ImagesDir, "IMAGE1_DitherLine.BMP"), RasterImageFormat.Bmp, 0);
image.Dispose();
destinationImage.Dispose();
codecs.Dispose();
}
static class LEAD_VARS
{
public const string ImagesDir = @"C:\LEADTOOLS22\Resources\Images";
}
Leadtools Assembly