Skip to content
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

Refactor QgsTextRenderer internal methods, optimise buffer render #59414

Open
wants to merge 5 commits into
base: master
Choose a base branch
from

Commits on Nov 12, 2024

  1. Refactor QgsTextRenderer internal methods, optimise buffer render

    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...
    nyalldawson committed Nov 12, 2024
    Configuration menu
    Copy the full SHA
    2fce8d9 View commit details
    Browse the repository at this point in the history
  2. Test mask updates

    nyalldawson committed Nov 12, 2024
    Configuration menu
    Copy the full SHA
    e2fa837 View commit details
    Browse the repository at this point in the history

Commits on Nov 13, 2024

  1. Test mask updates

    nyalldawson committed Nov 13, 2024
    Configuration menu
    Copy the full SHA
    672ace0 View commit details
    Browse the repository at this point in the history
  2. Test mask updates

    nyalldawson committed Nov 13, 2024
    Configuration menu
    Copy the full SHA
    be4dc03 View commit details
    Browse the repository at this point in the history

Commits on Nov 18, 2024

  1. Update src/core/textrenderer/qgstextrenderer.cpp

    Co-authored-by: Mathieu Pellerin <[email protected]>
    nyalldawson and nirvn authored Nov 18, 2024
    Configuration menu
    Copy the full SHA
    a96d228 View commit details
    Browse the repository at this point in the history