从网站上使用 DYMO 标签打印机进行打印

Muh*_*lik 5 javascript printing web dymo

如何通过网站在 DYMO 标签打印机上打印?我已按照此处所述构建了以下文件,但未成功,需要更多帮助才能远程打印。

    <html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
<title>Print a Label</title> 
<script src = "http://labelwriter.com/software/dls/sdk/js/DYMO.Label.Framework.latest.js" type="text/javascript" charset="UTF-8"> </script>
<script src = "PrintLabel.js" type="text/javascript" charset="UTF-8"> </script>
</head>

<body>
<h1>DYMO Label Framework JavaScript Library Samples: Print Label</h1> 

    <div id="textDiv">
        <label for="textTextArea">Label text:</label><br/>
        <textarea name="textTextArea" id="textTextArea"  rows='5' cols='40'></textarea>
    </div>

        <div id="printDiv">
            <button id="printButton">Print</button>
        </div>

</body> 

</html> 
Run Code Online (Sandbox Code Playgroud)

Ada*_*dam 7

要使用 DYMO 直接从浏览器打印标签而无需打印机对话框,您需要

  1. DYMO 标签框架 JS SDK
  2. DYMO 标签软件 (DLS)。

您可以在这里下载它们。

DLS 需要安装在连接 DYMO 设备的计算机上。DLS 附带 DYMO Web 服务,可以通过浏览器进行访问。

然后,您可以使用 DLS 创建一个由文本区域和图像组成的标签 XML 文件。

最后可以用框架在JS中打开标签XML文件,将textareas替换为文本,将图像替换为其他图像,然后打印。

下面是如何使用 url 提供的 PNG 替换 labelXML 中的图像的示例:

// connect to printer
var printer = dymo.label.framework.getLabelWriterPrinters()[0].modelName;

// create label from XML file
var label = dymo.label.framework.openLabelXml(getLabelXml());

// load image from url and store as Base64
var image = dymo.label.framework.loadImageAsPngBase64("www.example.de/image.png");

// overwrite image "Image" from XML label with loaded image
label.setObjectText('Image', image);

// print it
label.print(printer);
Run Code Online (Sandbox Code Playgroud)

您可以在我的博客文章中找到更多帮助。


Muh*_*zam 1

您无法远程打印,但以下代码可以使用 DYMO Javascript 框架在本地工作。

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/1999/REC-html401-19991224/loose.dtd">
<html>
    <head>
        <title>Sample DYMO Label Plug-In</title>


            <script src="http://labelwriter.com/software/dls/sdk/js/DYMO.Label.Framework.latest.js"
            type="text/javascript" charset="UTF-8">   



            function GetDYMOPrinters()
            {   

                var printers = dymo.label.framework.getPrinters();
                if (printers.length == 0)
                throw "No DYMO printers are installed. Install DYMO printers.";
                var printerName = "";
                for (var i = 0; i < printers.length; ++i)
                {
                    var printer = printers[i];
                    if (printer.printerType == "LabelWriterPrinter")
                    {
                        printerName = printer.name;
                        break;
                    }
                }

            var label = DYMO.Label.Framework.Label.Open("MyText.label");
            label.SetObjectText("NameTxt", "John Smith");

            label.print("DYMO LabelWriter");
            }
     </script>

    </head>
    <body onload="  GetDYMOPrinters()">
         <form action="" method="post" id="DYMOLabel">
        <center>
        <h2>DYMO Label  Example</h2>
         <input type=button value="Get DYMO Printers" onClick="GetDYMOPrinters()">
     </center>
    </form>




    </body>
</html>
Run Code Online (Sandbox Code Playgroud)