Specifies the minimum resolution acceptable for digital photos.
public int MinResolution { get; set; }
public int getMinResolution();
public void setMinResolution(
int intValue
);
public:
property Int32 MinResolution
{
Int32 get()
void set(Int32 value)
}
MinResolution # get and set (AutoFixImageResolutionOptions)
The minimum resolution acceptable for digital photos. The default value is 96.
This is the setting that determines whether an image originated as a digital photo. Any photo or image with a resolution less than MinResolution will be automatically converted. Images with a resolution equal to or greater than this value will not be converted.
Most digital cameras seem to set the resolution to 72, so 96 is a good value for MinResolution. The default value is 96, which means "automatically convert the resolution in images with XResolution < 96 and YResolution < 96".
Setting MinResolution to 0 means that no images or photos will have their resolution converted.
For more information, refer to AutoFixImageResolutionOptions.
using Leadtools;
using Leadtools.Codecs;
public static void AutoFixImageResolutionOptions_Example()
{
// Simulate a digital camera image
string fileName = Path.Combine(LEAD_VARS.ImagesDir, "digital-camera.jpg");
int pixelWidth = 3042;
int pixelHeight = 4032;
int resolution = 72;
using (var rasterImage = RasterImage.Create(pixelWidth, pixelHeight, 24, resolution, RasterColor.White))
{
using (var codecs = new RasterCodecs())
{
codecs.Save(rasterImage, fileName, RasterImageFormat.ExifJpeg411, 24);
}
}
Console.WriteLine("Default");
// Load it using the default values, it should be the original size
using (var codecs = new RasterCodecs())
{
using (var rasterImage = codecs.Load(fileName, 1))
{
Console.WriteLine("image size {0} by {1} pixels at {2} DPI", rasterImage.Width, rasterImage.Height, rasterImage.XResolution);
// Show its size in inches
double inchesWidth = (double)rasterImage.Width / rasterImage.XResolution;
double inchesHeight = (double)rasterImage.Height / rasterImage.YResolution;
Console.WriteLine("size in inches {0} by {1}", inchesWidth, inchesHeight);
Debug.Assert(rasterImage.Width == pixelWidth);
Debug.Assert(rasterImage.Height == pixelHeight);
Debug.Assert(rasterImage.XResolution == resolution);
Debug.Assert(rasterImage.YResolution == resolution);
}
}
Console.WriteLine("Fixing the resolution");
// Automatically fix its resolution next time we load it
AutoFixImageResolutionOptions options = RasterDefaults.GetAutoFixImageResolutionOptions();
options.PageWidth = 8.5;
options.PageHeight = 11;
options.Unit = AutoFixImageResolutionUnit.Inch;
options.MinResolution = 96;
RasterDefaults.SetAutoFixImageResolutionOptions(options);
using (var codecs = new RasterCodecs())
{
// Use the option with this RasterCodecs
codecs.Options.Load.AutoFixImageResolution = true;
using (var rasterImage = codecs.Load(fileName, 1))
{
Console.WriteLine("image size {0} by {1} pixels at {2} DPI", rasterImage.Width, rasterImage.Height, rasterImage.XResolution);
// Show its size in inches
double inchesWidth = (double)rasterImage.Width / rasterImage.XResolution;
double inchesHeight = (double)rasterImage.Height / rasterImage.YResolution;
Console.WriteLine("size in inches {0} by {1}", inchesWidth, inchesHeight);
Debug.Assert(rasterImage.Width == pixelWidth);
Debug.Assert(rasterImage.Height == pixelHeight);
Debug.Assert((int)inchesWidth <= 8.5);
Debug.Assert((int)inchesHeight <= 11);
}
}
}
static class LEAD_VARS
{
public const string ImagesDir = @"C:\LEADTOOLS23\Resources\Images";
}
import java.io.File;
import java.io.IOException;
import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.Paths;
import org.junit.*;
import org.junit.Test;
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.*;
public void rasterDefaultsAutoFixImageResolutionOptionsExample() {
// Simulate a digital camera image
final String LEAD_VARS_IMAGES_DIR = "C:\\LEADTOOLS23\\Resources\\Images";
String fileName = combine(LEAD_VARS_IMAGES_DIR, "digital-camera.jpg");
int pixelWidth = 3042;
int pixelHeight = 4032;
int resolution = 72;
RasterImage rasterImage = RasterImage.create(pixelWidth, pixelHeight, 24, resolution, RasterColor.WHITE);
RasterCodecs codecs = new RasterCodecs();
codecs.save(rasterImage, fileName, RasterImageFormat.EXIF_JPEG_411, 24);
System.out.println("Default");
// Load it using the default values, it should be the original size
RasterImage rasterImage2 = codecs.load(fileName, 1);
System.out.printf("image size %d by %d pixels at %d DPI\n", rasterImage2.getWidth(), rasterImage2.getHeight(),
rasterImage2.getXResolution());
// Show its size in inches
double inchesWidth = (double) rasterImage2.getWidth() / rasterImage2.getXResolution();
double inchesHeight = (double) rasterImage2.getHeight() / rasterImage2.getYResolution();
System.out.printf("size in inches %f by %f", inchesWidth, inchesHeight);
assertTrue(rasterImage2.getWidth() == pixelWidth);
assertTrue(rasterImage2.getHeight() == pixelHeight);
assertTrue(rasterImage2.getXResolution() == resolution);
assertTrue(rasterImage2.getYResolution() == resolution);
System.out.println("Fixing the resolution");
// Automatically fix its resolution next time we load it
AutoFixImageResolutionOptions options = RasterDefaults.getAutoFixImageResolutionOptions();
options.setPageWidth(8.5);
options.setPageHeight(11);
options.setUnit(AutoFixImageResolutionUnit.INCH);
options.setMinResolution(96);
RasterDefaults.setAutoFixImageResolutionOptions(options);
// Use the option with this RasterCodecs
codecs.getOptions().getLoad().setAutoFixImageResolution(true);
RasterImage rasterImage3 = codecs.load(fileName, 1);
System.out.printf("image size %d by %d pixels at %d DPI", rasterImage3.getWidth(), rasterImage3.getHeight(),
rasterImage3.getXResolution());
// Show its size in inches
double inchesWidth2 = (double) rasterImage3.getWidth() / rasterImage3.getXResolution();
double inchesHeight2 = (double) rasterImage3.getHeight() / rasterImage3.getYResolution();
System.out.printf("size in inches %f by %f", inchesWidth, inchesHeight);
assertTrue(rasterImage3.getWidth() == pixelWidth);
assertTrue(rasterImage3.getHeight() == pixelHeight);
assertTrue((int) inchesWidth2 <= 8.5);
assertTrue((int) inchesHeight2 <= 11);
}
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