簡體   English   中英

如何設置頁面大小

[英]How to set the page size

我正在打印文檔並嘗試更改紙張大小,但它不起作用。

當我添加紙張尺寸時,它會以默認尺寸打印文檔。 我的紙張尺寸不起作用。

namespace WC_manager
{
    public partial class tagprint : Form
    {
        Zen.Barcode.Code39BarcodeDraw objCode = Zen.Barcode.BarcodeDrawFactory.Code39WithChecksum;
        int tagNo = 0;
        PrinterSettings ps = new PrinterSettings();
        public tagprint()
        {
            InitializeComponent();
        }

        private void label1_Click(object sender, EventArgs e)
        {    
        }

        private void printBtn_Click(object sender, EventArgs e)
        {
            if(tagNo != 0)
            {                    
                pictureBox1.Image = objCode.Draw(Convert.ToString(tagNo), 100);
                var doc = new PrintDocument();

                doc.PrintPage += new PrintPageEventHandler(ProvideContent);
                doc.PrinterSettings.PrinterName = "Adobe PDF";
                doc.DefaultPageSettings.PaperSize = new PaperSize("Custom",10,10);

                doc.Print();
            }
            else
            {
                MessageBox.Show("Enter Valid Tag no");
            }
        }

        private void tagTxtFld_TextChanged(object sender, EventArgs e)
        {
            tagNo = Convert.ToInt32(tagTxtFld.Text);
        }

        public void ProvideContent(object sender, PrintPageEventArgs e)
        {
            Graphics graphics = e.Graphics;
            Font font = new Font("Courier New", 10);
            float fontHeight = font.GetHeight();

            graphics.DrawImage(objCode.Draw(Convert.ToString(tagNo), 20), 0, 2, 30, 30);
        }
    }
}

您沒有指定合理的紙張尺寸尺寸:

doc.DefaultPageSettings.PaperSize = new PaperSize("Custom",10,10);

第二個和第三個參數分別是紙張的寬度和高度。 但重要的是,這些值的單位始終是百分之一英寸

因此,您要求打印機驅動程序打印只有 1/10 英寸寬和高的頁面。

當我使用已安裝的 PDF 驅動程序嘗試此操作時,它會忽略提供的尺寸,並打印到標准 Letter 尺寸(即 8.5 x 11 英寸)的頁面。

如果這是您真正的意思,那么您需要使用可以接受該尺寸紙張的打印機。 您可能會發現這樣做很困難。

但是,您更有可能打算使用其他尺寸。 例如,如果您嘗試在 10 英寸見方的頁面上打印,則需要為每個這些值傳遞1000 或者,如果您嘗試在 10 厘米見方的頁面上打印,則需要為每個值傳遞394 (並接受實際上僅比 10 厘米多一點的事實)。

底線:傳遞紙張寬度和高度的有效值,它將起作用。 對於這些參數中的任何一個,百分之十英寸都不是有效值。

我之所以遇到這個問題,是因為我采用了 pdf 格式的 output,這就是為什么它設置默認頁面大小的原因。 更改打印機名稱時。 我得到了 output。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM