public RasterImage ReadThumbnail(
string fileName,
CodecsThumbnailOptions options,
int pageNumber
)
- (nullable LTRasterImage *)readThumbnailFromFile:(NSString *)file
options:(LTCodecsThumbnailOptions *)thumbnailOptions
pageNumber:(NSInteger)pageNumber
error:(NSError **)error
public:
RasterImage^ ReadThumbnail(
String^ fileName,
CodecsThumbnailOptions options,
int pageNumber
)
def ReadThumbnail(self,fileName,options,pageNumber):
fileName
A String containing the name of the file from which the thumbnail image will be created.
options
Options for creating the thumbnail image.
pageNumber
1-based index of the page from which the thumbnail image should be created.
The RasterImage object that this method creates.
This method will always return a thumbnail image. Depending on the options passed, this method might read the stamp stored inside EXIF, CMP, JFIF and FlashPix files and return that. To read the file stamp only, use ReadStamp.
This example will read a thumbnail from a CMP file
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