Windows Label Editor
The Windows ThermalLabelEditor component is a first-class label designer component for .NET Windows desktop apps which main goal is to aid the users with the label design process providing a visual environment.
The ThermalLabelEditor features visual aids for the creation of label items, an undo/redo engine, Cut-Copy-Paste functionality, z-ordering, zooming, keyboard shortcuts for well-known common actions, In-place text edition for TextItem objects and many more features. It is also very customizable so you can skin it to match the app's UI style on which it will be hosted.
The following is a screenshot of the sample app which is shipped with the ThermalLabel SDK package.
On these screenshots you can see a ThermalLabel object on the editor's design surface. Pay attention to that figure. What you see surrounded by the "rulers" is the ThermalLabelEditor component. The other part of the UI i.e. the menu, toolbar, status bar, dialog boxes for item's properties, etc; will be designed and coded by you! That means you can create a Visual Label Designer within your own WPF or Windows Forms app by using whatever you want i.e. you may want to use a Ribbon menu instead of a standard one, dialog boxes instead of "Properties Window/Grid", etc. You are free to surround our ThermalLabelEditor component to match your UI app style!
ThermalLabelEditor System Requirements
The minimum system requirements for ThermalLabelEditor are:
- ThermalLabel SDK 7.0 (Neodynamic.SDK.ThermalLabel.dll)
- .NET Framework 3.5 SP1 (Client-Profile)
ThermalLabelEditor .NET assemblies (dll)
The ThermalLabelEditor component is shipped with a version for WPF and one for Windows Forms. Both classes are located in the same assembly called Neodynamic.Windows.ThermalLabelEditor.dll Inside that assembly, the WPF and Windows Forms classes of the ThermalLabelEditor component are located under the following namespaces:
- For WPF, the class path is Neodynamic.Windows.WPF.ThermalLabelEditor.ThermalLabelEditor
- For Windows Forms, the class path is Neodynamic.Windows.Forms.ThermalLabelEditor.ThermalLabelEditor
Sample Application Projects
With the ThermalLabel SDK installer, we've shipped Windows Forms and WPF projects using the ThermalLabelEditor component. Open them using Visual Studio 2010 or greater to learn how the ThermalLabelEditor component works and how to interact with it in your own app. The Windows Forms project uses a "Properties Window" approach to allow the user to change/modify the data of each Item objects on the label while the WPF app uses a "Properties Dialog" approach for the same task.
IMPORTANT
These sample app projects, one for Windows Forms and one for WPF, are both very simple apps and do NOT demo ALL the ThermalLabel SDK and Editor features! They might have errors, bugs, bad software development practices, etc.; meaning you cannot consider it as a sample of how to code apps! These apps were coded for demoing how you can interact with the ThermalLabelEditor component ONLY. Again, the sample apps are NOT our product but a sample of how your own app/code needs to interact with the ThermalLabelEditor component.
ThermalLabelEditor Features
- Rulers: The ThermalLabelEditor features rulers to help users with the measurement process. There are two rulers; one which runs at the top of the editor's canvas and one which runs at the left side. The ruler's unit of measurement automatically changes to match the current Unit set up on the ThermalLabel object which is being edited. You can change the ruler's background and foreground colors to match your UI style.
- Items' Selection and Handlers: The items on the design surface can be selected by the user by "drawing" a rectangular selection around the desired items; or by left-clicking on the item. Multiple items can be selected by left-clicking on the items while holding down CTRL hey. Each time the user selects one or multiple items some visual handlers appear on the design surface. Handlers aid the users with full resize and move actions as well as rotation. You can also change the background and foreground colors of the handlers to match your UI style.
- Keyboard-based Item's Movement: Users can move items on the editor's surface by using the Arrow keys. For longer movements users can hold down CTRL key.
- In-Place Text Edition: Users can easily edit the text of a TextItem by double-clicking on it or by hitting F2 key. The In-Place Text Edition is even enabled if the TextItem is being rotated!
- Picture Missing Aid: When working with ImageItem objects, you can specify a custom image file which will displayed if the image source of the ImageItem cannot be found!
- Picture Monochrome Conversion Tool: The ImageItemUtils class feature a method which allows you to get the output when converting the image source of an ImageItem to black & white based on the MonochromeSettings options set up on such ImageItem object! It is useful for you to display to your users a preview of the image in black & white format by fine tuning the MonochromeSettings options
- Items' Comments: If the Item object has set up comments (by using the new Comments property) then the ThermalLabelEditor will display a tooltip/popup to the users when the mouse pointer is over the item.
- High Quality Zoom: ThermalLabelEditor provides you with a high quality zooming feature. User can zoom the editor's surface from 10% up to 1000%
- Undo/Redo: ThermalLabelEditor allows users to undo/redo actions. You as the app developer are provided with methods and properties related to state of the editor's design surface for Undo/Redo.
- Cut-Copy-Paste: ThermalLabelEditor also allows users to cut, copy and paste items on the editor's design surface. You as the app developer are provided with methods and properties related to clipboard's state of the editor's design surface. NOTE: the "clipboard" used by the ThermalLabelEditor is for internal usage i.e. you cannot, for example, to copy an Item and then try to paste it on another app.
- Items' Z-Ordering: Z-Ordering refers to index position of an Item in the Items collection property of the ThermalLabel object being edited. You as the app developer are provided with methods like BringForward, BringToFront, SendBackward and SendToBack.
- Grid lines: ThermalLabelEditor allows you to specify grid lines for better label design. The well known "Snap to Grid" feature is also supported.
- Locking Items: ThermalLabelEditor allows you to lock items on the editor surface so they cannot be moved accidentally.
- Keyboard Shortcuts: ThermalLabelEditor does support the following keyboard shortcuts:
Action/Operation | Keyboard Shortcut |
---|---|
Clipboard Copy | CTRL + C or CTRL + INSERT |
Clipboard Cut | CTRL + X or SHIFT + DELETE |
Clipboard Paste | CTRL + V or SHIFT + INSERT |
Undo | CTRL + Z |
Redo | CTRL + Y |
Select All Items | CTRL + A |
Delete Selected Items | DELETE |
Move Selected Items (Small Step) | ARROW KEYS |
Move Selected Items (Long Step) | CTRL + ARROW KEYS |
Edit TextItem | F2 |
Zoom In | CTRL + PLUS SIGN |
Zoom Out | CTRL + MINUS SIGN |
Zoom 100% | CTRL + 0 (ZERO) |