0

画像ファイルをプリンターで A4 サイズの用紙に印刷するプログラムを作成しようとしています。(画像はA4に縮尺しています)これは現在私が使用しているコードです。

Function.cs        

    Image tmp;
    public void PrintImage(string FileName)
    {
        tmp = Image.FromFile(FileName);
        PrintDocument printDoc = new PrintDocument();
        printDoc.DocumentName = "My Print Document";
        printDoc.PrintPage += new PrintPageEventHandler(OnPrintPage);
        // Send print message
        Console.WriteLine("Sending Print Message...");
        try
        {
            printDoc.Print();
        }
        catch(Exception)
        {
            Console.WriteLine("Error: No Printer Installed");
        }
        //
        // Event Handler
        //
    }
    private void OnPrintPage(object sender, PrintPageEventArgs ppea)
    {
    Console.WriteLine("Printing...");
    Graphics g = ppea.Graphics;
    g.DrawImage(tmp,0,0);
    }



Main.cs

    string ReceiptFilePath = "C:\\Receipt.jpg"; // The Image I want to print.

    private void button1_Click(object sender, EventArgs e)
    {
        functions.PrintImage(ReceiptFilePath);
    }

上記のコードを使用すると、印刷できますが、A4 サイズではなく、ほぼ 400% 拡大されています。コードをどのように変更すればよいですか?

4

1 に答える 1