Streckkoder utskrifter?

.NET

1 svar · 420 visningar · startad av Zaiman

Medlem sedan dec. 20014 239 inlägg
Trådstart#1

Hej.

Har skrivit ett program som skriver ut streckkoder i en etikettskrivare.
Men det verkar som om kvaliten på streckkoden blir för dålig när jag skriver vertikalt på etiketten.

Koden för utskrift ser ut i stil med detta:
<code c#>
private void JokerEtikett_PrintPage(object sender, System.Drawing.Printing.PrintPageEventArgs e)
{
System.Drawing.Drawing2D.GraphicsState svd = e.Graphics.Save();
e.Graphics.TranslateTransform(1, 110, System.Drawing.Drawing2D.MatrixOrder.Prepend);
e.Graphics.RotateTransform(-90.0f);

        //  Artikelnummer
        Font topPBArt = new Font("Arial", 14, FontStyle.Bold, GraphicsUnit.Pixel);
        e.Graphics.DrawString(benamning, topPBArt, Brushes.Black, 0, 0, new StringFormat());

        //  i Streckkod 
        Font code128 = new Font("Code128B", 12, FontStyle.Regular, GraphicsUnit.Pixel);
        e.Graphics.Restore(svd);
        e.Graphics.TranslateTransform(20, 120, System.Drawing.Drawing2D.MatrixOrder.Prepend);
        e.Graphics.RotateTransform(-90.0f);
        e.Graphics.DrawString(slrText, code128, Brushes.Black, 0, 0, new StringFormat());

        //  Kod i klartext
        Font slrFont = new Font("Arial", 10, FontStyle.Regular, GraphicsUnit.Pixel);
        e.Graphics.TranslateTransform(15, 30, System.Drawing.Drawing2D.MatrixOrder.Prepend);
        //e.Graphics.DrawString(slrText, slrFont, Brushes.Black, 0, 0, new StringFormat());
        e.Graphics.TranslateTransform(-20, 220, System.Drawing.Drawing2D.MatrixOrder.Prepend);
        e.Graphics.DrawString("MIN EGNA TEXT RAD1", slrFont, Brushes.Black, 0, 0, new StringFormat());
        e.Graphics.DrawString("MIN EGNA TEXT..", slrFont, Brushes.Black, 10, 10, new StringFormat());
        
        // Återställ grafiskt läge
        e.Graphics.Restore(svd);
        e.Graphics.ResetTransform();
        
        // Rita upp bilden
        Bitmap picture = new Bitmap(picturePath);
        picture.RotateFlip(RotateFlipType.Rotate90FlipX);
        e.Graphics.DrawImage(picture, new Rectangle(65, 25, 200, 80));
    }

</code>

Har provat med olika koder för streckkoden men läsaren klarar bara av att läsa om streckkoden är skriven i horisontellt läge.

Finns det någon annan variant på utskrift som ger bättre kvalite på utskriften än vad denna verkar göra.
Det är en bra etikettskrivare som används men tydligen inte tillräckligt bra?

Medlem sedan dec. 20014 239 inlägg
#2

Problemet är hårdvarurelaterat.

252 ms totalt · 4 externa anrop · v20260731065814-full.d34c6d5a
124 ms — deklarationer (db)
0 ms — hämta statistik (cache)
126 ms — hämta tråd, inlägg och bilagor (db)
116 ms — ändringar (db)