Breaking Changes
From Version 8.0
- When exporting labels to any of the supported image formats, and when specifying a Stream to store them, in v8 each image was saved to the buffer with the "THERMAL-LABEL:" header/prefix. In v9+, that approach was removed and now each image is saved to a Zip compressed file stored to the specified Stream object.
From Older Versions (4.0 to 7.0)
Note
In Version 8.0, ThermalLabel SDK graphics backend changed. 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 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 12.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 12.0:
- Apps or projects targeting .NET Framework older than v4.6.1 are no longer supported. See "What's New in v12.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 is no longer supported