我尝试使用 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;
}
有帮助吗?

解决方案

来自 单声道文档, , 我想是的:

Managed.windows.forms(又名System.Windows.Forms):完整且跨平台,系统。基于绘制的Winforms实现。

如果您运行以下命令,它也很有用 单声道迁移分析仪 第一的。

其他提示

根据

System.Drawing 现已完成,除了作为 Windows.Forms 的底层渲染引擎外,它还经过了使用严重依赖它的第三方控件的测试。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top