| View previous topic :: View next topic |
| Author |
Message |
Mike
Joined: 05 May 2008 Posts: 253 Location: Christchurch, New Zealand
|
Posted: Thu Jun 10, 2010 7:35 pm Post subject: Multiple Graphic commands: only one prints properly |
|
|
I have a figure which contains three Graphic commands to annotate the plot. These each contain a group of simple objects pasted in from a drawing made in Keynote (simple lines and circles).
When all three are visible, only one prints clearly in vector quality. The other two above it are rendered in a low-res pixellated form. This is even though two of the graphic objects are identical, just displayed in different locations.
The problem does not seem to be with the individual graphics objects. Any one of the three commands will print properly if it is the only one visible. It is only when there are multiple ones displayed that the artefact occurs.
If it helps:
(1) printing to PDF and then viewing that PDF on-screen in Preview.app seems OK visually (but printing that PDF still produces the artefact).
(2) printing to a postscript file and then opening that file in Preview.app does show the pixelation artefact visually on-screen (as well as when printed).
I thought at first that this may be due to alpha transparency issues which I've seen cause problems with printed output before. But the problem persists even when the objects have an explicit colour fill.
I need to produce a vector format file for publication, so this is causing a headache. Any suggestions? |
|
| Back to top |
|
 |
David Site Admin
Joined: 25 Nov 2006 Posts: 1541 Location: Chapel Hill, NC
|
Posted: Thu Jun 10, 2010 10:56 pm Post subject: |
|
|
Can you send me the file?
Transparency is a pain wh en printing, and what I do is to automatically strip out transparency (assume white background to adjust colors) when printing. But I can't do that when you paste in a pdf (if it is possible I would like to know). But as you pointed out this should also fail for at least one of the cases where you show only one of the figures (since hidden means not included in the output).
And you are saying that if I take a figure, print to ps and open in Preview I should see the issue, right.
David |
|
| Back to top |
|
 |
Mike
Joined: 05 May 2008 Posts: 253 Location: Christchurch, New Zealand
|
Posted: Thu Jun 10, 2010 11:31 pm Post subject: |
|
|
| David wrote: | | Can you send me the file? | Have just sent it. Let me know if it doesn't get through.
| Quote: | | And you are saying that if I take a figure, print to ps and open in Preview I should see the issue, right. | Indeed, it can't be seen within DataGraph or in a PDF, but rendered postscript reveals the same problem as seen on printing. |
|
| Back to top |
|
 |
Mike
Joined: 05 May 2008 Posts: 253 Location: Christchurch, New Zealand
|
Posted: Tue Jun 15, 2010 12:29 am Post subject: |
|
|
Just FYI: the graphics were drawn in Keynote.app, and print perfectly from there. But when I pasted them back into a blank Keynote document from DataGraph, the same pixellated printing occurred in that app too.
I then pasted the graphic from DataGraph into a new document in GraphicConverter (File> New image using clipboard). It gave a choice of four data formats in the clipboard (PICT, png, TIFF, and PDF). Choosing PDF and selecting a dpi to render at gave a nice quality image. The bitmap formats, meanwhile, were pretty crappy lo-res.
So I wonder when drawing objects are pasted in from outside DataGraph, are multiple versions of the data somehow retained? i.e. the PDF data is used in most situations, but sometimes the associated bitmap data from the clipboard still bubbles to the top? |
|
| Back to top |
|
 |
Mike
Joined: 05 May 2008 Posts: 253 Location: Christchurch, New Zealand
|
Posted: Tue Jun 15, 2010 12:44 am Post subject: |
|
|
Instead of using the clipboard, I saved the original drawings as PDF files, cleared the graphics in DataGraph, and then dragged them in from the PDF files. Same printing problem occurs whether the graphics arrive from the clipboard or via a file.
So the multiple formats on the clipboard can't be to blame. |
|
| Back to top |
|
 |
Mike
Joined: 05 May 2008 Posts: 253 Location: Christchurch, New Zealand
|
Posted: Thu Jul 12, 2012 2:34 am Post subject: |
|
|
| Just ran into this problem again: annotating a graph with simple line drawings pasted in from Keynote.app: the first Graphic command prints perfectly but any others are printed as low-quality bitmaps. Any ideas what this might be due to? |
|
| Back to top |
|
 |
David Site Admin
Joined: 25 Nov 2006 Posts: 1541 Location: Chapel Hill, NC
|
Posted: Thu Jul 12, 2012 7:12 am Post subject: |
|
|
My guess is that the KeyNote graphic has a semi-transparent element in it. But if you send me the file I can take a look at it.
David |
|
| Back to top |
|
 |
Mike
Joined: 05 May 2008 Posts: 253 Location: Christchurch, New Zealand
|
Posted: Thu Jul 12, 2012 7:55 pm Post subject: |
|
|
I'm using simple figures to represent head shapes, made up of a few ovals, a triangle, and some arrows. Some of those component shapes had no "fill" attribute, so were internally transparent. I then set each object to have a white fill, but the same problem occurs. The problem might be that even when each explicitly drawn object has no transparent element, the graphic as a whole has a transparent region surrounding it when copied.
Anyway, it can't be a transparency issue alone, as the problem does not occur if only one Graphic command is used. i.e. if I have a figure copied from Keynote in one Graphic command, it prints/renders to EPS fine. If I put exactly the same figure into a second or subsequent Graphic, then the problem appears.
So if transparency is the root of the problem, there must also be something else happening which only appears when multiple Graphics are used. I'll send a file along. |
|
| Back to top |
|
 |
David Site Admin
Joined: 25 Nov 2006 Posts: 1541 Location: Chapel Hill, NC
|
Posted: Thu Jul 12, 2012 10:19 pm Post subject: |
|
|
I'm definitely interested in the DataGraph file. EPS has a limited set of drawing primitives. PDF has more, but not all of what Quartz can render.
Transparency is one thing that DG can specify but EPS can not draw. There are other things that Quartz can do but I don't give direct access to such as shadows and reflections. Maybe KeyNote is using that. But then it shouldn't matter if you have one or more drawing elements.
I use a system call to transcribe the graphic into PDF/EPS. I convert elements that EPS doesn't support automatically, but hand any PDF graphic that has been inserted into a Graphic command directly over. I know that the conversion routine will take the region that has a transparency, find a rectangular box that fits around that region and draw that region using a bitmap. Unfortunately that bitmap has a fairly low resolution. I don't know if it computes multiple rectangles to cover the transparency or just a single big one.
But if it is something else, I most definitely want to see if I can fix that. I might even be able to peek into the PDF stream.
I'm also interested in seeing if the new Freehand drawing command can handle the graphic that you are currently doing in KeyNote.
David |
|
| Back to top |
|
 |
|