public bool AllocateImage { get; set; } @property (nonatomic, assign) BOOL allocateImage; public boolean getAllocateImage()public void setAllocateImage(boolean value)
AllocateImage # get and set (CodecsLoadOptions)
| Value | Description |
|---|---|
| true | To allows LEADTOOLS do the necessary allocation. The default value is true. |
| false | To disable LEADTOOLS image allocation. |
If you do not allow LEADTOOLS to allocate the memory for the storage of the image data, then you should process the data manually using the RasterCodecs.LoadImage event.
using Leadtools;using Leadtools.Codecs;using Leadtools.ImageProcessing.Core;RasterImage image;private void Codecs_LoadImage(object sender, CodecsLoadImageEventArgs e){//copy each row of data into our manually allocated RasterImageimage.SetRow(e.Row, e.Buffer.Data, image.BytesPerLine * e.Lines);}public void AllocateImageExample(){string fileName = Path.Combine(LEAD_VARS.ImagesDir, "image1.cmp");RasterCodecs codecs = new RasterCodecs();CodecsImageInfo info = codecs.GetInformation(fileName, false);int size = info.Width * info.Height * info.BitsPerPixel;IntPtr data = Marshal.AllocHGlobal(size);image = new RasterImage(RasterMemoryFlags.User, info.Width, info.Height, info.BitsPerPixel, RasterByteOrder.Bgr, info.ViewPerspective, null, data, size);image.Access();//Setting the loading options.//Do NOT allow LEADTOOLS to allocate the image datacodecs.Options.Load.AllocateImage = false; // CodecsOptions & CodecsLoadOptions referencecodecs.Options.Load.StoreDataInImage = false;//keeping the loaded image data compressed in memory.codecs.Options.Load.Compressed = true;codecs.Options.Load.DiskMemory = false;//force a palletized image to be dithered to the LEAD fixed palette.codecs.Options.Load.FixedPalette = true;//we know the format of the filecodecs.Options.Load.Format = RasterImageFormat.Cmp;//disable loading metadata markers if present in the file, false to ignore them.codecs.Options.Load.Markers = false;codecs.Options.Load.NoDiskMemory = true;codecs.Options.Load.NoInterlace = false;codecs.Options.Load.NoTiledMemory = true;codecs.Options.Load.Passes = 0;//ignore the view perspective stored in the file.codecs.Options.Load.Rotated = false;//set negative pixel values to 0.codecs.Options.Load.Signed = false;codecs.Options.Load.InitAlpha = true;//load super-compressed in memorycodecs.Options.Load.SuperCompressed = true;codecs.Options.Load.TiledMemory = false;codecs.Options.Load.XResolution = 350;codecs.Options.Load.YResolution = 350;//allow loading corrupted imagescodecs.Options.Load.LoadCorrupted = true;codecs.LoadImage += Codecs_LoadImage;codecs.Load(fileName);codecs.LoadImage -= Codecs_LoadImage;image.Release();//Meta file's comments will be saved.//CodecsSaveOptions referencecodecs.Options.Save.Comments = true;codecs.Options.Save.FixedPalette = true;codecs.Options.Save.GeoKeys = false;//Tiff file output will be gray.codecs.Options.Save.GrayOutput = true;//Meta file's markers will be saved.codecs.Options.Save.Markers = true;codecs.Options.Save.MotorolaOrder = false;codecs.Options.Save.OptimizedPalette = true;codecs.Options.Save.Password = "LEADTOOLS";LeadSize[] resolutions = new LeadSize[1];resolutions[0].Width = 350;resolutions[0].Height = 350;codecs.Options.Save.GetResolutions();codecs.Options.Save.SetResolutions(resolutions);codecs.Options.Save.Reset();//Meta file's tags will be saved.codecs.Options.Save.Tags = true;codecs.Options.Save.UseImageDitheringMethod = true;codecs.Save(image, Path.Combine(LEAD_VARS.ImagesDir, "allocate_image.tif"), RasterImageFormat.Tif, 8, 1, image.PageCount, 1, CodecsSavePageMode.Overwrite);// Finalize cannot be called directly, it is invoked automatically.// To clean up before exiting, use Disposeimage.Dispose();Marshal.FreeHGlobal(data);codecs.Dispose();}static class LEAD_VARS{public const string ImagesDir = @"C:\LEADTOOLS22\Resources\Images";}
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
