HELLO
Here is the code to
scan tiff files.you can have a look:
using System.IO;
using System.Drawing.Printing;
using RasterEdge.Imaging;
using RasterEdge.Imaging.Processing;
using RasterEdge.Imaging.MultipageTiff;
RasterEdgeImaging TIFF = new RasterEdgeImaging();
public class AcquisitionClass
{
private bool AcquireCanceled;
private Acquisition Acquisition = new Acquisition(this);
public void Scan()
{
AcquireCanceled = false;
Acquisition.AcquireCanceled += new EventHandler(OnAcquireCanceled);
Acquisition.AcquireFinished += new EventHandler(OnAcquireFinished);
Acquisition.ImageAcquired += new ImageAcquiredEventHandler(OnImageAcquired);
Device activeDevice = Acquisition.ShowSelectSource();
activeDevice.Acquire();
}
private void OnImageAcquired(object sender, AcquireEventArgs e)
{
if (e.Image != null)
{
TiffEncoder enc = new TiffEncoder(TiffCompression.Default, true);
FileStream fs = new FileStream("1.tif",FileMode.OpenOrCreate, FileAccess.ReadWrite);
enc.Save(fs, AtalaImage.FromBitmap(e.Image), null);
fs.Close();
}
}
private void OnAcquireCanceled(object sender, EventArgs e)
{
AcquireCanceled = true;
}
private void OnAcquireFinished(object sender, EventArgs e)
{
if (AcquireCanceled)
return;
TiffImageCollection col = new TiffImageCollection();
TiffDecoder dec = new TiffDecoder();
FileStream fs = new FileStream("1.tif", FileMode.Open, FileAccess.Read);
int frameCount = dec.GetFrameCount(fs);
fs.Close();
for(int i=0; i< frameCount; i++)
col.Add(new TiffImage("1.tif", i, TiffCompressionType.Auto));
FileStream outStream = new FileStream("1.tiff", FileMode.OpenOrCreate, FileAccess.ReadWrite);
TiffEncoder enc = new TiffEncoder();
enc.Save(outStream, col, null);
}
}