将Chart保存为图片或者XPS文件,输出图片无数据信息 | 您所在的位置:网站首页 › 雅马哈V573HDMI输出图像问题 › 将Chart保存为图片或者XPS文件,输出图片无数据信息 |
问题; 将chart(PieSeries)保存为图片,或者输出到xps文件里面,饼形图不能显示出来,但是同样的代码,在WPF程序窗口中却能正确显示。 代码如下; Chart chartView = new Chart(); chartView.BeginInit(); chartView.Width = 300; chartView.Height = 250; chartView.Background = Brushes.Azure; PieSeries pieSeries = new PieSeries(); Binding KeyBind = new Binding("Key"); Binding ValueBind = new Binding("Value"); pieSeries.Title = "Test"; pieSeries.IndependentValueBinding = KeyBind; pieSeries.DependentValueBinding = ValueBind; KeyValuePair[] itemsSource = new KeyValuePair[] { new KeyValuePair("Apple", 100.0), new KeyValuePair("Orange", 200.0) }; pieSeries.ItemsSource = itemsSource ; chartView.Series.Add(pieSeries); chartView.EndInit(); RenderTargetBitmap renderTarget = new RenderTargetBitmap((int)300, (int)250, 96, 96, System.Windows.Media.PixelFormats.Pbgra32); Size tmpSize = new Size(m_PrintWidth, m_PrintHeight); chartView.Measure(tmpSize); chartView.Arrange(new Rect(tmpSize)); chartView.UpdateLayout(); renderTarget.Render(chartView); PngBitmapEncoder encoder = new PngBitmapEncoder(); encoder.Frames.Add(BitmapFrame.Create(renderTarget)); using (FileStream pageOutStream = new FileStream(@"c:\pie.png", FileMode.Create, FileAccess.Write)) { encoder.Save(pageOutStream); pageOutStream.Close(); } 请高人指点,任何建议都可以。谢谢!
|
CopyRight 2018-2019 实验室设备网 版权所有 |