Opened 14 years ago
Last modified 13 years ago
#3250 new bug
Vector layers printed/exported as rasters, even when "Print as Raster" is unchecked
Reported by: | Alister | Owned by: | nobody |
---|---|---|---|
Priority: | major: does not work as expected | Milestone: | Version 1.7.0 |
Component: | Printing | Version: | Trunk |
Keywords: | Printing, Exporting, Composer, PDF | Cc: | |
Must Fix for Release: | No | Platform: | Windows |
Platform Version: | Awaiting user input: | no |
Description
Print or export to PDF from the composer: Any vector layers will be rasterized in the output.
Perhaps the current behaviour is a workaround for the bug in QT (or whatever it was) that prevented layers from being clipped to the visible region... Is it?
Attachments (2)
Change History (14)
comment:1 by , 14 years ago
comment:2 by , 14 years ago
Cannot reproduce this. Exporting a line layer to PDF and opening in inkspace showed the lines to be vector. Note that point marker symbols are sometimes printed as raster (new symbology svn markers should be vector though)
follow-up: 4 comment:3 by , 14 years ago
It is with line and polygon layers. I'm getting the same results on two different computers, with 1.5, 1.6 and trunk, and with new and old symbology. Both machines are running Windows. I guess I'd better find a machine to do a clean install on... maybe that will show up a setting that affects it.
comment:4 by , 14 years ago
Also an issue here. Running 1.6 on two computers (W7 and XP). Same result with QG 1.5. It workes just fine in 1.4, however.
comment:5 by , 13 years ago
Priority: | minor: annoyance → major: does not work as expected |
---|
I have done further testing on this issue under QGIS 1.6 and QGIS Trunk r15130. I can confirm that this bug happens on windows and not linux. I tried both new and old symbology, but have not yet tried only point, line or polygon one at a time yet.
Here's a link to an easy to use simple dataset and example pdfs made on windows and linux. http://blog.wildintellect.com/files/qgisbug/
I think this issue would be more minor if the SVG export was better, though I think fixing he pdf export might be more realistic. I am changing the Priority, for several Windows users I know this is a major deal breaker as it really impedes their ability to make quality maps without pdf as vector or svg that clips to extent and preserves scale.
follow-up: 11 comment:6 by , 13 years ago
without pdf as vector
Have you tried printing to a virtual pdf "printer"? That produces vector output for me now...
svg that clips to extent and preserves scale
Scale should be preserved now - see #3224
Is clip-to-extent necessary simply to minimise file size? Personally I'm quite happy now with exporting to svg and then printing the svg to PDF. But of course it would be much better not having to do a two-step process...
comment:7 by , 13 years ago
Have you tried printing to a virtual pdf "printer"? That produces vector output for me now...
Sorry, no, I'm wrong. It doesn't anymore - printing rasterizes everything. So my original description for this bug is accurate again.
have not yet tried only point, line or polygon one at a time yet
I've tried that, but only with new symbology. It is always rasterised.
comment:8 by , 13 years ago
Ah. But it is affected by other things on the layoout e.g. if an arrow overlaps the map then part of the map is rasterised. If a basic shape overlaps the map then the whole map is rasterised. Also svg images are partly rasterised (I guess it depends on the layers inside the svg). See attached example.
comment:9 by , 13 years ago
Sorry, no. It is more complicated than that.
If a basic shape overlaps the map then the whole map is rasterised.
No, this isn't correct - see document2.pdf
Also svg images are partly rasterised (I guess it depends on the layers inside the svg).
I see this wasn't demonstrated in document1.pdf - more of the svg was rasterised than I expected (I guess due to the svg being in line with the basic shape or something). See document2.pdf instead.
I don't think I'm achieving anything here ;)
comment:10 by , 13 years ago
This should possibly be marked as duplicate of #3480
Also IIRC there is a bug where map labels cause any vector layers they overlap to be rasterised (or partly rasterised).
comment:11 by , 13 years ago
Replying to Alister:
without pdf as vector
Have you tried printing to a virtual pdf "printer"? That produces vector output for me now...
I will double check but the last time I did so to PDF Creator it was still rasterized.
svg that clips to extent and preserves scale
Scale should be preserved now - see #3224
Is clip-to-extent necessary simply to minimise file size? Personally I'm quite happy now with exporting to svg and then printing the svg to PDF. But of course it would be much better not having to do a two-step process...
- it's a lot of work to manually hide lines that cross the neatline of the map (maps are not always full page)
- not necessarily file size but the related number of vectors/nodes has a huge impact on the behavior and stability of Inkscape and Illustrator. We found that using Natural Earth data if you only wanted to export 1-3 countries as part of your map SVG would leave you with 90% of the world as extra data. One could clip everything in QGIS before export but that seems to defeat the purpose of the map composer (however it is a suggested workaround.
I need to go back and check more about Labelling since we also need labels to come out as Text objects in both SVG and PDF unless a user explicity chooses to convert text to paths. Either way it should never be rasterized.
comment:12 by , 13 years ago
I need to go back and check more about Labelling since we also need labels to come out as Text objects in both SVG and PDF unless a user explicity chooses to convert text to paths. Either way it should never be rasterized.
"new" labelling is always rasterized - this is not a glitch, but the way it is designed. I'm pretty sure there is a ticket requesting it to be output as text, but I can't find it in a hurry.
Wait... Exporting to PDF always behaves as described. Printing doesn't seem to now, although I'm pretty sure it did before I restarted QGIS...