Today we published a maintenance release for most of our Barcode Professional products. The new builds contain the following updates:
- Fixed Aztec Code symbology when rendering Aztec Runes
- Improved the Micro QR Code Auto encoding
You can download and update the products by using their download links which can be found in the license email or in the Download section of our website.
The “Assembly Version” of the dlls have not changed but the “File Version”. Here is the list of all new “File version” attributes depending on the Barcode Professional edition:
- Barcode Professional SDK for .NET patched to v3.0.2000.6
- Barcode Professional for Windows Forms .NET patched to v7.0.2000.9
- Barcode Professional for ASP.NET patched to v7.0.2000.5
- Barcode Professional for WPF patched to v4.0.3500.4
- Barcode Professional for Silverlight patched to v126.96.36.199
- Barcode Professional for Reporting Services patched to v7.0.2000.5
We’re very exited about what our team will deliver in v4.0 of ThermalLabel SDK. Today we want to provide some insights while designing and developing this new version.
First step: which .NET Framework version to target?
The first thing to determine for v4.0 was which .NET Framework version our product would leverage on. Back on October last year, we decided to run a very simple survey asking our customers about on which version of .NET Framework they were using ThermalLabel SDK. The result was the following:
- .NET 2.0 – 16%
- .NET 3.5 – 68%
- .NET 4.0 – 16%
Since its first release, ThermalLabel SDK was built on.NET 2.0. However, in v4.0 we had to decide which one to develop on. As we outlined in our previous post about ThermalLabel SDK 4.0 future plans the key for this new release is the change in the core engine which now should be graphic based for more development benefits. After analyzing pros and cons on .NET versions features, our team opted for .NET 3.5 and priorizing the “Client Profile” edition introduced in such .NET version. So, v4.0 of ThermalLabel SDK will require .NET 3.5 Client Profile or greater.
Brief intro to v4.0 features
Big new features and changes were made on v4.0. Most of the features outlined in our first post on v4.0 will be delivered. Here are some of them:
- A new label graphic-based engine: this new engine allowed us to accomplish most of the other high requested features like landscape printing and export labels to raster image files. However, the new engine is not purely graphic-based. To improve printing performance, some items are generated as native printer commads and not graphics depending on the items’ settings. But this new engine will allows you to create labels which will be printed exactly to both ZPL or EPL printers! That means you no longer will need to create separated labels for targeting each printer language.
- A complete new barcode engine: The new BarcodeItem now is based on our Barcode Professional product providing some new featues which were impossible to bring by using native printer commands.
- Buffering: previous version of ThermalLabel worked by buffering all the printer commads before sending them to the printer. In v4.0 this is a feature which can be enabled/disabled anytime (by default it is disabled i.e. the printer commands are sent as soom as possible to the target printer).
- Caching: because the new graphic-based engine, we included Caching feature to all items. This allows to cache the output of items to the printer once and then re-use them without re-generation. This is especially useful for items which display static contents like Company logos or fixed messages. By default, Caching is disabled.
- Portrait and Landscape Printing: this new release will provide Portrait printing with 0 and 180 degrees rotation as well as Landscape printing with 90 and 270 degrees rotation!
- Print Preview and Exporting Labels to image files: you no longer will need a real physical thermal printer for developing! In v4.0 you can export/save a PrintJob and ThermalLabel objects to raster image formats like JPEG, PNG, BMP, GIF and TIFF (including multi-page tiff)! You can save to files or streams and can be easily displayed on Windows Forms for end-user print preview.
- Exporting Labels to Adobe PDF document: In addition to export labels to raster image formats, in v4.0 you can export/save a PrintJob and ThermalLabel objects to Adobe PDF documents out-of-the-box!
NOTE: The only feature we won’t be able to deliver this time is the “Visual Label Designer”. This is because we wanted to launch and test the new label engine before going forward. We have some prototypes of this which will be fine-tuned and enhanced depending on the feedbacks we get with v4.0
Breaking changes and No Backward compatibility, sadly
Because the big changes introduced in v4.0, this new release has some breaking changes and will no be backward compatible, sadly. In v4.0 we had to deprecate/remove some items which do not make sense in this release.
- TextItem and GraphicTextItem: All text in v4.0 is graphic based now, so in oder to simplify things, then new TextItem class now features most of the goodies (full Unicode support, RTL, Windows TTF files, etc) found on previous GraphicTextItem. The last one will be deprecated/removed from v4.0
- BarcodeItem: this item, which is now based on our Barcode Professionl product, has changed some properties and added new ones. Some of them are the ability for centering barcodes inside its specified area, text alignment including justifying, stretching barcodes, etc.
- TableShapeItem: this item is no longer available. It was deprecated because the new TextItem and BarcodeItem classes now provide Border features which in conjunction make it possible to reproduce a table layout.
The new v4.0 of ThermalLabel SDK will provide lots of new features which will make easy working when dealing with Thermal Printers from .NET
We expect to launch it ending this month and hope our customers like and enjoy it. As allways your feedbacks are welcome and very appreciated.
Supose you have a predesigned image for a coupon or ticket and you need to print a barcode onto it by using Reporting Services report model. The first try is placing an Image item and then a barcode (CRI) onto it. All is fine until you try to preview the report in Visual Studio or run/deploy it to a report server. It’s likely you get some warning message like this one:
[rsOverlappingReportItems] The custom reportitem ‘neodynamicBarcodeControl1’ and the image ‘image1’ overlap. Overlapping report items are not supported in all renderers.
You not only get that message but the barcode is not displayed where you placed it i.e. on the predesigned image. That is a limitation of RS report model and a workaround to it would be this:
- DO NOT use an Image item for the predesigned image BUT replace it with a Rectangle item and set its BackgroundImage property with the image file
- After that, ensure you place the Barcode CRI inside that rectangle i.e. the barcode CRI is now a nested item. That’s it.
Because the Rectangle item is a container type item, you can place any objet inside it and no overlying is taken place. HTH.