dymosoftware / dymo-connect-framework

DYMO Connect Framework for Javascript.
Other
86 stars 54 forks source link

Solid Black Barcodes When Printing #43

Open andrewcottage opened 2 years ago

andrewcottage commented 2 years ago

Hello, we've been using the SDK now to print for almost 2 years without issue. We currently have Dymo 450s that we print to. Recently we bought a Dymo 550 to use at one of our workstations, and to our surprise any barcode printed by the SDK comes out as solid black for us. The same code works perfectly for Dymo 450s.

Has anyone else experienced this issue?

Image and code below.

tempImageKplV8g

const printLabel = barcodeData => {
  var labelXml =
    '<?xml version="1.0" encoding="utf-8"?>\
                            <DieCutLabel Version="8.0" Units="twips">\
                                <PaperOrientation>Landscape</PaperOrientation>\
                                <Id>Address</Id>\
                                <PaperName>30252 Address</PaperName>\
                                <DrawCommands>\
                                    <RoundRectangle X="0" Y="0" Width="1581" Height="5040" Rx="270" Ry="270" />\
                                </DrawCommands>\
                                <ObjectInfo>\
                                    <BarcodeObject>\
                                        <Name>ItemCode</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>\
                                        <Text>1234</Text>\
                                        <Type>Code128Auto</Type>\
                                        <Size>Large</Size>\
                                        <TextPosition>Bottom</TextPosition>\
                                        <TextFont Family="Arial" Size="5" Bold="False" Italic="False" Underline="False" Strikeout="False" />\
                                        <CheckSumFont Family="Arial" Size="7.3125" Bold="False" Italic="False" Underline="False" Strikeout="False" />\
                                        <TextEmbedding>None</TextEmbedding>\
                                        <ECLevel>0</ECLevel>\
                                        <HorizontalAlignment>Center</HorizontalAlignment>\
                                        <QuietZonesPadding Left="0" Top="0" Right="0" Bottom="0" />\
                                    </BarcodeObject>\
                                    <Bounds X="331" Y="680.31494140625" Width="4622" Height="765.708679199219" />\
                                </ObjectInfo>\
                                <ObjectInfo>\
                                    <TextObject>\
                                        <Name>Description</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>Center</HorizontalAlignment>\
                                        <VerticalAlignment>Top</VerticalAlignment>\
                                        <TextFitMode>ShrinkToFit</TextFitMode>\
                                        <UseFullFontHeight>True</UseFullFontHeight>\
                                        <Verticalized>False</Verticalized>\
                                        <StyledText>\
                                            <Element>\
                                                <String>ItemDescription</String>\
                                                <Attributes>\
                                                    <Font Family="Arial" Size="12" Bold="True" Italic="False" Underline="False" Strikeout="False" />\
                                                    <ForeColor Alpha="255" Red="0" Green="0" Blue="0" />\
                                                </Attributes>\
                                            </Element>\
                                        </StyledText>\
                                    </TextObject>\
                                    <Bounds X="331" Y="163" Width="4622" Height="341.566925048828" />\
                                </ObjectInfo>\
                            </DieCutLabel>';

  const label = dymo.label.framework.openLabelXml(labelXml);

  label.setObjectText("Description", barcodeData.description);
  label.setObjectText("ItemCode", barcodeData.barcode);

  const printers = dymo.label.framework.getPrinters();
  if (printers.length == 0)
    throw "No DYMO printers are installed. Install DYMO printers.";

  let printerName = "";
  for (var i = 0; i < printers.length; ++i) {
    var printer = printers[i];
    console.log(printer);
    if (printer.printerType == "LabelWriterPrinter") {
      printerName = printer.name;
      break;
    }
  }

  label.print(printerName);
};

export { printLabel };
dpolivy commented 2 years ago

Is this Windows or Mac? When we've seen issues with labels printing all black, our recommendation to users is to uninstall and reinstall the DYMO software and that usually clears it up.

Note that the 550 series requires DYMO Connect, and on Mac DYMO Connect does not have the DYMO Web Service supported yet, so it is not possible to use the 550s on Mac with web printing just yet.

andrewcottage commented 2 years ago

This is happening on Windows. It's happens on two separate computers with a fresh install of Dymo connect.

