Asp.net mvc 3 MVC3 System.Web.UI.DataVisualization.Charting字体不会呈现,但样式会呈现

Asp.net mvc 3 MVC3 System.Web.UI.DataVisualization.Charting字体不会呈现,但样式会呈现,asp.net-mvc-3,charts,Asp.net Mvc 3,Charts,我正在与.NET4.0图表控件进行斗争,目前仍在思考为什么字体拒绝呈现。它显示为几乎无法读取的重叠字符。我确信我的系统中安装了该字体 奇怪的是,字体stlye会随着设置而改变。![截屏][1] 我还很难发现Interval属性,它在将Interval设置为1之前删除计数为9以上的标签。interval属性的行为也不同于System.Web.Helpers.Chart()控件,后者似乎忽略了该设置。瘸子 谢谢你的帮助 剃刀代码 <img src="@Url.Action("ChartSamp

我正在与.NET4.0图表控件进行斗争,目前仍在思考为什么字体拒绝呈现。它显示为几乎无法读取的重叠字符。我确信我的系统中安装了该字体

奇怪的是,字体stlye会随着设置而改变。![截屏][1]

我还很难发现Interval属性,它在将Interval设置为1之前删除计数为9以上的标签。interval属性的行为也不同于System.Web.Helpers.Chart()控件,后者似乎忽略了该设置。瘸子

谢谢你的帮助

剃刀代码

<img src="@Url.Action("ChartSample")" alt="image" />//In Razer
//在剃须刀中
控制器代码

 public ActionResult ChartSample()
    {
        var chart = new System.Web.UI.DataVisualization.Charting.Chart();
        chart.BackColor = Color.Transparent;
        chart.Width = Unit.Pixel(250);
        chart.Height = Unit.Pixel(2500);

        var series = new Series();
        series.ChartArea = "ca1";

        series.ChartType = SeriesChartType.Bar;
        //series.Font = new Font("Verdana", 8.25f, FontStyle.Regular);

        var myRandom = new Random();

        for (int i = 0; i < 100; i++)
        {
            var dp = new DataPoint();
            dp.AxisLabel = String.Format("{0}-{1}", i, Guid.NewGuid().ToString().Substring(0, 4));
            dp.YValues = new double[] { myRandom.Next(5, 100) };
            series.Points.Add(dp);
        }


        chart.Series.Add(series);

        var area = new ChartArea("ca1");
        area.Area3DStyle.Enable3D = false;
        area.AxisX.Interval = 1;
        //area.BackColor = Color.Transparent;
        //var labelStyle = new LabelStyle();
        //labelStyle.Enabled = true;
        //labelStyle.Font = new Font("Arial", 3f);
        area.AxisX.LabelStyle.Font = new Font("Verdana", 8.25f, FontStyle.Underline);//Why does it recognize the style but not the font!!!???

        chart.ChartAreas.Add(area);

        using (var ms = new MemoryStream())
        {
            chart.SaveImage(ms, ChartImageFormat.Png);
            ms.Seek(0, SeekOrigin.Begin);

            return File(ms.ToArray(), "image/png", "mychart.png");
        }
    }
public ActionResult ChartSample()
{
var chart=new System.Web.UI.DataVisualization.Charting.chart();
chart.BackColor=Color.Transparent;
图表宽度=单位像素(250);
图表高度=单位像素(2500);
var系列=新系列();
series.ChartArea=“ca1”;
series.ChartType=serieChartType.Bar;
//series.Font=新字体(“Verdana”,8.25f,FontStyle.Regular);
var myRandom=new Random();
对于(int i=0;i<100;i++)
{
var dp=新数据点();
dp.AxisLabel=String.Format(“{0}-{1}”,i,Guid.NewGuid().ToString().Substring(0,4));
dp.YValues=新的双精度[]{myRandom.Next(5100)};
系列。点。添加(dp);
}
图表.系列.添加(系列);
var区域=新图表区域(“ca1”);
area.Area3DStyle.Enable3D=false;
area.axix.Interval=1;
//area.BackColor=Color.Transparent;
//var labelStyle=新labelStyle();
//labelStyle.Enabled=true;
//labelStyle.Font=新字体(“Arial”,3f);
area.AxisX.LabelStyle.Font=新字体(“Verdana”,8.25f,FontStyle.Underline);//为什么它能识别样式而不能识别字体!!!???
chart.ChartAreas.Add(面积);
使用(var ms=new MemoryStream())
{
SaveImage(ms,chartmageformat.Png);
Seek女士(0,SeekOrigin.Begin);
返回文件(ms.ToArray(),“image/png”,“mychart.png”);
}
}

只需为图表添加背景色,如下所示:

 chart.BackColor = Color.FromArgb(255, 255, 255);

我还认为低分辨率也是一个可能的罪魁祸首。