- IMPORTANT:
Starting from version 1.4.4.21, awaitable methods have been introduced in DymoPrinter class to improve
communication between SDK and printers.
These instructions will help you to understand how DYMO Connect SDK works for .NET and Javascript.
This is a WPF sample using DYM.Connect.SDK nuget package.
Open the project on Visual Studio
File > Open > Project/Solution > Select WPFSDKSample.csproj
Run Package Manager Console
update-package -reinstall
- DYMO.Connect.SDK - The nuget package required
- NETStandard - NETStandard.Library (>= 2.0.0)
- SkiaSharp - SkiaSharp (= 1.68.0)
- SkiaSharp.Views - SkiaSharp.Views (= 1.68.0)
-
- Load label
void LoadLabelFromFilePath(string FileName) // Load label content from file
void LoadLabelFromXML(string XmlContent) //Load label from XML content
- Manage label objects
IEnumerable<ILabelObject> GetLabelObjects() //Get list of objects(Text, Shapes, Address, etc.) contained in the label
bool UpdateLabelObject(ILabelObject labelObject, string objectValue) //Update value of specified object
bool SetImageFromFilePath(string objectName, string imageFile) //Set content of image object specified from image file
bool SetImageFromBase64(string objectName, string base64String) //Set content of image object specified from Base64 string
- Get preview
byte[] GetPreviewLabel() //Get preview image's label as byte array
- Save label
bool Save(string fileName) //Save label file
-
-
Get printers
- Get list of DYMO printers installed in the current machine.
Task<IEnumerable<IPrinter>> GetPrinters()
-
Print label
- Print an instantiated DymoLabel object in the selected printer.
async Task<bool> PrintLabel( IDymoLabel label, /* Label instance */ string printerName, /* Printer name */ int copies = 1, /* Number of copies */ bool collate = false, /* Collate printing label */ bool mirror = false, /* Mirroring label */ int rollSelected = 0, /* It applies only for Twin Turbo 450 printer --> 0: left, 1:right */ bool chainMarks = false, /* Chain marks when label printer is D1 */ bool barcodeGraphsQuality = false /* Activate Barcode and graphics quality */)
- Print a list of instantiated DymoLabel objects in the selected printer.
async Task<bool> PrintLabel( IEnumerable<IDymoLabel> labelsCollection, /* Collection of labels instances */ string printerName, /* Printer name */ int copies = 1, /* Number of copies */ bool collate = false, /* Collate printing label */ bool mirror = false, /* Mirroring label */ int rollSelected = 0, /* It applies only for Twin Turbo 450 printer --> 0: left, 1:right */ bool chainMarks = false, /* Chain marks when label printer is D1 */ bool barcodeGraphsQuality = false /* Activate Barcode and graphics quality */)
-
LW 550 printer methods(these methods will not have effect when selected printer does not belong to 550 series)
- Verify if selected printer belongs to 550 series.
Task<bool> IsRollStatusSupported(string printerName)
- Get information about current label inserted in the selected printer.
async Task<IRollStatusInPrinter> GetRollStatusInPrinter(string printerName)
-
This is a JavaScript sample using DYMO Connect Framework.
DYMO Connect Software installed
- DYMO Connect Software
- DYMO Connect framework has compatibility with DYMO Label Software
Reference to Javascript SDK file
Include the framework into your project
- https://github.com/dymosoftware/dymo-connect-framework/blob/master/dymo.connect.framework.min.js
- https://qajavascriptsdktests.azurewebsites.net/JavaScript/dymo.connect.framework.js
dymo.connect.framework includes functions from the previous dymo.label.framework
These are the main functions to get start
-
- Initialize
dymo.label.framework.init() //Initialize DYMO Label Framework
dymo.label.framework.checkEnvironment() // Validate if the environment meets the requirements
- Load label
dymo.label.framework.openLabelFile(fileName) //Load label from file name and return label instance
- Validate label
dymo.label.framework.openLabelXml(labelXml) //Load label from XML content and return label instance
- Validate label instance (introduced in dymo.connect.framework)
label.isValidLabel() //Validate if the current content is a valid label based on the current service installed label.isDCDLabel() //Validate if the current content is a valid DYMO Connect label based on DYMO Connect service label.isDLSLabel() //Validate if the current content is a valid DYMO Label Software label based on DYMO Label Software service
- Get printers
dymo.label.framework.getPrinters() //Get list of DYMO printers installed
dymo.label.framework.printLabel(printerName, printParamsXml, labelXml, labelSetXml) //Print label
- Get preview
dymo.label.framework.renderLabel(labelXml, renderParamsXml, printerName) //Get label preview image of the label
Local Web Api service should be running to be able to work with sample pages.
- https://qajavascriptsdktests.azurewebsites.net/JavaScript/CheckEnvironment/CheckEnvironment.html
- https://qajavascriptsdktests.azurewebsites.net/JavaScript/VisitorManagement/VisitorManagement.html
- https://qajavascriptsdktests.azurewebsites.net/JavaScript/PreviewAndPrintLabel/PreviewAndPrintLabel.html
Opening a label file previously created from DYMO Label Software, with DYMO Connect Software installed, it will convert the structure of DLS label into DYMO Connect label. Therefore, isDCDLabel function will return always true after label file has been open, when DYMO Connect is running.
setTextMarkup function is not supported for DYMO Connect labels.
Please read the following thread in case you run into some issues deploying your application integrating DYMO Connect SDK.
DYMO Team www.dymo.com