public RasterDitheringMethod DitheringMethod { get; set; }
@property (nonatomic, assign) LTRasterDitheringMethod ditheringMethod;
public RasterDitheringMethod getDitheringMethod()
public void setDitheringMethod(RasterDitheringMethod value)
public:
property RasterDitheringMethod DitheringMethod {
RasterDitheringMethod get();
void set ( RasterDitheringMethod );
}
DitheringMethod # get and set (CodecsThumbnailOptions)
The dithering method to use.
The DitheringMethod will be passed to ColorResolutionCommand internally when MaintainAspectRatio is true, ForceSize is true, and the source image is not 24-bit. In this case, the thumbnail image is converted to 24-bit, then, combined with a "background" image. The resulting image is then returned to the thumbnail image's original bit-depth using DitheringMethod.
using Leadtools;
using Leadtools.Codecs;
using Leadtools.ImageProcessing;
using Leadtools.ImageProcessing.Color;
using Leadtools.Svg;
public void ReadThumbnailExample()
{
RasterCodecs codecs = new RasterCodecs();
string srcFileName = Path.Combine(LEAD_VARS.ImagesDir, "Image1.cmp");
// Create a thumbnail with default options
CodecsThumbnailOptions options = CodecsThumbnailOptions.Default;
options.LoadStamp = false;
RasterImage thumbnail = codecs.ReadThumbnail(srcFileName, options, 1);
Debug.WriteLine("Thumbnail with default option:");
Debug.WriteLine(" Size: {0} by {1} pixels. Bits/Pixel: {2}", thumbnail.Width, thumbnail.Height, thumbnail.BitsPerPixel);
thumbnail.Dispose();
// Create a thumbnail with some options
options.LoadStamp = false;
options.Width = 40;
options.Height = 80;
options.ForceSize = true;
options.MaintainAspectRatio = false;
options.BackColor = RasterColor.FromKnownColor(RasterKnownColor.LightBlue);
options.BitsPerPixel = 8;
options.DitheringMethod = RasterDitheringMethod.None;
options.Order = RasterByteOrder.Rgb;
options.PaletteFlags = ColorResolutionCommandPaletteFlags.None;
options.Resample = false;
thumbnail = codecs.ReadThumbnail(srcFileName, options, 1);
Debug.WriteLine("Thumbnail with set option (size: {0} by {1}, Bits/Pixel: {2}, ForeSize: {3}",
options.Width, options.Height, options.BitsPerPixel, options.ForceSize);
Debug.WriteLine(" Size: {0} by {1} pixels. Bits/Pixel: {2}", thumbnail.Width, thumbnail.Height, thumbnail.BitsPerPixel);
thumbnail.Dispose();
codecs.Dispose();
}
static class LEAD_VARS
{
public const string ImagesDir = @"C:\LEADTOOLS23\Resources\Images";
}
import java.io.*;
import java.net.*;
import java.nio.file.Paths;
import java.util.*;
import java.time.Instant;
import java.time.Duration;
import org.junit.*;
import org.junit.runner.JUnitCore;
import org.junit.runner.Result;
import org.junit.runner.notification.Failure;
import static org.junit.Assert.*;
import leadtools.*;
import leadtools.codecs.*;
import leadtools.codecs.RasterCodecs.FeedCallbackThunk;
import leadtools.drawing.internal.*;
import leadtools.imageprocessing.*;
import leadtools.imageprocessing.color.ChangeIntensityCommand;
import leadtools.svg.*;
public void readThumbnailExample() throws IOException {
final String LEAD_VARS_IMAGES_DIR = "C:\\LEADTOOLS23\\Resources\\Images";
RasterCodecs codecs = new RasterCodecs();
String srcFileName = combine(LEAD_VARS_IMAGES_DIR, "Image1.cmp");
// Create a thumbnail with default options
CodecsThumbnailOptions options = CodecsThumbnailOptions.getDefault();
options.setLoadStamp(false);
ILeadStream srcFileStream = LeadStreamFactory.create(srcFileName);
RasterImage thumbnail = codecs.readThumbnail(srcFileStream, options, 1);
System.out.println("Thumbnail with default option:");
System.out.println(" Size: " + thumbnail.getWidth() + " by " + thumbnail.getHeight() + " pixels. Bits/Pixel: "
+ thumbnail.getBitsPerPixel());
thumbnail.dispose();
// Create a thumbnail with some options
options.setLoadStamp(false);
options.setWidth(40);
options.setHeight(80);
options.setForceSize(true);
options.setMaintainAspectRatio(false);
options.setBackColor(RasterColor.fromKnownColor(RasterKnownColor.LIGHT_BLUE));
options.setBitsPerPixel(8);
options.setDitheringMethod(RasterDitheringMethod.NONE);
options.setOrder(RasterByteOrder.RGB);
options.setPaletteFlags(ColorResolutionCommandPaletteFlags.NONE);
options.setResample(false);
thumbnail = codecs.readThumbnail(srcFileStream, options, 1);
assertTrue("Incorrect dithering method", options.getDitheringMethod().equals(RasterDitheringMethod.NONE));
System.out.println("Correct dithering method was used");
System.out.printf("Thumbnail with set option (size: %s by %s, Bits/Pixel: %s, ForeSize: %s%n",
options.getWidth(), options.getHeight(), options.getBitsPerPixel(), options.getForceSize());
System.out.printf(" Size: %s by %s pixels. Bits/Pixel: %s%n", thumbnail.getWidth(), thumbnail.getHeight(),
thumbnail.getBitsPerPixel());
thumbnail.dispose();
srcFileStream.close();
codecs.dispose();
}
Help Collections
Raster .NET | C API | C++ Class Library | HTML5 JavaScript
Document .NET | C API | C++ Class Library | HTML5 JavaScript
Medical .NET | C API | C++ Class Library | HTML5 JavaScript
Medical Web Viewer .NET
Multimedia
Direct Show .NET | C API | Filters
Media Foundation .NET | C API | Transforms
Supported Platforms
.NET, Java, Android, and iOS/macOS Assemblies
Imaging, Medical, and Document
C API/C++ Class Libraries
Imaging, Medical, and Document
HTML5 JavaScript Libraries
Imaging, Medical, and Document