Testimonials


I have used Vintasoft’s libraries for the past five years and credit them for delivering high-valued software that is well priced and functionally robust. Vintasoft’s components are well designed and they consistently release updates that improve reliability and performance. I highly recommend developers to consider the Vintasoft tools as a natural plug-in for any project you tackle.

Paul Smietan
CTO GoScan, Inc.





VintaSoftJBIG2.NET Plug-in - FAQ

General questions:

 

Redistribution:

 

Sales:

 

JBIG2:

 

Programming:

 

 

For which purposes can I use the VintaSoftJBIG2.NET Plug-in?

You can use VintaSoftJBIG2.NET as plug-in for VintaSoftImaging.NET SDK and it will allow you display, create and manipulate standalone and embedded into PDF file black-and-white JBIG2 images.

 

 

From which parts does the plug-in consist?

The library contains:

  • Vintasoft.Imaging.JBIG2Codec.dll assembly - a 100% .NET assembly
  • Documentation in CHM format (VintaSoft.Imaging.chm file)
  • Examples for MS Visual Basic.NET, MS Visual C#, ASP.NET (files in the Examples directory)
  • Demo applications (files in Bin\v2.0 directory)

 

 

In which programming languages can I use the plug-in?

With Single Developer license or Site license you can use component in:

  • Microsoft Visual Studio .NET : Visual Basic, Visual C#, Visual C++, Visual J#
  • Borland Delphi 8.0, Borland C# Builder, Borland C++ BuilderX
  • any other languages which are compatible with .NET Framework.

With Server license you can use component in:

  • Intranet / internet applications on a server-side (ASP.NET or PHP)

 

 

What restrictions does the unregistered version contain?

Unregistered version has the following restrictions:

  • nag screen
  • Mmr coding disabled
  • Watermark

All these restrictions are removed in registered version.

 

 

I have problems. What should I do?

Answers to the majority of questions can be found in the documentation or this web site. Please write to our support team to get more help.

 

 

What files do I need to include in the setup package of my program?

You need include two files: Vintasoft.Imaging.dll and Vintasoft.Imaging.JBIG2Codec.dll. These files must be placed in the same folder as the assembly that references it. Make sure that the version you distribute is the version your assembly was compiled with.

 

 

Can I re-distribute the Vintasoft.Imaging.JBIG2Codec.dll with my application without royalties?

Yes, this component is royalty free. You pay only for registration one time.

Only the Vintasoft.Imaging.JBIG2Codec.dll can be re-distributed with your application. Site license has no limitations in re-distribution. Single Developer license has limitation in re-distribution. Please read the License agreement for more info.

 

 

What to do when my Single developer license application redistribution count is about to exceed 100 copies in a year?

If you own Single developer license you must contact Sales in an event your application redistribution count is about to exceed 100 copies in current year. You'll be provided with an opportunity to upgrade your Single developer license to Site license with 30% discount or to buy additional Single developer license.

 

 

What is the difference between Single developer license and Site license?

  • Single developer license must be used in software development by only one programmer whose name is indicated in the license data.
  • Site license must be used in software development by any programmer who works for a company which name is indicated in the license data.
  • Single developer license may be used in software development on any PC located at any physical address.
  • Site license may be used in software development on any PC located at single physical address (at only one office).
  • Single developer license permits a royalty free distribution of an application which integrates the SDK redistributable assemblies up to 100 copies in a year.
  • Site license permits an unlimited royalty free distribution of an application which integrates the SDK redistributable assemblies.

 

 

Is there a difference in deploying my application on a desktop PC or on a server?

Yes, there is. Please read the "Deploying" section in this product documentation to understand the difference.

Terms: Desktop PC - Windows XP, Vista, 7 OS installed. Server - Windows Server 2000, 2003, 2008 OS installed.

 

 

I cannot open JBIG2 image using your library. What should I do?

Please send us your "bad" file. We will analyze it and update our reading algorithm if the image is correct.

 

 

What influence has the symbol dictionary on the file size and encoding speed?

