Map rendering
Backends
| Backend | Ways | Dashed ways | Areas | Area with image pattern | POI symbols | POI icons | Labels | Rigth-to-left labels | Contour labels |
|---|---|---|---|---|---|---|---|---|---|
| Qt | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
| Cairo | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓1 | ✓ |
| AGG | ✓ | ✓ | ✓ | ✗ | ✓ | ✗ | ✓ | ✗ | ✓ |
| OpenGL | ✓ | ✗ | ✓ | ✗ | ✗ | ✗ | ✓4 | ✗ | ✗ |
| DirectX | ✓ | ✓ | ✓ | ✗ | ✓ | ✓ | ✓3 | ✗ | ✓3 |
| MacOS / iOS | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓2 | ✓2 | ✓2 |
| SVG | ✓ | ✓ | ✓ | ✗ | ✓ | ✓ | ✓ | ✓1 | ✓ |
| GDI+ | ✓ | ✓ | ✓ | ✗ | ✓ | ✓ | ✓ | ? | ✓ |
1) With Pango library
2) Transition to new label layouter is not finished yet
3) Problems with non-ascii characters
4) Buggy on some platforms
Map drawing
| Feature | Status | Comments |
|---|---|---|
| Style sheet support | OK | |
| Draw nodes | OK | |
| Draw ways | OK | |
| Draw multiple lines for way | OK | Render multiple lines with different styles for one way |
| Draw labels on top of way | OK | E.g. render street names |
| Draw plates on top of way | OK | E.g. render motorway numbers |
| Draw areas | OK | |
| Handle layers | OK | |
| Style sheet filter for bridge and tunnel | OK | |
| Draw symbols | OK | Simple API to draw geometrical objects like arrows, boxes, crosses |
| Draw external images | OK | We support loading and caching of PNGs for the cairo and Qt backend. We should support for formats. |
| Define font | OK | Current one font type support, style sheet allows to use different font sizes |
| Render depending on zoom level | OK | Style sheet allows filtering based on zoom level |
| Advanced language support | OK | UTF-8 is support, advanced text rendering used if supported by backend |
| Label priority | OK | More important labels are render befor less important ones |
| Merge labels | Initial | Improved handling of closed by labels with same value, e.g. two parallel lanes for the same highway |
| Reposition labels | Missing | Move labels slightly for improved appearance |
| Draw turn restrictions | Missing |