Imports Leadtools
Imports Leadtools.Codecs
Public Sub CodecsJpegOptionsExample()
Dim codecs As RasterCodecs = New RasterCodecs()
Dim srcFileName As String = Path.Combine(LEAD_VARS.ImagesDir, "Slave.jpg")
' Get all Information about the Jpeg file that you want to load.
Dim imageInfo As CodecsImageInfo = codecs.GetInformation(srcFileName, True)
'Setting Jpeg Load options.
codecs.Options.Jpeg.Load.DisableMmx = False
codecs.Options.Jpeg.Load.DisableP3 = False
codecs.Options.Jpeg.Load.ForceCieLab = True
codecs.Options.Jpeg.Load.ForceRgbFile = False
codecs.Options.Jpeg.Load.UseBadJpegPredictor = False
Dim srcImage As RasterImage = codecs.Load(srcFileName)
'if the image has stamp then set the Jpeg settings related to the stamp.
If imageInfo.Jpeg.HasStamp Then
codecs.Options.Jpeg.Save.FixedPaletteStamp = True
codecs.Options.Jpeg.Save.JpegStamp = True
codecs.Options.Jpeg.Save.SaveWithoutTimestamp = False
codecs.Options.Jpeg.Save.SaveWithStamp = True
codecs.Options.Jpeg.Save.StampBitsPerPixel = srcImage.BitsPerPixel
codecs.Options.Jpeg.Save.StampHeight = 100
codecs.Options.Jpeg.Save.StampWidth = 100
codecs.Options.Jpeg.Save.YccStamp = False
End If
If imageInfo.Jpeg.IsLossless Then
Console.WriteLine("This is a lossless Jpeg Image")
Else
Console.WriteLine("This is not a lossless Jpeg Image")
End If
If imageInfo.Jpeg.IsProgressive Then
codecs.Options.Jpeg.Save.Passes = 0
End If
codecs.Options.Jpeg.Save.CmpQualityFactorPredefined = CodecsCmpQualityFactorPredefined.Custom
codecs.Options.Jpeg.Save.DisableMmx = True
codecs.Options.Jpeg.Save.DisableP3 = True
codecs.Options.Jpeg.Save.QualityFactor = 2
codecs.Options.Jpeg.Save.SaveOldJtif = True
codecs.Save(srcImage, Path.Combine(LEAD_VARS.ImagesDir, "jpeg1.jpg"), RasterImageFormat.Jpeg, srcImage.BitsPerPixel)
codecs.Options.Jpeg.Save.FixedPaletteStamp = False
codecs.Options.Jpeg.Save.JpegStamp = True
codecs.Options.Jpeg.Save.SaveWithoutTimestamp = True
codecs.Options.Jpeg.Save.SaveWithStamp = True
codecs.Options.Jpeg.Save.StampBitsPerPixel = srcImage.BitsPerPixel
codecs.Options.Jpeg.Save.StampHeight = 75
codecs.Options.Jpeg.Save.StampWidth = 50
codecs.Options.Jpeg.Save.YccStamp = True
codecs.Options.Jpeg.Save.CmpQualityFactorPredefined = CodecsCmpQualityFactorPredefined.MaximumQuality
codecs.Options.Jpeg.Save.DisableMmx = False
codecs.Options.Jpeg.Save.DisableP3 = False
codecs.Options.Jpeg.Save.SaveOldJtif = False
codecs.Save(srcImage, Path.Combine(LEAD_VARS.ImagesDir, "jpeg2.jpg"), RasterImageFormat.Jpeg, srcImage.BitsPerPixel)
' Clean up
srcImage.Dispose()
codecs.Dispose()
End Sub
Public NotInheritable Class LEAD_VARS
Public Const ImagesDir As String = "C:\Users\Public\Documents\LEADTOOLS Images"
End Class
using Leadtools;
using Leadtools.Codecs;
public void CodecsJpegOptionsExample()
{
RasterCodecs codecs = new RasterCodecs();
string srcFileName = Path.Combine(LEAD_VARS.ImagesDir, "cannon.jpg");
// Get all Information about the Jpeg file that you want to load.
CodecsImageInfo imageInfo = codecs.GetInformation(srcFileName, true);
//Setting Jpeg Load options.
codecs.Options.Jpeg.Load.DisableMmx = false;
codecs.Options.Jpeg.Load.DisableP3 = false;
codecs.Options.Jpeg.Load.ForceCieLab = true;
codecs.Options.Jpeg.Load.ForceRgbFile = false;
codecs.Options.Jpeg.Load.UseBadJpegPredictor = false;
RasterImage srcImage = codecs.Load(srcFileName);
//if the image has stamp then set the Jpeg settings related to the stamp.
if (imageInfo.Jpeg.HasStamp)
{
codecs.Options.Jpeg.Save.FixedPaletteStamp = true;
codecs.Options.Jpeg.Save.JpegStamp = true;
codecs.Options.Jpeg.Save.SaveWithoutTimestamp = false;
codecs.Options.Jpeg.Save.SaveWithStamp = true;
codecs.Options.Jpeg.Save.StampBitsPerPixel = srcImage.BitsPerPixel;
codecs.Options.Jpeg.Save.StampHeight = 100;
codecs.Options.Jpeg.Save.StampWidth = 100;
codecs.Options.Jpeg.Save.YccStamp = false;
}
if (imageInfo.Jpeg.IsLossless)
Console.WriteLine("This is a lossless Jpeg Image");
else
Console.WriteLine("This is not a lossless Jpeg Image");
if (imageInfo.Jpeg.IsProgressive)
codecs.Options.Jpeg.Save.Passes = 0;
codecs.Options.Jpeg.Save.CmpQualityFactorPredefined = CodecsCmpQualityFactorPredefined.Custom;
codecs.Options.Jpeg.Save.DisableMmx = true;
codecs.Options.Jpeg.Save.DisableP3 = true;
codecs.Options.Jpeg.Save.QualityFactor = 2;
codecs.Options.Jpeg.Save.SaveOldJtif = true;
codecs.Save(srcImage, Path.Combine(LEAD_VARS.ImagesDir, "jpeg1.jpg"), RasterImageFormat.Jpeg, srcImage.BitsPerPixel);
codecs.Options.Jpeg.Save.FixedPaletteStamp = false;
codecs.Options.Jpeg.Save.JpegStamp = true;
codecs.Options.Jpeg.Save.SaveWithoutTimestamp = true;
codecs.Options.Jpeg.Save.SaveWithStamp = true;
codecs.Options.Jpeg.Save.StampBitsPerPixel = srcImage.BitsPerPixel;
codecs.Options.Jpeg.Save.StampHeight = 75;
codecs.Options.Jpeg.Save.StampWidth = 50;
codecs.Options.Jpeg.Save.YccStamp = true;
codecs.Options.Jpeg.Save.CmpQualityFactorPredefined = CodecsCmpQualityFactorPredefined.MaximumQuality;
codecs.Options.Jpeg.Save.DisableMmx = false;
codecs.Options.Jpeg.Save.DisableP3 = false;
codecs.Options.Jpeg.Save.SaveOldJtif = false;
codecs.Save(srcImage, Path.Combine(LEAD_VARS.ImagesDir, "jpeg2.jpg"), RasterImageFormat.Jpeg, srcImage.BitsPerPixel);
// Clean up
srcImage.Dispose();
codecs.Dispose();
}
static class LEAD_VARS
{
public const string ImagesDir = @"C:\Users\Public\Documents\LEADTOOLS Images";
}
CodecsOptionsExamples.prototype.CodecsJpegOptionsExample = function ( )
{
Tools.SetLicense ( ) ;
with (Leadtools) {
with (Leadtools.Codecs) {
var codecs = new RasterCodecs();
var srcFileName = "Assets\\cannon.jpg";
var imageInfo;
var srcImage;
// Get all Information about the Jpeg file that you want to load.
return Tools.AppInstallFolder().getFileAsync(srcFileName).then(function (loadFile) {
return codecs.getInformationAsync(LeadStreamFactory.create(loadFile), true, 1)
}).then(function (imageInfoX) {
imageInfo = imageInfoX;
//Setting Jpeg Load options.
codecs.options.jpeg.load.disableMmx = false;
codecs.options.jpeg.load.disableP3 = false;
codecs.options.jpeg.load.forceCieLab = true;
codecs.options.jpeg.load.forceRgbFile = false;
codecs.options.jpeg.load.useBadJpegPredictor = false;
return Tools.AppInstallFolder().getFileAsync(srcFileName)
}).then(function (loadFile) {
return codecs.loadAsync(LeadStreamFactory.create(loadFile))
})
.then(function (srcImg) {
srcImage = srcImg;
//if the image has stamp then set the Jpeg settings related to the stamp.
if (imageInfo.jpeg.hasStamp) {
codecs.options.jpeg.save.fixedPaletteStamp = true;
codecs.options.jpeg.save.jpegStamp = true;
codecs.options.jpeg.save.saveWithoutTimestamp = false;
codecs.options.jpeg.save.saveWithStamp = true;
codecs.options.jpeg.save.stampBitsPerPixel = srcImage.bitsPerPixel;
codecs.options.jpeg.save.stampHeight = 100;
codecs.options.jpeg.save.stampWidth = 100;
codecs.options.jpeg.save.yccStamp = false;
}
if (imageInfo.jpeg.isLossless)
console.info("This is a lossless Jpeg Image");
else
console.info("This is not a lossless Jpeg Image");
if (imageInfo.jpeg.isProgressive)
codecs.options.jpeg.save.passes = 0;
codecs.options.jpeg.save.cmpQualityFactorPredefined = CodecsCmpQualityFactorPredefined.custom;
codecs.options.jpeg.save.disableMmx = true;
codecs.options.jpeg.save.disableP3 = true;
codecs.options.jpeg.save.qualityFactor = 2;
codecs.options.jpeg.save.saveOldJtif = true;
var destFileName = "jpeg1.jpg";
return Tools.AppLocalFolder().createFileAsync(destFileName)
})
.then(function (saveFile) {
return codecs.saveAsync(srcImage, LeadStreamFactory.create(saveFile), RasterImageFormat.jpeg, srcImage.bitsPerPixel)
})
.then(function () {
codecs.options.jpeg.save.fixedPaletteStamp = false;
codecs.options.jpeg.save.jpegStamp = true;
codecs.options.jpeg.save.saveWithoutTimestamp = true;
codecs.options.jpeg.save.saveWithStamp = true;
codecs.options.jpeg.save.stampBitsPerPixel = srcImage.bitsPerPixel;
codecs.options.jpeg.save.stampHeight = 75;
codecs.options.jpeg.save.stampWidth = 50;
codecs.options.jpeg.save.yccStamp = true;
codecs.options.jpeg.save.cmpQualityFactorPredefined = CodecsCmpQualityFactorPredefined.maximumQuality;
codecs.options.jpeg.save.disableMmx = false;
codecs.options.jpeg.save.disableP3 = false;
codecs.options.jpeg.save.saveOldJtif = false;
destFileName = "jpeg2.jpg";
return Tools.AppLocalFolder().createFileAsync(destFileName)
})
.then(function (saveFile) {
return codecs.saveAsync(srcImage, LeadStreamFactory.create(saveFile), RasterImageFormat.jpeg, srcImage.bitsPerPixel)
})
.then(function () {
// Clean up
srcImage.close();
codecs.close();
});
}
}
}
using Leadtools;
using Leadtools.Codecs;
public async Task CodecsJpegOptionsExample()
{
RasterCodecs codecs = new RasterCodecs();
string srcFileName = @"Assets\cannon.jpg";
// Get all Information about the Jpeg file that you want to load.
StorageFile loadFile = await Tools.AppInstallFolder.GetFileAsync(srcFileName);
CodecsImageInfo imageInfo = await codecs.GetInformationAsync(LeadStreamFactory.Create(loadFile), true, 1);
//Setting Jpeg Load options.
codecs.Options.Jpeg.Load.DisableMmx = false;
codecs.Options.Jpeg.Load.DisableP3 = false;
codecs.Options.Jpeg.Load.ForceCieLab = true;
codecs.Options.Jpeg.Load.ForceRgbFile = false;
codecs.Options.Jpeg.Load.UseBadJpegPredictor = false;
loadFile = await Tools.AppInstallFolder.GetFileAsync(srcFileName);
RasterImage srcImage = await codecs.LoadAsync(LeadStreamFactory.Create(loadFile));
//if the image has stamp then set the Jpeg settings related to the stamp.
if (imageInfo.Jpeg.HasStamp)
{
codecs.Options.Jpeg.Save.FixedPaletteStamp = true;
codecs.Options.Jpeg.Save.JpegStamp = true;
codecs.Options.Jpeg.Save.SaveWithoutTimestamp = false;
codecs.Options.Jpeg.Save.SaveWithStamp = true;
codecs.Options.Jpeg.Save.StampBitsPerPixel = srcImage.BitsPerPixel;
codecs.Options.Jpeg.Save.StampHeight = 100;
codecs.Options.Jpeg.Save.StampWidth = 100;
codecs.Options.Jpeg.Save.YccStamp = false;
}
if (imageInfo.Jpeg.IsLossless)
Debug.WriteLine("This is a lossless Jpeg Image");
else
Debug.WriteLine("This is not a lossless Jpeg Image");
if (imageInfo.Jpeg.IsProgressive)
codecs.Options.Jpeg.Save.Passes = 0;
codecs.Options.Jpeg.Save.CmpQualityFactorPredefined = CodecsCmpQualityFactorPredefined.Custom;
codecs.Options.Jpeg.Save.DisableMmx = true;
codecs.Options.Jpeg.Save.DisableP3 = true;
codecs.Options.Jpeg.Save.QualityFactor = 2;
codecs.Options.Jpeg.Save.SaveOldJtif = true;
string destFileName = @"jpeg1.jpg";
StorageFile saveFile = await Tools.AppLocalFolder.CreateFileAsync(destFileName);
await codecs.SaveAsync(srcImage, LeadStreamFactory.Create(saveFile), RasterImageFormat.Jpeg, srcImage.BitsPerPixel);
codecs.Options.Jpeg.Save.FixedPaletteStamp = false;
codecs.Options.Jpeg.Save.JpegStamp = true;
codecs.Options.Jpeg.Save.SaveWithoutTimestamp = true;
codecs.Options.Jpeg.Save.SaveWithStamp = true;
codecs.Options.Jpeg.Save.StampBitsPerPixel = srcImage.BitsPerPixel;
codecs.Options.Jpeg.Save.StampHeight = 75;
codecs.Options.Jpeg.Save.StampWidth = 50;
codecs.Options.Jpeg.Save.YccStamp = true;
codecs.Options.Jpeg.Save.CmpQualityFactorPredefined = CodecsCmpQualityFactorPredefined.MaximumQuality;
codecs.Options.Jpeg.Save.DisableMmx = false;
codecs.Options.Jpeg.Save.DisableP3 = false;
codecs.Options.Jpeg.Save.SaveOldJtif = false;
destFileName = @"jpeg2.jpg";
saveFile = await Tools.AppLocalFolder.CreateFileAsync(destFileName);
await codecs.SaveAsync(srcImage, LeadStreamFactory.Create(saveFile), RasterImageFormat.Jpeg, srcImage.BitsPerPixel);
// Clean up
srcImage.Dispose();
codecs.Dispose();
}
using Leadtools;
using Leadtools.Codecs;
using Leadtools.Examples;
using Leadtools.ImageProcessing;
public void CodecsJpegOptionsExample(Stream inStream, Stream outStreamJpeg1, Stream outStreamJpeg2)
{
RasterCodecs codecs = new RasterCodecs();
// Get all Information about the Jpeg file that you want to load.
CodecsImageInfo imageInfo = codecs.GetInformation(inStream, true);
//Setting Jpeg Load options.
codecs.Options.Jpeg.Load.DisableMmx = false;
codecs.Options.Jpeg.Load.DisableP3 = false;
codecs.Options.Jpeg.Load.ForceCieLab = true;
codecs.Options.Jpeg.Load.ForceRgbFile = false;
codecs.Options.Jpeg.Load.UseBadJpegPredictor = false;
RasterImage srcImage = codecs.Load(inStream);
//if the image has stamp then set the Jpeg settings related to the stamp.
if (imageInfo.Jpeg.HasStamp)
{
codecs.Options.Jpeg.Save.FixedPaletteStamp = true;
codecs.Options.Jpeg.Save.JpegStamp = true;
codecs.Options.Jpeg.Save.SaveWithoutTimestamp = false;
codecs.Options.Jpeg.Save.SaveWithStamp = true;
codecs.Options.Jpeg.Save.StampBitsPerPixel = srcImage.BitsPerPixel;
codecs.Options.Jpeg.Save.StampHeight = 100;
codecs.Options.Jpeg.Save.StampWidth = 100;
codecs.Options.Jpeg.Save.YccStamp = false;
}
if (imageInfo.Jpeg.IsLossless)
Console.WriteLine("This is a lossless Jpeg Image");
else
Console.WriteLine("This is not a lossless Jpeg Image");
if (imageInfo.Jpeg.IsProgressive)
codecs.Options.Jpeg.Save.Passes = 0;
codecs.Options.Jpeg.Save.CmpQualityFactorPredefined = CodecsCmpQualityFactorPredefined.Custom;
codecs.Options.Jpeg.Save.DisableMmx = true;
codecs.Options.Jpeg.Save.DisableP3 = true;
codecs.Options.Jpeg.Save.QualityFactor = 2;
codecs.Options.Jpeg.Save.SaveOldJtif = true;
codecs.Save(srcImage, outStreamJpeg1, RasterImageFormat.Jpeg, srcImage.BitsPerPixel);
codecs.Options.Jpeg.Save.FixedPaletteStamp = false;
codecs.Options.Jpeg.Save.JpegStamp = true;
codecs.Options.Jpeg.Save.SaveWithoutTimestamp = true;
codecs.Options.Jpeg.Save.SaveWithStamp = true;
codecs.Options.Jpeg.Save.StampBitsPerPixel = srcImage.BitsPerPixel;
codecs.Options.Jpeg.Save.StampHeight = 75;
codecs.Options.Jpeg.Save.StampWidth = 50;
codecs.Options.Jpeg.Save.YccStamp = true;
codecs.Options.Jpeg.Save.CmpQualityFactorPredefined = CodecsCmpQualityFactorPredefined.MaximumQuality;
codecs.Options.Jpeg.Save.DisableMmx = false;
codecs.Options.Jpeg.Save.DisableP3 = false;
codecs.Options.Jpeg.Save.SaveOldJtif = false;
codecs.Save(srcImage, outStreamJpeg2, RasterImageFormat.Jpeg, srcImage.BitsPerPixel);
// Clean up
srcImage.Dispose();
}
Imports Leadtools
Imports Leadtools.Codecs
Imports Leadtools.ImageProcessing
Public Sub CodecsJpegOptionsExample(ByVal inStream As Stream, ByVal outStreamJpeg1 As Stream, ByVal outStreamJpeg2 As Stream)
Dim codecs As RasterCodecs = New RasterCodecs()
' Get all Information about the Jpeg file that you want to load.
Dim imageInfo As CodecsImageInfo = codecs.GetInformation(inStream, True)
'Setting Jpeg Load options.
codecs.Options.Jpeg.Load.DisableMmx = False
codecs.Options.Jpeg.Load.DisableP3 = False
codecs.Options.Jpeg.Load.ForceCieLab = True
codecs.Options.Jpeg.Load.ForceRgbFile = False
codecs.Options.Jpeg.Load.UseBadJpegPredictor = False
Dim srcImage As RasterImage = codecs.Load(inStream)
'if the image has stamp then set the Jpeg settings related to the stamp.
If imageInfo.Jpeg.HasStamp Then
codecs.Options.Jpeg.Save.FixedPaletteStamp = True
codecs.Options.Jpeg.Save.JpegStamp = True
codecs.Options.Jpeg.Save.SaveWithoutTimestamp = False
codecs.Options.Jpeg.Save.SaveWithStamp = True
codecs.Options.Jpeg.Save.StampBitsPerPixel = srcImage.BitsPerPixel
codecs.Options.Jpeg.Save.StampHeight = 100
codecs.Options.Jpeg.Save.StampWidth = 100
codecs.Options.Jpeg.Save.YccStamp = False
End If
If imageInfo.Jpeg.IsLossless Then
Console.WriteLine("This is a lossless Jpeg Image")
Else
Console.WriteLine("This is not a lossless Jpeg Image")
End If
If imageInfo.Jpeg.IsProgressive Then
codecs.Options.Jpeg.Save.Passes = 0
End If
codecs.Options.Jpeg.Save.CmpQualityFactorPredefined = CodecsCmpQualityFactorPredefined.Custom
codecs.Options.Jpeg.Save.DisableMmx = True
codecs.Options.Jpeg.Save.DisableP3 = True
codecs.Options.Jpeg.Save.QualityFactor = 2
codecs.Options.Jpeg.Save.SaveOldJtif = True
codecs.Save(srcImage, outStreamJpeg1, RasterImageFormat.Jpeg, srcImage.BitsPerPixel)
codecs.Options.Jpeg.Save.FixedPaletteStamp = False
codecs.Options.Jpeg.Save.JpegStamp = True
codecs.Options.Jpeg.Save.SaveWithoutTimestamp = True
codecs.Options.Jpeg.Save.SaveWithStamp = True
codecs.Options.Jpeg.Save.StampBitsPerPixel = srcImage.BitsPerPixel
codecs.Options.Jpeg.Save.StampHeight = 75
codecs.Options.Jpeg.Save.StampWidth = 50
codecs.Options.Jpeg.Save.YccStamp = True
codecs.Options.Jpeg.Save.CmpQualityFactorPredefined = CodecsCmpQualityFactorPredefined.MaximumQuality
codecs.Options.Jpeg.Save.DisableMmx = False
codecs.Options.Jpeg.Save.DisableP3 = False
codecs.Options.Jpeg.Save.SaveOldJtif = False
codecs.Save(srcImage, outStreamJpeg2, RasterImageFormat.Jpeg, srcImage.BitsPerPixel)
' Clean up
srcImage.Dispose()
End Sub