c#调用默认打印机打印跟自己选择打印机打印的不一样,为什么?自己选的打印机打印出来是对的

c#调用默认打印机打印和自己选择打印机打印的不一样,为什么?自己选的打印机打印出来是对的。
    ​    ​    ​    codesoft打印条码:


​               //获得所有打印机名称
               Strings vars = lbl.PrinterSystem().Printers(enumKindOfPrinters.lppxAllPrinters);
               //获得需要的打印机名称    打印机固定可直接给名称值
               // string printName = vars.Item(2);
               PrintDocument prtdoc = new PrintDocument();
               string strDefaultPrinter = prtdoc.PrinterSettings.PrinterName;//获取默认的打印机名 ​    ​    ​  

  ​c#调用默认打印机打印跟自己选择打印机打印的不一样,为什么?自己选的打印机打印出来是对的

下面是自己选的打印机打印出来的。

c#调用默认打印机打印跟自己选择打印机打印的不一样,为什么?自己选的打印机打印出来是对的
------解决思路----------------------
要看你的打印代码,页面设置等等
------解决思路----------------------
你先把自己选的打印机设置成默认打印机,打印出来试试

再手动选择之前的默认打印机打印,打印

看看到底什么现象

怀疑你调用PrinterDialog.ShowDialog()之前,没有把当前的document传给控件,这样你从里面再取出document的时候,都变成默认设置了,你代码设置的都白设置了