Generally, the bigger dictionary size the better compression and slower encoding speed. It's not recommended to set symbol dictionary size less than 200 or larger than 10000.

 

 

Which advantages and disadvantages have both MMR and Arithmetic coding?

Arithmetic coding has about 1.4 times better compression, but is about 2.5 times slower than MMR.

 

 

When is it necessary to use 'random-access' file organization?

Only if you are sure that the third-party JBIG2 decoder is optimized to work with such file organization.

 

 

How can I adjust JBIG2 encoder to reach the best performance?

You should set Jbig2EncoderSettings.UseMMR property to 'true' and Jbig2EncoderSettings.UseSymbolDictionary property to 'false'.

 

 

How can I adjust JBIG2 encoder to reach the best compression?

You should set Jbig2EncoderSettings.UseMMR property to 'false' and Jbig2EncoderSettings.UseSymbolDictionary property to 'true'.

 

 

How can I reach the best compression, even if resulting file will be lossy?

You should set Jbig2EncoderSettings.Lossy property to 'true'. Also, when it's necessary, you can set an acceptable inaccuracy level through Jbig2EncoderSettings.Inaccuracy property.

 

 

How to convert TIFF to JBIG2 using ImageCollection and JBIG2Encoder?

Here is a simple code:

[VB.NET]
Public Shared Sub ConvertTiffToJBIG2(tiffFileName As String, jbig2FileName As String)
    ' create ImageCollection
    Dim imageCollection As New ImageCollection()
    ' add Tiff file to collecion
    imageCollection.Add(tiffFileName)
    ' create JBIG2 encoder using default compression settings
    Dim jbig2Encoder As New JBIG2Encoder()
    ' save pages using JBIG2 encoder
    imageCollection.SaveSync(jbig2FileName, jbig2Encoder)
    ' free resources
    jbig2Encoder.Dispose()
    imageCollection.Dispose()
End Sub

[C#]
public static void ConvertTiffToJBIG2(string tiffFileName, string jbig2FileName)
{
  // create ImageCollection
  ImageCollection imageCollection = new ImageCollection();
  // add Tiff file to collecion
  imageCollection.Add(tiffFileName);
  // create JBIG2Encoder using default compression settings
  JBIG2Encoder jbig2Encoder = new JBIG2Encoder();
  // save pages using JBIG2 encoder
  imageCollection.SaveSync(jbig2FileName, jbig2Encoder);
  // free resources
  jbig2Encoder.Dispose();
  imageCollection.Dispose();
}

 

 

How to convert JBIG2 to TIFF using ImageCollection and TIFFEncoder?

Here is a simple code:

[VB.NET]
Public Shared Sub ConvertJBIG2ToTiff(jbig2FileName As String, tiffFileName As String)
    ' create ImageCollection
    Dim imageCollection As New ImageCollection()
    ' add JBIG2 file to collecion
    imageCollection.Add(jbig2FileName)
    ' create Tiff encoder
    Dim tiffEncoder As New TIFFEncoder()
    ' set Tiff compression to ZIP
    tiffEncoder.Compression = TiffCompression.ZIP
    ' save pages using Tiff encoder
    imageCollection.SaveSync(tiffFileName, tiffEncoder)
    ' free resources
    tiffEncoder.Dispose()
    imageCollection.Dispose()
End Sub

[C#]
public static void ConvertJBIG2ToTiff(string jbig2FileName, string tiffFileName)
{
    // create ImageCollection
    ImageCollection imageCollection = new ImageCollection();
    // add JBIG2 file to collecion
    imageCollection.Add(jbig2FileName);
    // create Tiff encoder
    TIFFEncoder tiffEncoder = new TIFFEncoder();
    // set Tiff compression to ZIP
    tiffEncoder.Compression = TiffCompression.ZIP;
    // save pages using Tiff encoder
    imageCollection.SaveSync(tiffFileName, tiffEncoder);
    // free resources
    tiffEncoder.Dispose();
    imageCollection.Dispose();
}