개발/Qt
[Qt] QTextBrowser에 이미지 넣기 및 수직 정렬(vertical align)
LifeCoding
2021. 11. 30. 20:31
1. QTextBrowser에 이미지 넣기
QTextDocument에 addResource로 이미지를 추가하고,
내용에서 <img> 태그로 이미지를 넣어주면 된다.
QTextDocument doc = new QTextDocument;
QPixmap pm(":/data/icons/png/new.png");
doc->addResource(QTextDocument::ImageResource, QUrl("new.png"), pm);
doc->setHtml("<img src='new.png'/>");
ui->textBrowser->setDocument(doc);
2. 이미지를 옆의 텍스트에 맞춰 수직 정렬(vertical align)하기
분명히 Qt 공식 사이트에 vertical-align 속성이 있는데.. img 태그에 해당 속성을 넣어줘도 정렬이 안된다... 버그인듯...
vertical-align | baseline | sub | super | middle | top | bottom | Vertical text alignment. For vertical alignment in text table cells only middle, top, and bottom apply. |
꼼수로, 테이블을 만들어 이미지와 텍스트를 한줄에 넣어주면 정렬이 되네...
QString text = QString("<table width='100%'>"
"<tr>"
"<td><img src='new.png' style='vertical-align:middle;'/></td>"
"<td><h2> Title</h2></td>"
"</tr>"
"</table>";
ui->textBrowser->document()->setHtml(text);