jocelynbanctel / flot

Automatically exported from code.google.com/p/flot
MIT License
0 stars 0 forks source link

Fix plot printing support #222

Open GoogleCodeExporter opened 8 years ago

GoogleCodeExporter commented 8 years ago
I can not print charts with Opera 10.0
For example http://people.iola.dk/olau/flot/examples/turning-series.html
is printable and you can obtain a perfect preview in IE7 but not in Opera.
Is it a bug or there are some option to set up in Opera?

Original issue reported on code.google.com by basse...@nesasrl.it on 15 Sep 2009 at 4:22

GoogleCodeExporter commented 8 years ago
It might be a bug in Opera. It would be helpful if you could investigate it 
further.
 Printing is still hit or miss I'm afraid.

Original comment by olau%iol...@gtempaccount.com on 21 Oct 2009 at 5:05

GoogleCodeExporter commented 8 years ago
I'm seeing the same thing on Opera 10 vs Firefox 3.5 on Linux

Original comment by hexm...@gmail.com on 29 Oct 2009 at 4:36

GoogleCodeExporter commented 8 years ago
All the examples from [1] work with Opera 10.10 (self compiled), could you 
recheck 
the issue?

[1] http://people.iola.dk/olau/flot/examples/

Original comment by HenrySev...@gmail.com on 12 Jan 2010 at 6:19

GoogleCodeExporter commented 8 years ago
I'm running Opera 10.10 on OS X and I cannot see a single example given in 
comment 
[3].

Original comment by kylego...@gmail.com on 11 Feb 2010 at 6:11

GoogleCodeExporter commented 8 years ago
I've been looking into this problem, and think I've figured out the cause.  I 
noticed
in my testing that when I printed to a PDF, then loaded that PDF I would see 
the plot
for a moment, then it was covered up by a white block.  I suspected that this 
was
being caused by an extra page element that was covering up the plot.  So I used
Chrome's element inspector to disect the page.  Sure enough, the plot has two 
canvas
elements after the page-load.  For whatever reason, when the chart is printed, 
this
second Canvas overlays the plot, and obscures you from printing anything useful.

I'm looking into how to suppress the second canvas so that printing works.  
Might be
possible with some creative style-sheet work.

I've attached an example of the PDF which shows the two canvas elements.

Original comment by dmcoo...@gmail.com on 4 Jun 2010 at 7:32

Attachments:

GoogleCodeExporter commented 8 years ago
I've found a work-around to this problem.  Since Opera is unable to print 
canvas elements, the fix is to convert your canvas to an image before printing. 
 Since its possible to convert a canvas element to an image (PNG, JPG, etc.) I 
added a printable version of my page which converts all canvas elements to 
images prior to printing.  One thing that makes this a little tricker is that 
Flot renders portions of each chart (axis, legends, etc.) as HTML rather than 
drawing the entire thing on the canvas.  I found a plugin which forces these 
elements to be rendered as part of the canvas.

The entire write-up for how to do this can be found here, along with some 
examples of the implemented solution.

http://lessaworld.com/projects/flotCanvasText/

Original comment by dmcoo...@gmail.com on 11 Mar 2011 at 7:22

GoogleCodeExporter commented 8 years ago
You never got the CSS trick to work? I think it makes sense to add a CSS rule 
to hide the overlay if possible, but never got around to figuring out how.

Original comment by olau%iol...@gtempaccount.com on 11 Mar 2011 at 8:47

GoogleCodeExporter commented 8 years ago
This problem affected me in IE8 (using excanvas.js in place of the regular 
canvas element). The chart was being obscured by a div or some other block over 
the chart.

The solution was in commenting out the following lines in excanvas.js:

//var overlayEl = el.cloneNode(false);
// Use a non transparent background.
//overlayEl.style.backgroundColor = 'red';
//overlayEl.style.filter = 'alpha(opacity=0)';
//canvasElement.appendChild(overlayEl);

Apparently this issue was affecting jqplot users as well, and that's what 
finally led me to that solution. More here:

https://bitbucket.org/cleonello/jqplot/issue/268/blank-chart-when-print-ie

Original comment by sutt...@gmail.com on 28 Nov 2011 at 5:12

GoogleCodeExporter commented 8 years ago
I'm turning this into the master ticket for printing issues on all browsers, 
since they generally stem from the same set of problems.

From experience, this is not an easy task.  No browser has proper support for 
printing; they're all significantly broken in one way or another.

Original comment by dnsch...@gmail.com on 7 May 2012 at 11:26

GoogleCodeExporter commented 8 years ago
Issue 239 has been merged into this issue.

Original comment by dnsch...@gmail.com on 7 May 2012 at 11:27

GoogleCodeExporter commented 8 years ago
Issue 310 has been merged into this issue.

Original comment by dnsch...@gmail.com on 7 May 2012 at 11:27

GoogleCodeExporter commented 8 years ago
Issue 565 has been merged into this issue.

Original comment by dnsch...@gmail.com on 7 May 2012 at 11:28