【问题标题】:Can any one recommend a vector graphics engine for reporting purposes?任何人都可以推荐用于报告目的的矢量图形引擎吗?
【发布时间】:2009-02-26 22:26:51
【问题描述】:

需要开发一个 .NET 解决方案,以图形方式表示部分座位,在体育场布局视图中绘制,并作为报告输出......座位将有不同的颜色来显示销售状态......

【问题讨论】:

    标签: c# .net vector reporting


    【解决方案1】:

    确实,乍一看可能很吓人,但 .NET Framework 中的2D drawing 实际上很容易使用。

    这是一个小例子,它绘制了几个带有反锯齿边距的彩色圆圈:

    using System.Drawing;
    
    ...
    
    Font font = new Font(FontFamily.GenericMonospace, 8);
    Image reportImage = new Bitmap(270, 45);
    using (Graphics graphics = Graphics.FromImage(reportImage))
    {
        graphics.SmoothingMode = System.Drawing.Drawing2D.SmoothingMode.AntiAlias;
    
        graphics.FillRectangle(Brushes.White, 
            new Rectangle(new Point(0, 0), reportImage.Size));
    
        for (int i = 0; i != 6; i++)
        {
            Rectangle r = new Rectangle(20 + i * 40, 15, 25, 15);
            graphics.FillEllipse(
                i % 2 == 0 ? Brushes.DarkOrange : Brushes.DarkKhaki, r);
            graphics.DrawEllipse(Pens.Black, r);
    
            r.Offset(2, 0);
    
            graphics.DrawString(i.ToString(), font, Brushes.Black, r);
        }
    }
    reportImage.Save("C:\\test.bmp");
    

    【讨论】:

      【解决方案2】:

      看起来很简单,普通的旧 GDI+ 就可以解决问题。

      您当然必须设置一个 GUI,其中每个体育场的座位计划都可以 通过点击“映射”。

      【讨论】:

        【解决方案3】:

        Cairo 看起来是个很棒的工具。自己还没有测试过……还没有。不过看起来很称职,支持一堆输出格式

        【讨论】:

          猜你喜欢
          • 2012-11-10
          • 1970-01-01
          • 1970-01-01
          • 2015-06-03
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2012-01-06
          • 2011-04-25
          相关资源
          最近更新 更多