Uploaded image for project: 'Qt'
  1. Qt
  2. QTBUG-24936

Alpha cache is not cleared when printing to PDF

    XMLWordPrintable

Details

    • 8129f45e65e5bb1193b0abfc67d8130f3b1563c4

    Description

      $QTDIR/src/painting/qprintengine_pdf.cpp:

      QPdfEngine::begin(QPaintDevice *pdev) does not clear the alpha cache:

      bool QPdfEngine::begin(QPaintDevice *pdev)
      {
          Q_D(QPdfEngine);
      
          if(!QPdfBaseEngine::begin(pdev)) {
              state = QPrinter::Error;
              return false;
          }
          d->stream->setDevice(d->outDevice);
      
          d->streampos = 0;
          d->hasPen = true;
          d->hasBrush = false;
          d->clipEnabled = false;
          d->allClipped = false;
      
          d->xrefPositions.clear();
          d->pageRoot = 0;
          d->catalog = 0;
          d->info = 0;
          d->graphicsState = 0;
          d->patternColorSpace = 0;
      
          d->pages.clear();
          d->imageCache.clear();
          // missing - should be added:
          d->alphaCache.clear();
      

      Attachments

        For Gerrit Dashboard: QTBUG-24936
        # Subject Branch Project Status CR V

        Activity

          People

            rodal Samuel Rødal
            qtcomsupport Qt Support
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Gerrit Reviews

                There are no open Gerrit changes