mirror of
https://github.com/qgis/QGIS.git
synced 2025-10-16 00:05:45 -04:00
Rework internals of QgsTextRenderer horizontal text rendering, so that: 1. It's easier to read, cleaning up years of accumulated cruft 2. Split out bits into smaller functions 3. Reduce the amount of duplicate code for text layout, so that there's only one function responsible for horizontal text layout instead of multiple 4. Add shortcut optimisations for rendering text + buffer/shadow at the same time, instead of always drawing these completely independantly of each other and incurring the cost of text path calculation multiple times for the same bit of text. In a simple benchtest this reduces the time required for rendering many text fragments with buffers from 40 seconds to 27 seconds. There's still more we could do here, but it's a start...