winforms 为什么我无法使用条形码阅读器扫描从打印机收到的标签?[已关闭]

4xrmg8kj  于 2023-01-31  发布在  其他
关注(0)|答案(2)|浏览(115)

已关闭。此问题需要details or clarity。当前不接受答案。
**想要改进此问题?**添加详细信息并通过editing this post阐明问题。

3天前关闭。
Improve this question
我用Winforms应用程序中输入的值创建了一个条形码,并用打印机打印。之后,当我想用条形码阅读器扫描它时,我无法扫描它。这是我的代码:

private void GenerateBarcodeButton_Click(object sender, EventArgs e)
{
    if (!String.IsNullOrEmpty(textBox1.Text))
    {
        pictureBox1.Image = Zen.Barcode.BarcodeDrawFactory.Code128WithChecksum.Draw(textBox1.Text, 50, 2);
    }
    else
    {
        MessageBox.Show("Please enter the barcode number you want to generate.");
    }
}
public void PrintPicture(object sender, PrintPageEventArgs e)
{
    Bitmap bmp = new Bitmap(pictureBox1.Width, pictureBox1.Height);
    // bmp.SetResolution(203, 203);
    pictureBox1.DrawToBitmap(bmp, new Rectangle(0, 0, pictureBox1.Width, pictureBox1.Height));
    e.Graphics.DrawImage(bmp, 20, 20, new System.Drawing.RectangleF(0, 0, bmp.Width, bmp.Height), System.Drawing.GraphicsUnit.Pixel);
}

private void Print_Click(object sender, EventArgs e)
{
    PrintDialog pd = new PrintDialog();
    PrintDocument pDoc = new PrintDocument();
    pDoc.PrintPage += PrintPicture;
    pd.Document = pDoc;
    if (pd.ShowDialog() == DialogResult.OK)
    {
        pDoc.Print();
    }
}

我用于打印的打印机型号是Godex G300,我哪里出错了?

sshcrbum

sshcrbum1#

您的代码中至少有一个主要问题,请参考this Microsoft documentation page以了解具体是如何完成的。
PrintPage()分配事件处理程序时,应将其 Package 在PrintPageEventHandler中,如下所示:

pDoc.PrintPage += new PrintPageEventHandler (this.PrintPicture);

尝试执行上述操作,如果不起作用,请在PrintPicture()方法中放置一个实际的断点来调试它。

qojgxg4l

qojgxg4l2#

问题是我没有设置DPI,我在代码中添加了这一行。
bmp.SetResolution(203, 203);
这是新方法:

private void PrintPicture(object sender, PrintPageEventArgs e)
        {
            Bitmap bmp = new Bitmap(pictureBox1.Width, pictureBox1.Height);
            bmp.SetResolution(203, 203);
            pictureBox1.DrawToBitmap(bmp, new Rectangle(0, 0, pictureBox1.Width, pictureBox1.Height));
            e.Graphics.DrawImage(bmp, 38, 10);
            bmp.Dispose();
        }

相关问题