-
-
Notifications
You must be signed in to change notification settings - Fork 2.9k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Composer compatibility issues between 2.4 and 2.6 #20133
Comments
Author Name: Giovanni Manghi (@gioman) Does it happens with qgis 2.6.1 or master?
|
Author Name: Bogdan Hlevca (@bhlevca) I updated the bug but it created another one, sorry Can you please remove the duplicate? it is 2.6.1 |
Author Name: Nyall Dawson (@nyalldawson) Can you please attach a project file which demonstrates this issue? |
Author Name: Bogdan Hlevca (@bhlevca) I'll try to do it by tomorrow |
Author Name: Bogdan Hlevca (@bhlevca) Attached is a small project the show the problem. The only grid frame that works is the rectangle, Zebra and the others don't. In addition the coordinate do not appear and it does not matter if they are set to be rendered inside or outside the frame. I dill try to rename ~/.qgis2 to see if that fixes the issue.
|
Author Name: Giovanni Manghi (@gioman) Bogdan Hlevca wrote:
I just tested it on qgis master and it seems ok, see attached image.
|
Author Name: Nyall Dawson (@nyalldawson) Works fine here too (Ubuntu 14.10). Did you change the render method for the map item from "Rectangle" to "Render" or "Cache"? Grids won't be drawn if the map is set to Rectangle mode. The second part of your report (default to rectangle mode) is a duplicate of #15439 |
Author Name: Bogdan Hlevca (@bhlevca) Of course I set it to Render, with Rectangle the map does not get drawn. And this project was creates in 2.6.1 which means this is not a compatibility issue but rather something changed in the way the Composer works and I suspect you don't test on all possible platforms. Perhaps is a library that I am missing and ccmake does not catch? I even renamed ~/.gis2 and ~/.config/Qgis I work and compile on Opensuse. I don't know what can cause this problem with 2.6.1. The 2.4 version also compiled on the same machine and the same libraries works fine. I also tried the compiled version from the specialized Application::Geo repositories and has the same problem. I conclude that there is some library that does not behave properly. Can you help in finding the problem? Otherwise I am stuck with 2.4 |
Author Name: Bogdan Hlevca (@bhlevca) I get this error that appears when I switch to Zebra.
Also, coordinates and outer ticks do not show so I suspect that anything painted outside the frame gets lost Based on this finding I hope that you can figure out what's the problem. It points to a QT problem, here is the ldd output
|
Author Name: Bogdan Hlevca (@bhlevca) Actually I get this message in 2.4 as well, but it happens earlier
It is strange, I saw a bug report related to the same warning being closed because it was suspected that the rendering stack was in a peculiar state. However, in this case I have the same setup and get different behaviour from 2 different versions of QGIS so it must be related on how QGIS is using the renderer. |
Author Name: Nyall Dawson (@nyalldawson) I'm stumped - do you have hardware acceleration available? I can't think of any other reason why Qt wouldn't support composition modes. |
Author Name: Bogdan Hlevca (@bhlevca) My worst suspicions were confirmed. Well, I guess in the end it is a QT bug and I found this based on you last comments. I work a lot in photography and I have a 10 bit / channel capable monitor and my card + display port + Nvidia driver are capable of that. However, QT in raster mode can't do that and has to be put in native mode with this
This is what screws up the zebra and anything that drawn outside the frame. I wonder what did you change from 2.4 which is working fine even in native setting, but it does not in 2.6. When I disable the native setting 2.6 renders fine. I wonder what can be done so that what you do works properly with rendering in native mode. I will file a bug report with QT as well, but I think that this a could be done at your level as it is working in 2.4 |
Author Name: Bogdan Hlevca (@bhlevca) Blending is disabled in native mode [[http://doc.qt.digia.com/4.6/qpainter.html#beginNativePainting]] you obviously code pecifically for raster only as setCompositeMode supports only raster ant that's fully supported only on QImage objects. [[http://doc.qt.digia.com/4.6/qpainter.html#setCompositionMode]] I had the same problem in digikam. They have the same issue with QImage rendering, which I think is very limited and should not be used for photography. QGIS is different although I can see for example, for TIFF rendering that will limit the number of colours available. QT5.4 had just fixed the native issue. QT5.3 for example does not support native at all and 30 bit colour mode is not supported. These high colour modes (wide gamut) become more and more available I think one should think for the future and accommodate these new technologies in the programming style. This in the end is your call, you can leave it to QT to fix their issues or use tools from them that go around the problem. I see this as a bug nevertheless, even though is not directly yours, but 2.4 was working fine with whatever you were using then. |
Author Name: Bogdan Hlevca (@bhlevca) For those who still want to keep system wide native rendering but have latest Qgis working properly you can create a wrapper script to do this:
But as I said in my previous update you can get only 8 bit/color in this raster mode. In native mode Qt uses the X11 canvas and is more color capable. Qt is years behind in color management support. |
Author Name: Nyall Dawson (@nyalldawson)
Do you have any further information about this? I can't find anything relevant. Also, QGIS now supports Qt 5 builds. Would you be able to test with a Qt 5 built of QGIS to see if this issue is fixed? |
Author Name: Bogdan Hlevca (@bhlevca)
You can read about it here: [[https://bugreports.qt-project.org/browse/QTBUG-25998]]
I would be able, but I need some guidance how to get those sources and how to build them. |
Author Name: JuanCarlos Bravo (JuanCarlos Bravo) I have the Exact same issue on QGIS 2.8.1-Wien running on MacOSX
|
Author Name: Nyall Dawson (@nyalldawson) This issue was fixed in 2.8.3 and 2.10 - no qt5 build required.
|
Author Name: Bogdan Hlevca (@bhlevca)
Original Redmine Issue: 11924
Affected QGIS version: 2.6.0
Redmine category:map_composer/printing
I have a project created in 2.4 and when I open the Composer the frame is not displayed. Moreover, the coordinates around the frame also do not appear and whatever I tried to do did not help.
There is either a incompatibility between 2.4 and 2.6 at composer level or there is a bug. I create my versions from GIT and just switching the checkout version produces this error. According to some reports that can be read at the link below the issue appears for some and not for others. This will rather point to a incompatibility, maybe deleting/renaming the ".qgis2" director could help, but I would lose all my history and settings. I will have to check that, but at the time I am under time pressure to fix some maps and for the time being I reverted to 2.4.
There is definitely a problem but we need to find what that is.
There are other issues with the composer most likely due to the same incompatibility. For example :
1) the map is set by default to Rectangle
2) after changing it to Render the map takes minutes to appear
[[https://gis.stackexchange.com/questions/120887/zebra-grid-is-not-displayed-in-map-composer/127740#127740]]
The text was updated successfully, but these errors were encountered: