We use cookies to give you the best experience on our website. If you continue to browse, then you agree to our privacy policy and cookie policy. (Last updated on: November 16, 2018).
Unfortunately, activation email could not send to your email. Please try again.
Syncfusion Feedback

Image Resolution

Thread ID:





15621 Jun 23,2004 02:21 PM UTC Jun 24,2004 12:23 PM UTC WinForms 2
Tags: Chart
kevin musters
Asked On June 23, 2004 02:21 PM UTC

When I send the Chart to an image, how can I control the resolution that the picture is saved as? I am currently creating the Chart control within an ActiveReports file. To display the chart correctly, I must send the chart to an image, then load that image into the Picture1 control within the ActiveReport. What is happening now is that the chart displays great within the Report, but when sent to a file or the printer (via the reporting tool) the reduction of pixels is significant. I suspect this is because I am not sending the chart image with a large enough resolution. ChartSeries Series = cc.Model.NewSeries("Title", ChartSeriesType.Pie); // Load Data // Specify Chart Properties Size sizePix = new Size((int)(this.Picture1.Size.Width*96), this.Picture1.Size.Height*96)); Image img = new Bitmap(sizePix.Width, sizePix.Height); cc.Draw(img); this.Picture1.Image = img; Have you dealt with this behaviour at all? I know it isn''t directly related because I am using ActiveReports, but if you do have any information I would greatly appreciate it. *note - I already talked to ActiveReports and they mentioned it is likely an image resolution specification within the Chart control. Thanks, Kevin

kevin musters
Replied On June 23, 2004 02:24 PM UTC

Just thought I would mention, that I am using the method described in the example: http://www.syncfusion.com/support/user/Uploads/EssentialChartActiveReports_2860.zip specified in the forum link: http://www.syncfusion.com/Support/forums/message.aspx?MessageID=15523 Thanks,

Davis Jebaraj [Syncfusion]
Replied On June 24, 2004 12:23 PM UTC

Hi Kevin, The resolution of the image printed by the printer is lower because the sizing of the image is intended for on screen display (We used a factor of 96 for the screen''s PPI Pixels Per Inch). You could change the 96 to be 300 or 600 to reflect the Dots Per Inch DPI of the printer. This will change the size of the image on the screen. We can set the Picture control property''s SizeMode property to accomodate this change. Also, the font sizes for the Title and axes will have to be increased for higher resolutions. Please see the code below: private void Detail_Format(object sender, System.EventArgs eArgs) { Syncfusion.Windows.Forms.Chart.ChartControl cc = new Syncfusion.Windows.Forms.Chart.ChartControl(); cc.Model.ColorModel.Palette = ChartColorPalette.Pastel; cc.PrimaryXAxis.Title = "Resource Labor Costs"; cc.PrimaryYAxis.Title = "Hours Worked"; ChartSeries Series = cc.Model.NewSeries ( "Resource Costs ", ChartSeriesType.Column ); for ( int j = 0; j < 20; j++ ) { Series.Points.Add ( Convert.ToDouble ( j ), Convert.ToDouble ( j + 1 ) ); } Series.Style.DisplayText = false; Series.Style.DisplayShadow = true; Series.Style.Symbol.Shape = ChartSymbolShape.Square; Series.Style.Symbol.Size = new Size ( 15, 15 ); Series.Style.Symbol.Color = Color.Blue; Series.Style.Border.Color = Color.FromArgb(100, Color.BlueViolet); Series.Style.Border.DashStyle = DashStyle.DashDotDot; cc.Series.Add(Series); cc.LegendPosition = ChartLegendPosition.Top; cc.PrimaryXAxis.DrawGrid = false; cc.PrimaryYAxis.DrawGrid = false; cc.Legend.Visible = false; //Higher Resolution Image Begin this.arPictureControl.SizeMode = SizeModes.Stretch; cc.Font = new Font(cc.Font.Name , 72); cc.PrimaryXAxis.Font = new Font(cc.PrimaryXAxis.Font.Name , 48); cc.PrimaryYAxis.Font = new Font(cc.PrimaryYAxis.Font.Name , 48); // Convert ActiveReports'' Inches System.Drawing.Size sizePix = new System.Drawing.Size( (int)(this.arPictureControl.Size.Width*600), (int)(this.arPictureControl.Size.Height*600)); // Higher Resolution Image End // Lower Resolution Image Begin /*System.Drawing.Size sizePix = new System.Drawing.Size( (int)(this.arPictureControl.Size.Width*96), (int)(this.arPictureControl.Size.Height*96)); */ // Lower Resolution Image End Image img = new Bitmap(sizePix.Width,sizePix.Height); cc.Draw(img); this.arPictureControl.Image = img; } Regards, Davis


This post will be permanently deleted. Are you sure you want to continue?

Sorry, An error occured while processing your request. Please try again later.

Please sign in to access our forum

This page will automatically be redirected to the sign-in page in 10 seconds.

Warning Icon You are using an outdated version of Internet Explorer that may not display all features of this and other websites. Upgrade to Internet Explorer 8 or newer for a better experience.Close Icon