Bug report #10599
Composer blank page - QPixmap It is not safe to use pixmaps outside the GUI thread
Status: | Closed | ||
---|---|---|---|
Priority: | Severe/Regression | ||
Assignee: | - | ||
Category: | Map Composer/Printing | ||
Affected QGIS version: | master | Regression?: | No |
Operating System: | Easy fix?: | No | |
Pull Request or Patch supplied: | No | Resolution: | |
Crashes QGIS or corrupts data: | No | Copied to github as #: | 19004 |
Description
When I try to print (to the printer) a map in Composer, with just raster data in canvas, I get a blank page.
If the composer has grids, annotations, legend, images, etc., everything is printed correctly, except the raster data from canvas, that does not appear, and I get the QT log message:
QPixmap: It is not safe to use pixmaps outside the GUI thread (Level 1).
Also, if I have vector data on canvas, they are printed correctly, only the raster data does not and throws that message (it happens both with raster data in GeoTIFF file format, as in WMS).
This only happens when printing to the printer. Exporting to image, pdf or svg, everything works fine.
To reproduce:
1. Open QGIS and load a raster layer or WMS layer;
2. New print composer;
3. Add new map;
4. Print... (Ctrl+P);
5. Check Log Messages and Print Output.
Tested on Windows 7 (64 bits) with QGIS master 2.3.0-103 (5eddb74).
Associated revisions
Hopefully fix #10599 (blank composer map when rendering rasters)
When printing on Windows, the printing does not seem to work
well in the worker thread as QImages get converted to QPixmaps.
Therefore we force the map rendering into main thread to avoid the issues.
I do not have a printer, so I can't confirm the fix really helps
History
#1 Updated by Pedro Venâncio over 10 years ago
I did some tests on other machines:
- Windows 7 with QGIS master (OSGeo4W 64bits) -> this is the same environment as the first machine and I get the same error and blank output;
- Windows 7 with QGIS master (OSGeo4W 32bits) -> everything ok, prints without problems;
- Linux Ubuntu 12.04 32bits with QGIS master -> everything ok, prints without problems.
So the problem seems to be only on 64bit versions of QGIS. I have no 64bit Linux machine where I can test.
#2 Updated by Martin Dobias over 10 years ago
- Status changed from Open to Feedback
I do not have a printer here to test with printer, but with export to PDF everything works for me on win/64.
Does PDF output work for you or does it end up with the same problem?
#3 Updated by Pedro Venâncio over 10 years ago
Hi Martin,
No, exporting to image, pdf or svg, works fine. The problem is just when printing to the printer.
#4 Updated by Pedro Venâncio over 10 years ago
I can not give more precise information about the error, because I can only do debug on Linux 32bits, and this problem does not appear in 32bits.
But it seems to me a serious problem.
If someone can test and confirm, please do it.
#5 Updated by Andreas Neumann over 10 years ago
I have the very same issues.
Rasters don't print anymore when directly printing to the printer. PDF export is fine.
QGIS 2.2 works fine with the same printers.
#6 Updated by Andreas Neumann over 10 years ago
Forgot to say that this is also on Windows 7 64bit version.
#7 Updated by Martin Dobias over 10 years ago
- Status changed from Feedback to Closed
Fixed in changeset 7aa93c00f7843e31209ce86cac0ce4e5461b6806.
#8 Updated by Pedro Venâncio over 10 years ago
I confirm the fix on Win7 (OSGeo4W 64bits)!
Thank you very much Martin!
#9 Updated by Andreas Neumann over 10 years ago
I can also confirm that printing rasters works again on Win7 64bit. Thank you for the fix!