首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Dymo SDK以js打乱打印

Dymo SDK以js打乱打印
EN

Stack Overflow用户
提问于 2020-03-31 22:28:15
回答 1查看 203关注 0票数 0

我有一个网页来打印一个地址标签,在旧的DYMO SDK上工作得很好,现在使用DYMO Connect SDK以不同的顺序打印文本框中的行。例如,下面的aspx文本框中的第1行第2行第3行第4行

按如下方式打印:第3行(空白行)第1行第2行和第4行一起打印

下面是我用来打印的javascript。

代码语言:javascript
复制
    function prtLabel() {
    var textTextArea = document.getElementById('txtLabelText');
    try {
        // open label
        dymo.label.framework.init();

        var labelXml = '<?xml version="1.0" encoding="utf-8"?>\
                    <DieCutLabel Version="8.0" Units="twips">\
                        <PaperOrientation>Landscape</PaperOrientation>\
                        <Id>Address</Id>\
                        <PaperName>30330 Return Address</PaperName>\
                         <DrawCommands>\
                            <RoundRectangle X="0" Y="0" Width="1581" Height="5040" Rx="270" Ry="270" />\
                        </DrawCommands>\
                        <ObjectInfo>\
                            <AddressObject>\
                                <Name>Address</Name>\
                                <ForeColor Alpha="255" Red="0" Green="0" Blue="0" />\
                                <BackColor Alpha="0" Red="255" Green="255" Blue="255" />\
                                <LinkedObjectName></LinkedObjectName>\
                                <Rotation>Rotation0</Rotation>\
                                <IsMirrored>False</IsMirrored>\
                                <IsVariable>True</IsVariable>\
                                <HorizontalAlignment>Left</HorizontalAlignment>\
                                <VerticalAlignment>Middle</VerticalAlignment>\
                                <TextFitMode>ShrinkToFit</TextFitMode>\
                                <UseFullFontHeight>True</UseFullFontHeight>\
                                <Verticalized>False</Verticalized>\
                                <StyledText>\
                                    <Element>\
                                        <String>DYMO\n3 Glenlake Parkway\nAtlanta, GA 30328</String>\
                                        <Attributes>\
                                            <Font Family="Arial" Size="10" Bold="False" Italic="False" Underline="False" Strikeout="False" />\
                                            <ForeColor Alpha="255" Red="0" Green="0" Blue="0" />\
                                        </Attributes>\
                                    </Element>\
                                </StyledText>\
                                <ShowBarcodeFor9DigitZipOnly>False</ShowBarcodeFor9DigitZipOnly>\
                                <BarcodePosition>BelowAddress</BarcodePosition>\
                                <LineFonts>\
                                    <Font Family="Arial" Size="10" Bold="False" Italic="False" Underline="False" Strikeout="False" />\
                                    <Font Family="Arial" Size="10" Bold="False" Italic="False" Underline="False" Strikeout="False" />\
                                    <Font Family="Arial" Size="10" Bold="False" Italic="False" Underline="False" Strikeout="False" />\
                                    <Font Family="Arial" Size="10" Bold="False" Italic="False" Underline="False" Strikeout="False" />\
                                </LineFonts>\
                            </AddressObject>\
                            <Bounds X="332" Y="150" Width="5760" Height="1260" />\
                        </ObjectInfo>\
                    </DieCutLabel>';
        var label = dymo.label.framework.openLabelXml(labelXml);

        // set label text
        label.setObjectText("Address", textTextArea.value);

        // select printer to print on
        // for simplicity sake just use the first LabelWriter printer
        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;
            }
        }

        if (printerName == "")
            throw "No LabelWriter printers found. Install LabelWriter printer";

        // finally print the label
        label.print(printerName);

        //close the window
        closeprtwin();
    }
    catch (e) {
        alert(e.message || e);
        closewin();
    }

}

function closeprtwin() {
    window.open('', '_self', '');
    window.close();
}
EN

回答 1

Stack Overflow用户

发布于 2020-05-26 22:31:18

您使用的是什么版本?

你有没有试过“收缩到合适”的属性?

您可以尝试在DYMO Connect上进行编辑,然后传输到XML文件,然后打印它以确保一切正常。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60953030

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档