我正在尝试使用Mono加载位图并在Linux上打印,但我得到了一个例外。 Mono是否支持在Linux上打印?代码/例外如下:
编辑:不再获得例外,但我仍然很好奇有什么样的支持。留下后代或其他代码。
private void btnPrintTest_Click(object sender, EventArgs e)
{
_printDocTest.DefaultPageSettings.Landscape = true;
_printDocTest.DefaultPageSettings.Margins = new Margins(50,50,50,50);
_printDocTest.Print();
}
void _printDocTest_PrintPage(object sender, PrintPageEventArgs e)
{
var bmp = new Bitmap("test.bmp");
// Determine center of graph
var xCenter = e.MarginBounds.X + (e.MarginBounds.Width - bmp.Width) / 2;
var yCenter = e.MarginBounds.Y + (e.MarginBounds.Height - bmp.Height) / 2;
e.Graphics.DrawImage(bmp, xCenter, yCenter);
e.HasMorePages = false;
}
答案 0 :(得分:7)
从Mono docs开始,我想是的:
Managed.Windows.Forms(又名 System.Windows.Forms):一个完整的和 跨平台,基于System.Drawing Winforms实现。
如果您先运行Mono Migration Analyzer,它也很有用。
答案 1 :(得分:5)
System.Drawing现已完成,除了作为Windows.Forms的底层渲染引擎之外,它还经过了严格依赖它的第三方控件的测试。