Giter VIP home page Giter VIP logo

dcd-sdk-sample's Introduction

DYMO Connect SDK

- IMPORTANT:
Starting from version 1.4.4.21, awaitable methods have been introduced in DymoPrinter class to improve
communication between SDK and printers.

Getting Started ๐Ÿš€

These instructions will help you to understand how DYMO Connect SDK works for .NET and Javascript.

.NET Sample

This is a WPF sample using DYM.Connect.SDK nuget package.

Installing ๐Ÿ”ง

Open the project on Visual Studio

File > Open > Project/Solution > Select WPFSDKSample.csproj

Run Package Manager Console

 update-package -reinstall

Nuget package ๐Ÿ“ฆ

Dependencies ๐Ÿ› ๏ธ

Classes and methods โš™๏ธ

  • DymoLabel instance

    • 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
  • DymoPrinter instance

    • 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)

JavaScript Sample

This is a JavaScript sample using DYMO Connect Framework.

Prerequisites ๐Ÿ“‹

DYMO Connect Software installed

Reference to Javascript SDK file

Installing ๐Ÿ”ง

Include the framework into your project

Functions โš™๏ธ

dymo.connect.framework includes functions from the previous dymo.label.framework

These are the main functions to get start

  • dymo.connect.framework

    • 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
    • Print
    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

Sample Html Pages ๐Ÿ“‹

Local Web Api service should be running to be able to work with sample pages.

Important notes

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.

Publishing your app

Please read the following thread in case you run into some issues deploying your application integrating DYMO Connect SDK.

Common deployment issues

Authors โœ’๏ธ

DYMO Team www.dymo.com

Acknowledgments ๐Ÿ“ข

dcd-sdk-sample's People

Contributors

dymosoftware avatar marcolerma avatar chang-dymo avatar fthobe avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.