public enum Jpeg2000BoxType
Value | Member | Description |
---|---|---|
11 | ResolutionBox | Resolution box. |
12 | IprBox | Intellectual property rights box. |
13 | XmlBox | XML box. |
14 | UuidBox | UUID box. |
15 | UuidInformationBox | UUID information box. |
16 | Mpeg7Box | MPEG-7 box. |
17 | FreeBox | Free box. |
18 | BinaryFilterBox | Binary filter box. |
19 | GtsoBox | Desired reproduction box. |
20 | CompositionBox | Composition box |
21 | DigitalSignatureBox | Digital signature box. |
22 | AssociationBox | Association box. |
23 | MediaDataBox | Media data box |
using Leadtools;
using Leadtools.Codecs;
using Leadtools.Jpeg2000;
public void SaveStringExample()
{
RasterCodecs codecs = new RasterCodecs();
codecs.ThrowExceptionsOnInvalidImages = true;
// Load a JPEG 2000 image
Jpeg2000Engine engine = new Jpeg2000Engine();
RasterImage image = engine.Load(codecs, Path.Combine(LEAD_VARS.ImagesDir, "image1.jp2"), 0, CodecsLoadByteOrder.BgrOrGray);
List<XmlBox> xmlBoxes = engine.GetBoxes<XmlBox>(Jpeg2000FileFormat.LeadJp2);
ResolutionBox resBox = (ResolutionBox)engine.GetBox(Jpeg2000FileFormat.LeadJp2, Jpeg2000BoxType.ResolutionBox);
engine.ResetEngineBoxes();
//Set the JPX engine's XML box
engine.SetBoxes(Jpeg2000FileFormat.LeadJpx, xmlBoxes);
engine.SetBox(Jpeg2000FileFormat.LeadJpx, resBox);
//Save the image in JPX file format
engine.Save(codecs, Path.Combine(LEAD_VARS.ImagesDir, "Test.jpx"), image, Jpeg2000FileFormat.LeadJpx, 24, 5);
//Append Intellectual Property Rights box
String copyRights = ("Copyright (c) 1991-2022 by LEAD Technologies, Inc. All Rights Reserved.");
IprBox ipr = new IprBox();
ipr.Data = Encoding.ASCII.GetBytes(copyRights);
engine.AppendBox(Path.Combine(LEAD_VARS.ImagesDir, "Test.jpx"), ipr);
// Clean up
engine.Dispose();
image.Dispose();
codecs.Dispose();
}
static class LEAD_VARS
{
public const string ImagesDir = @"C:\LEADTOOLS22\Resources\Images";
}