Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Get Qt Extensions
  • Unsolved
Collapse
Brand Logo
  1. Home
  2. Qt Development
  3. General and Desktop
  4. How do I set a different font for different texts when printing?
Forum Updated to NodeBB v4.3 + New Features

How do I set a different font for different texts when printing?

Scheduled Pinned Locked Moved Solved General and Desktop
2 Posts 1 Posters 183 Views
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • M Offline
    M Offline
    Mihaill
    wrote on last edited by
    #1

    Hi!
    How do I set a different font for different texts when printing?
    If I do so, the font will be the same. I need to adjust the font for each text.

        QPrinter printer;
        
        QFont font;
        font.setPixelSize(15);
        
        QPainter painter;
          painter.begin(&printer);
          painter.setFont(font);
    
          //painter.drawText(x, y, width, height, Qt::AlignLeft|Qt::AlignTop, text); //int x, int y, int width, int height,
          painter.drawText(x, y, width, height, Qt::AlignLeft|Qt::AlignTop, "777"); //int x, int y, int width, int height,
          painter.drawText(30, 10, width, height, Qt::AlignLeft|Qt::AlignTop, "888"); //int x, int y, int width, int height,
    
          painter.end();
    
    1 Reply Last reply
    0
    • M Offline
      M Offline
      Mihaill
      wrote on last edited by
      #2

      It's works

          QPrinter printer;
      
          QFont font15;
          font15.setPixelSize(20);
      
          QPainter painter;
            painter.begin(&printer);
      
            painter.setFont(font15);
      
            //painter.drawText(x, y, width, height, Qt::AlignLeft|Qt::AlignTop, text); //int x, int y, int width, int height,
            painter.drawText(0, 0, width, height, Qt::AlignLeft|Qt::AlignTop, "666"); //int x, int y, int width, int height,
      
            font15.setPixelSize(35);
            painter.setFont(font15);
            painter.drawText(30, 20, width, height, Qt::AlignLeft|Qt::AlignTop, "777"); //int x, int y, int width, int height,
            //painter.setFont(font25);
      
            painter.end();
      
      1 Reply Last reply
      1

      • Login

      • Login or register to search.
      • First post
        Last post
      0
      • Categories
      • Recent
      • Tags
      • Popular
      • Users
      • Groups
      • Search
      • Get Qt Extensions
      • Unsolved