LEADTOOLS Image File Support (Leadtools.Codecs assembly)
LEAD Technologies, Inc

CodecsJbigOptions Class

Example 





Members 
Provides extra options for loading and saving JBIG images. .NET support WinRT support Silverlight support
Object Model
CodecsJbigOptions ClassCodecsJbigLoadOptions Class
Syntax
public class CodecsJbigOptions 
'Declaration
 
Public Class CodecsJbigOptions 
'Usage
 
Dim instance As CodecsJbigOptions
public sealed class CodecsJbigOptions 
function Leadtools.Codecs.CodecsJbigOptions()
public ref class CodecsJbigOptions 
Example
 
Public Sub CodecsJbigOptionsExample()
      Dim codecs As RasterCodecs = New RasterCodecs()

      Dim srcFileName As String = Path.Combine(LEAD_VARS.ImagesDir, "Image1.cmp")
      Dim srcImage As RasterImage = codecs.Load(srcFileName)

      ' Ex: If the file contains the image 
      ' at the following dimensions: 800X600, 
      ' 400X 300 and 200X150 and the user requests 
      ' an image with width equal to 180 for example, 
      ' then LEADTOOLS will automatically know that the 
      ' proper width is 200 and load the image at the (200X150) resolution.         
      codecs.Options.Jbig.Load.Resolution = New LeadSize(180, 0)
      Dim sizes As LeadSize() = New LeadSize(2) {}
      sizes(0) = New LeadSize(800, 600)
      sizes(1) = New LeadSize(400, 300)
      sizes(2) = New LeadSize(200, 150)
      codecs.Options.Save.SetResolutions(sizes)
      codecs.Save(srcImage, Path.Combine(LEAD_VARS.ImagesDir, "Image1_test.jbg"), RasterImageFormat.Jbig, 8)
      srcImage = codecs.Load(Path.Combine(LEAD_VARS.ImagesDir, "Image1_test.jbg"))

      codecs.Save(srcImage, Path.Combine(LEAD_VARS.ImagesDir, "jbg.bmp"), RasterImageFormat.Bmp, 1)

      ' 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
public void CodecsJbigOptionsExample()
     {
         RasterCodecs codecs = new RasterCodecs();

         string srcFileName = Path.Combine(LEAD_VARS.ImagesDir, "Image1.cmp");
         RasterImage srcImage = codecs.Load(srcFileName);

         // Ex: If the file contains the image 
         // at the following dimensions: 800X600, 
         // 400X 300 and 200X150 and the user requests 
         // an image with width equal to 180 for example, 
         // then LEADTOOLS will automatically know that the 
         // proper width is 200 and load the image at the (200X150) resolution.         
         codecs.Options.Jbig.Load.Resolution = new LeadSize(180, 0);
         LeadSize[] sizes = new LeadSize[3];
         sizes[0] = new LeadSize(800, 600);
         sizes[1] = new LeadSize(400, 300);
         sizes[2] = new LeadSize(200, 150);
         codecs.Options.Save.SetResolutions(sizes);
         codecs.Save(srcImage, Path.Combine(LEAD_VARS.ImagesDir, "Image1_test.jbg"), RasterImageFormat.Jbig, 8);
         srcImage = codecs.Load(Path.Combine(LEAD_VARS.ImagesDir, "Image1_test.jbg"));

         codecs.Save(srcImage, Path.Combine(LEAD_VARS.ImagesDir, "jbg.bmp"), RasterImageFormat.Bmp, 1);

         // Clean up
         srcImage.Dispose();
         codecs.Dispose();
     }

