Browse our Products
Aspose.Imaging for .NET 23.12 - Release notes
Competitive features:
- Add RemoveBackground & ChangeBackground API entries for VectorImage
 
| Key | Summary | Category | 
|---|---|---|
| IMAGINGNET-5778 | Add RemoveBackground & ChangeBackground API entries for VectorImage | Feature | 
| IMAGINGNET-6799 | System.NullReferenceException while exporting a loaded PNG with 64 bpp into PNG with 32 bpp | Enhancement | 
| IMAGINGNET-6741 | System.NullReferenceException when DataStreamSupporter.Save | Enhancement | 
| IMAGINGNET-6467 | Cannot convert the EMF file to PDF | Enhancement | 
| IMAGINGNET-6438 | Cannot resize the PNG image | Enhancement | 
| IMAGINGNET-3017 | Emf not converting to SVG in trial mode | Enhancement | 
Public API changes:
Added APIs:
Class Aspose.Imaging.RemoveBackgroundSettings
Field/Enum Aspose.Imaging.Xmp.Types.Complex.ComplexTypeBase.VValues
Method Aspose.Imaging.RemoveBackgroundSettings.#ctor
Method Aspose.Imaging.VectorImage.RemoveBackground
Method Aspose.Imaging.VectorImage.RemoveBackground(Aspose.Imaging.RemoveBackgroundSettings)
Property Aspose.Imaging.RemoveBackgroundSettings.Bounds
Property Aspose.Imaging.RemoveBackgroundSettings.Color1
Property Aspose.Imaging.RemoveBackgroundSettings.Color2
Property Aspose.Imaging.RemoveBackgroundSettings.DetectionLevel
Removed APIs:
Field/Enum Aspose.Imaging.Xmp.Types.Complex.ComplexTypeBase.values
Usage Examples:
IMAGINGNET-6799 System.NullReferenceException while exporting a loaded PNG with 64 bpp into PNG with 32 bpp
using var image = Image.Load(@"input.eps");
image.Save("output.png");IMAGINGNET-6741 System.NullReferenceException when DataStreamSupporter.Save
using var image = Image.Load("IMG_1381.png");
var resizeType = ResizeType.NearestNeighbourResample;
image.ResizeWidthProportionally(150, resizeType);
image.Save("output.png");IMAGINGNET-6467 Cannot convert the EMF file to PDF
cpp
var baseFolder = "D:\\";
var fileName = "aa.emf";
var inputFile = Path.Combine(baseFolder, fileName);
var outputFile = inputFile + ".pdf";
using (var image = Image.Load(inputFile))
{
    image.Save(outputFile);
}IMAGINGNET-6438 Cannot resize the PNG image
using var image = Image.Load("IMG_1381.png");
var resizeType = ResizeType.NearestNeighbourResample;
image.ResizeWidthProportionally(150, resizeType);
image.Save("output.png");IMAGINGNET-5778 Add RemoveBackground & ChangeBackground API entries for VectorImage
source files in the archive: rb.zip
 c
 var fileNames = new string[] { "golfer.emf", "doretree.emf","Test2.wmf", "test.odg", "test.cdr","test.cmx", "hatch.odg", "Halle_2.svg"};
 var rbs = new RemoveBackgroundSettings[]
 {
     new RemoveBackgroundSettings()
     {
         DetectionLevel = 30
     },
     new RemoveBackgroundSettings()
     {
         Bounds = new RectangleF(0, 1000, 5000, 4000)
     },
     new RemoveBackgroundSettings()
     {
         DetectionLevel = 10
     },
     new RemoveBackgroundSettings()
     {
     },
     new RemoveBackgroundSettings()
     {
     },
     new RemoveBackgroundSettings()
     {
     },
     new RemoveBackgroundSettings()
     {
         Color1 = Color.Blue
     },
     new RemoveBackgroundSettings()
     {
     }
 };
 for (int i = 0; i < fileNames.Length; i++)
 {
     RemoveBackgroundExample(fileNames[i], rbs[i]);
 }
 cpp
 private void RemoveBackgroundExample(string fileName, RemoveBackgroundSettings settings)
 {
     var baseFolder = "D:\\test\\rb\\";
     var inputFilePath = Path.Combine(baseFolder, fileName);
     var outFilePath = Path.Combine(baseFolder, "output");
     if (!Directory.Exists(outFilePath))
     {
         Directory.CreateDirectory(outFilePath);
     }
     using (var image = Image.Load(inputFilePath))
     {
         var options = new PngOptions()
         {
             ColorType = PngColorType.TruecolorWithAlpha,
             VectorRasterizationOptions = new VectorRasterizationOptions()
             {
                 BackgroundColor = Color.Transparent,
                 PageSize = image.Size
             }
         };
         var vectorImage = image as VectorImage;
         if (vectorImage != null)
         {
             vectorImage.RemoveBackground(settings);
         }
         image.Save(Path.Combine(outFilePath, fileName+".png"), options);
     }
 }IMAGINGNET-3017 Emf not converting to SVG in trial mode
This example is worked assuming ~3 GB of free RAM(only x64 systems)
LicenseHelper.RemoveLicense(); //without license
string baseFolder = @"D:\";
string file = "image7.emf";
string inputFileName = Path.Combine(baseFolder, file);
string outputFileName = inputFileName + ".svg";
using (Image image = Image.Load(inputFileName))
{
    image.Save(outputFileName, new SvgOptions());
}
For cases with a limited RAM resource, it is necessary to modify the library:
    Implement a partial image storage in APS format
    Implement read/write a partial image from APS format