public GrayscaleCommand(int bitsPerPixel)
- (instancetype)initWithBitsPerPixel:(NSInteger)bitsPerPixel public GrayscaleCommand(int bitsPerPixel) public:GrayscaleCommand(int bitsPerPixel)
__init__(self,bitsPerPixel) # Overloaded constructor
bitsPerPixel
Value indicating the number of bits in the destination image. Valid values are 8, 12, or 16.
using Leadtools;using Leadtools.Codecs;using Leadtools.ImageProcessing;public void GrayscaleCommandExample(){RasterCodecs codecs = new RasterCodecs();string srcFileName = Path.Combine(LEAD_VARS.ImagesDir, "Image1.cmp");string destFileName8 = Path.Combine(LEAD_VARS.ImagesDir, "Image1_grayscale8.jpg");string destFileName12 = Path.Combine(LEAD_VARS.ImagesDir, "Image1_grayscale12.jpg");string destFileName16 = Path.Combine(LEAD_VARS.ImagesDir, "Image1_grayscale16.jpg");// Load the source image from disk as 24-bits/pixelRasterImage image = codecs.Load(srcFileName, 24, CodecsLoadByteOrder.Bgr, 1, 1);// Check the grayscale modeConsole.WriteLine("Grayscale mode of original image = {0}", image.GrayscaleMode);// Convert to 8-bit grayscaleGrayscaleCommand command = new GrayscaleCommand();command.BitsPerPixel = 8;command.Run(image);// Check the grayscale modeConsole.WriteLine("Grayscale mode after grayscale command with 8 bpp = {0}", image.GrayscaleMode);// Save it to diskcodecs.Options.Jpeg.Save.QualityFactor = 2;codecs.Save(image, destFileName8, RasterImageFormat.Jpeg, 8);image.Dispose();// Load the image again this time grayscale to 12-bits/pixelimage = codecs.Load(srcFileName, 24, CodecsLoadByteOrder.Bgr, 1, 1);command.BitsPerPixel = 12;command.Run(image);Console.WriteLine("Grayscale mode after grayscale command with 12 bpp = {0}", image.GrayscaleMode);codecs.Options.Jpeg.Save.QualityFactor = 2;codecs.Save(image, destFileName12, RasterImageFormat.Jpeg, 12);image.Dispose();// Load the image again this time grayscale to 16-bits/pixelimage = codecs.Load(srcFileName, 24, CodecsLoadByteOrder.Bgr, 1, 1);command.BitsPerPixel = 16;command.Run(image);Console.WriteLine("Grayscale mode after grayscale command with 16 bpp = {0}", image.GrayscaleMode);// When saving 16-bit jpegs, you must use lossless quality factorcodecs.Options.Jpeg.Save.QualityFactor = 0;codecs.Save(image, destFileName16, RasterImageFormat.Jpeg, 16);image.Dispose();// Clean Upcodecs.Dispose();}static class LEAD_VARS{public const string ImagesDir = @"C:\LEADTOOLS23\Resources\Images";}
import java.io.File;import java.io.IOException;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.imageprocessing.*;public void grayscaleCommandExample() {final String LEAD_VARS_IMAGES_DIR = "C:\\LEADTOOLS23\\Resources\\Images";RasterCodecs codecs = new RasterCodecs();String srcFileName = combine(LEAD_VARS_IMAGES_DIR, "rgsref.cmp");String destFileName8 = combine(LEAD_VARS_IMAGES_DIR, "rgsref_grayscale8.jpg");String destFileName12 = combine(LEAD_VARS_IMAGES_DIR, "rgsref_grayscale12.jpg");String destFileName16 = combine(LEAD_VARS_IMAGES_DIR, "rgsref_grayscale16.jpg");// Load the source image from disk as 24-bits/pixelRasterImage image = codecs.load(srcFileName, 24, CodecsLoadByteOrder.BGR, 1, 1);// Check the grayscale modeSystem.out.printf("Grsyscale mode of original image = %s%n", image.getGrayscaleMode());// Convert to 8-bit grayscaleGrayscaleCommand command = new GrayscaleCommand();command.setBitsPerPixel(8);command.run(image);// Check the grayscale modeSystem.out.printf("Grsyscale mode after grayscale command with 8 bpp = %s%n", image.getGrayscaleMode());// Save it to diskcodecs.getOptions().getJpeg().getSave().setQualityFactor(2);codecs.save(image, destFileName8, RasterImageFormat.JPEG, 8);image.dispose();// Load the image again this time grayscale to 12-bits/pixelimage = codecs.load(srcFileName, 24, CodecsLoadByteOrder.BGR, 1, 1);command.setBitsPerPixel(12);command.run(image);System.out.printf("Grsyscale mode after grayscale command with 12 bpp = %s%n", image.getGrayscaleMode());codecs.getOptions().getJpeg().getSave().setQualityFactor(2);codecs.save(image, destFileName12, RasterImageFormat.JPEG, 12);image.dispose();// Load the image again this time grayscale to 16-bits/pixelimage = codecs.load(srcFileName, 24, CodecsLoadByteOrder.BGR, 1, 1);command.setBitsPerPixel(16);command.run(image);System.out.printf("Grsyscale mode after grayscale command with 16 bpp = %s%n", image.getGrayscaleMode());// When saving 16-bit jpegs, you must use lossless quality factorcodecs.getOptions().getJpeg().getSave().setQualityFactor(0);codecs.save(image, destFileName16, RasterImageFormat.JPEG, 16);assertTrue("file unsuccessfully saved to " + destFileName16, (new File(destFileName16)).exists());System.out.printf("File saved successfully to %s%n", destFileName16);// Clean Upimage.dispose();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
