Breaking Changes
Note
This Version 8.0 represents a big change in our SDK graphics backend. Older versions (from 4.0 to 7.0) were relying on Microsoft WPF Imaging/Drawing API but sadly, it performs very badly, specially in high volume printing scenarios or in server side Services projects. We've decided to leave that technology and starting with this new v8.0, our SDK will now rely on SkiaSharp library which provides faster imaging/drawing operations, greatly improving our SDK performance when comparing it to older versions. Some breaking changes is due to this transition.
Note
A Migration Guide is available to port your current code to Version 8.0
If you're using an older version of our SDK (from 4.0 to 7.0), these are the breaking changes if you want to use Version 8.0:
- Apps or projects targeting .NET Framework older than v4.6.1 are no longer supported. See "What's New in v8.0"
- PrintJob class is no longer used for direct printing. Now it's used for generating printer commands and exporting labels to images or PDF formats only. PrintJob printing features were moved to the brand new WindowsPintJob class found in the brand new Neodynamic.SDK.ThermalLabel.WindowsPrinting.dll assembly
- PrintUtils class moved to Neodynamic.SDK.ThermalLabel.WindowsPrinting.dll assembly
- WebPrintJob & WebPrintJobGroup classes moved to the brand new Neodynamic.SDK.ThermalLabel.WebPrinting.dll assembly
- ImageItem
- DPI resolution of source image used to be auto-detected. Now, it must be explicitly specified to the SourceDpi property
- BarcodeItem
- The size of the barcode symbol when printed could vary from older versions if BarWidth or 2D Module Size settings were set to values that are not multiple of the target DPI printer. V8 now will print the same barcode size you can see on screen or when exporting labels to image formats.
- GetAutoSize method now returns a System.Tuple<double, double> value instead of System.Windows.Size
- BorderThickness property can be set to a unique value for all sides only
- TextItem
- GetAutoSize method now returns a System.Tuple<double, double> value instead of System.Windows.Size
- The CustomFontFileFamilyName property in Font class is temporaly disabled
- ImageSettings' PixelFormat and TiffCompression properties are no longer supported
- Exporting labels to TIFF, BMP & GIF image formats is no longer supported
- When exporting labels to PNG image format, DPI setting will not be set automatically. It must be enabled through the ImageSettings's PngIncludeDpiMetadata property.
- Removed outputQuality param from ExportToPdf method of PrintJob class
- License info setting on .config files are no longer supported