static class LEAD_VARS
{
   public const string ImagesDir = @"C:\Users\Public\Documents\LEADTOOLS Images";
}
CodecsOptionsExamples.prototype.CodecsJbigOptionsExample = function ( )
{
   Tools.SetLicense ( ) ;
   with (Leadtools) {
      with (Leadtools.Codecs) {
         var codecs = new RasterCodecs();

         // Load the image
         var srcFileName = "Assets\\Image1.cmp";
         var image;
         return Tools.AppInstallFolder().getFileAsync(srcFileName).then(function (loadFile) {
            return codecs.loadAsync(LeadStreamFactory.create(loadFile))
         })
         .then(function (img) {
            image = img;
            // Ex: If the file contains the image 
            // at the following dimensions: 800X600, 
            // 400X 300 and 200X150 and the user requests 
            // an image with width equal to 180 for example, 
            // then LEADTOOLS will automatically know that the 
            // proper width is 200 and load the image at the (200X150) resolution.         
            codecs.options.jbig.load.resolution = LeadSizeHelper.create(180, 0);
            var sizes = new Array();

            sizes[0] = LeadSizeHelper.create(800, 600);
            sizes[1] = LeadSizeHelper.create(400, 300);
            sizes[2] = LeadSizeHelper.create(200, 150);
            codecs.options.save.setResolutions(sizes);

            var destFileName = "Image1_test.jbg";
            return Tools.AppLocalFolder().createFileAsync(destFileName)
         })
         .then(function (saveFile) {
            return codecs.saveAsync(image, LeadStreamFactory.create(saveFile), RasterImageFormat.jbig, 8)
         })
         .then(function () {

            srcFileName = "Image1_test.jbg";
            return Tools.AppLocalFolder().getFileAsync(srcFileName)
         })
         .then(function (loadFile) {
            return codecs.loadAsync(LeadStreamFactory.create(loadFile))
         })
         .then(function (img) {
            image = img;

            destFileName = "jbg.bmp";
            return Tools.AppLocalFolder().createFileAsync(destFileName)
         })
         .then(function (saveFile) {
            return codecs.saveAsync(image, LeadStreamFactory.create(saveFile), RasterImageFormat.bmp, 1)
         })
         .then(function () {
            // Clean up
            image.close();
            codecs.close();
         });
      }
   }
}
[TestMethod]
public async Task CodecsJbigOptionsExample()
{
   RasterCodecs codecs = new RasterCodecs();
   // Load the image
   string srcFileName = @"Assets\Image1.cmp";
   StorageFile loadFile = await Tools.AppInstallFolder.GetFileAsync(srcFileName);
   RasterImage image = await codecs.LoadAsync(LeadStreamFactory.Create(loadFile));

   // Ex: If the file contains the image 
   // at the following dimensions: 800X600, 
   // 400X 300 and 200X150 and the user requests 
   // an image with width equal to 180 for example, 
   // then LEADTOOLS will automatically know that the 
   // proper width is 200 and load the image at the (200X150) resolution.         
   codecs.Options.Jbig.Load.Resolution = LeadSizeHelper.Create(180, 0);
   LeadSize[] sizes = new LeadSize[3];
   sizes[0] = LeadSizeHelper.Create(800, 600);
   sizes[1] = LeadSizeHelper.Create(400, 300);
   sizes[2] = LeadSizeHelper.Create(200, 150);
   codecs.Options.Save.SetResolutions(sizes);

   string destFileName = @"Image1_test.jbg";
   StorageFile saveFile = await Tools.AppLocalFolder.CreateFileAsync(destFileName);
   await codecs.SaveAsync(image, LeadStreamFactory.Create(saveFile), RasterImageFormat.Jbig, 8);

   srcFileName = @"Image1_test.jbg";
   loadFile = await Tools.AppLocalFolder.GetFileAsync(srcFileName);
   image = await codecs.LoadAsync(LeadStreamFactory.Create(loadFile));

   destFileName = @"jbg.bmp";
   saveFile = await Tools.AppLocalFolder.CreateFileAsync(destFileName);
   await codecs.SaveAsync(image, LeadStreamFactory.Create(saveFile), RasterImageFormat.Bmp, 1);

   // Clean up
   image.Dispose();
   codecs.Dispose();
}
public void CodecsJbigOptionsExample(Stream inStream, Stream outStreamJbig, Stream outStreamBmp)
{
   RasterCodecs codecs = new RasterCodecs();
   RasterImage srcImage = codecs.Load(inStream);

   // Ex: If the file contains the image 
   // at the following dimensions: 800X600, 
   // 400X 300 and 200X150 and the user requests 
   // an image with width equal to 180 for example, 
   // then LEADTOOLS will automatically know that the 
   // proper width is 200 and load the image at the (200X150) resolution.         
   codecs.Options.Jbig.Load.Resolution = new LeadSize(180, 0);
   LeadSize[] sizes = new LeadSize[3];
   sizes[0] = new LeadSize(800, 600);
   sizes[1] = new LeadSize(400, 300);
   sizes[2] = new LeadSize(200, 150);
   codecs.Options.Save.SetResolutions(sizes);
   codecs.Save(srcImage, outStreamJbig, RasterImageFormat.Jbig, 8);

   srcImage = codecs.Load(outStreamJbig);
   codecs.Save(srcImage, outStreamBmp, RasterImageFormat.Bmp, 1);

   // Clean up
   srcImage.Dispose();
}
Public Sub CodecsJbigOptionsExample(ByVal inStream As Stream, ByVal outStreamJbig As Stream, ByVal outStreamBmp As Stream)
   Dim codecs As RasterCodecs = New RasterCodecs()
   Dim srcImage As RasterImage = codecs.Load(inStream)

   ' Ex: If the file contains the image 
   ' at the following dimensions: 800X600, 
   ' 400X 300 and 200X150 and the user requests 
   ' an image with width equal to 180 for example, 
   ' then LEADTOOLS will automatically know that the 
   ' proper width is 200 and load the image at the (200X150) resolution.         
   codecs.Options.Jbig.Load.Resolution = New LeadSize(180, 0)
   Dim sizes As LeadSize() = New LeadSize(2){}
   sizes(0) = New LeadSize(800, 600)
   sizes(1) = New LeadSize(400, 300)
   sizes(2) = New LeadSize(200, 150)
   codecs.Options.Save.SetResolutions(sizes)
   codecs.Save(srcImage, outStreamJbig, RasterImageFormat.Jbig, 8)

   srcImage = codecs.Load(outStreamJbig)
   codecs.Save(srcImage, outStreamBmp, RasterImageFormat.Bmp, 1)

   ' Clean up
   srcImage.Dispose()
End Sub
Requirements

Target Platforms: Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2

See Also

Reference

CodecsJbigOptions Members
Leadtools.Codecs Namespace
Implementing JBIG Features

 

 


Products | Support | Contact Us | Copyright Notices

© 2006-2012 All Rights Reserved. LEAD Technologies, Inc.