将4个相似图像打印到一个文档c#

时间:2013-03-18 15:09:44

标签: c# graphics printing printdocument

这次我有一个希望简单的问题:我想要打印循环的项目并以每页2x2打印。我正在使用循环和一个Rectangle数组。但这可能会改变。打印到图形的某个部分最简单的方法是什么? 上下文是我在打印事件中使用提供的e.Graphics对象进行的 - 当前代码如下:

public void BeginPrintEvent(object sender, PrintPageEventArgs e)
{
    SizeF TestSize;
    string text = "";
    Image labelImage = new Bitmap((int)e.Graphics.DpiX, (int)e.Graphics.DpiY, e.Graphics);
    Graphics g = e.Graphics;
    Rectangle[] rect = new[] { new Rectangle(0,   0,   419, 581),
                               new Rectangle(419, 0,   419, 581),
                               new Rectangle(0,   581, 419, 581),
                               new Rectangle(419, 581, 419, 581) };

    try
    {
        for (int lblNum = 0; lblNum < 4); lblNum++)
        {
            g.DrawString( // lots of stuffs
            e.Graphics.DrawImage(labelImage, rect[lblNum]);
        }
    }
    catch (Exception exc)
    {
        // Report to user
    }
}

我似乎无法使成像正确,尺寸往往非常小,因此大部分图像都会丢失。

1 个答案:

答案 0 :(得分:0)

将其作为:

 Image labelImage = new Bitmap(419 * ((int)e.Graphics.DpiX / 100), 581 * ((int)e.Graphics.DpiX / 100), e.Graphics);

通过Sinatra注意到帖子的干杯:)