dpolivy commented 2 years ago

Sorry, I don't have any other ideas for you. If you open that XML label in DCD software does it still print the black box?

andrewcottage commented 2 years ago

I'll try that. What DCD software can you recommend? I've attached example XML below in case its helpful. Thanks for all the help so far.

<?xml version="1.0" encoding="utf-8"?>
<DieCutLabel Version="8.0" Units="twips">
  <PaperOrientation>Landscape</PaperOrientation>
  <Id>Address</Id>
  <PaperName>30252 Address</PaperName>
  <DrawCommands>
    <RoundRectangle X="0" Y="0" Width="1581" Height="5040" Rx="270" Ry="270" />
  </DrawCommands>
  <ObjectInfo>
    <BarcodeObject>
      <Name>123456</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>
      <Text>1234</Text>
      <Type>Code128Auto</Type>
      <Size>Large</Size>
      <TextPosition>Bottom</TextPosition>
      <TextFont Family="Arial" Size="5" Bold="False" Italic="False" Underline="False" Strikeout="False" />
      <CheckSumFont Family="Arial" Size="7.3125" Bold="False" Italic="False" Underline="False" Strikeout="False" />
      <TextEmbedding>None</TextEmbedding>
      <ECLevel>0</ECLevel>
      <HorizontalAlignment>Center</HorizontalAlignment>
      <QuietZonesPadding Left="0" Top="0" Right="0" Bottom="0" />
    </BarcodeObject>
    <Bounds X="331" Y="680.31494140625" Width="4622" Height="765.708679199219" />
  </ObjectInfo>
  <ObjectInfo>
    <TextObject>
      <Name>Test Barcode</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>Center</HorizontalAlignment>
      <VerticalAlignment>Top</VerticalAlignment>
      <TextFitMode>ShrinkToFit</TextFitMode>
      <UseFullFontHeight>True</UseFullFontHeight>
      <Verticalized>False</Verticalized>
      <StyledText>
        <Element>
          <String>ItemDescription</String>
          <Attributes>
            <Font Family="Arial" Size="12" Bold="True" Italic="False" Underline="False" Strikeout="False" />
            <ForeColor Alpha="255" Red="0" Green="0" Blue="0" />
          </Attributes>
        </Element>
      </StyledText>
    </TextObject>
    <Bounds X="331" Y="163" Width="4622" Height="341.566925048828" />
  </ObjectInfo>
</DieCutLabel>
trevdor commented 2 years ago

@andrewcottage Just in case you didn't see, DYMO updated the framework a few weeks back with a lot of references to the new 500 series. Mostly just seems like their support for this lib is abysmal, but if you're not using that latest update, might be worth seeing if it helps barcodes on 550's.

andrewcottage commented 2 years ago

@trevdor thanks for that. We reverted our DCD to version 1.3.2.18 and that seems to fix the issue, but the only problem is that the 550 is not supported on that version, so we are stuck with using old hardware (which is becoming harder to buy). Is there someone I should escalate this issue with at DYMO?

trevdor commented 2 years ago

Wish I knew. We waiting 30 min on hold to schedule a DYMO support call, and the support agent didn't seem to know the DYMO Web Service + this SDK even existed. It's apparently being updated at times, but simultaneously feels neglected.

Jarrette commented 2 years ago

@trevdor did you ever get an answer? Having the same issue.

trevdor commented 2 years ago

I've never tried to print a barcode, @Jarrette, but have been fighting other DYMO issues for weeks on end. But perhaps @andrewcottage got somewhere with this one?

hunkydoryrepair commented 2 years ago

I've found, even with the Dymo 450, if using Dymo Connect to print barcodes sideways (which depends on the label type), they come out as black bars. Only solution I've found is reverting to Dymo Label Web Connect. But I'm on 1.4.2.82 so maybe reverting to Dymo connect 1.3 will solve for us, too.

hunkydoryrepair commented 2 years ago

Anyone try the newer 1.4.3.x with this issue? I notice that now, Web Connect prints barcodes 2X as thick as in designer app. you can design a label to print barcodes just fine, but then when you print through web connect they get clipped. I think this could be related to the black bar bug, which could indicate the barcode field is too small.