这次我有一个希望简单的问题:我想要打印循环的项目并以每页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
}
}
我似乎无法使成像正确,尺寸往往非常小,因此大部分图像都会丢失。
答案 0 :(得分:0)
将其作为:
Image labelImage = new Bitmap(419 * ((int)e.Graphics.DpiX / 100), 581 * ((int)e.Graphics.DpiX / 100), e.Graphics);
通过Sinatra注意到帖子的干杯:)