如何将文件夹的所有图像发送到打印机

本文关键字:图像 打印机 文件夹 | 更新日期: 2023-09-27 17:51:05

我需要一次将文件夹中的所有图像发送到打印机。这是可能的,在windows资源管理器中,我们选择所有的图像文件,右键单击并选择打印,将所有选中的图像发送到打印对话框中,我们可以选择打印机设置并继续打印。我如何做到这一点,从c# windows窗体应用程序?

编辑:我想出了这个,但它只打印最后一页。我该如何修改它?

private void printAllCardSheetBtn_Click(对象发送者,EventArgs e){

        PrintDocument pdoc = new PrintDocument();
        pdoc.DocumentName = "cardsheets";
        PrintDialog pd = new PrintDialog();
        if(pd.ShowDialog() == DialogResult.OK)
        {
            PrinterSettings ps = pd.PrinterSettings;
            pdoc.PrinterSettings = ps;

            pdoc.PrintPage += pdoc_PrintPage;
            pdoc.Print();
        }

    }
    void pdoc_PrintPage(object sender, PrintPageEventArgs e)
    {
         Graphics g = e.Graphics;
         string[] sheetpaths = Directory.GetFiles(_sheetDirectory);
         Point point = new Point(0, 0);
         foreach (string s in sheetpaths)
         {
             g.DrawImage(new Bitmap(s), point);
         }

    }

如何将文件夹的所有图像发送到打印机

可以使用PrintDocument

只要从文件夹中获取所有图像,将它们加载到Bitmap并通过For循环使用PrintDocument逐一打印。

顺便说一句,使用PrintPage事件和PrintPageEventArgs,你可以在文档中绘制图像,然后用Graphics打印。

欢呼

编辑:检查这个示例->示例