<div dir="ltr">Excellent! Glad to hear that it worked for you :)</div><div class="gmail_extra"><br><div class="gmail_quote">On Fri, Oct 21, 2016 at 4:22 AM, Elvis Stansvik <span dir="ltr"><<a href="mailto:elvis.stansvik@orexplore.com" target="_blank">elvis.stansvik@orexplore.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="HOEnZb"><div class="h5">2016-10-20 18:29 GMT+02:00 David Lonie <<a href="mailto:david.lonie@kitware.com">david.lonie@kitware.com</a>>:<br>
> On Thu, Oct 20, 2016 at 12:25 PM, Elvis Stansvik<br>
> <<a href="mailto:elvis.stansvik@orexplore.com">elvis.stansvik@orexplore.com</a>> wrote:<br>
>><br>
>> Den 20 okt. 2016 5:30 em skrev "David Lonie" <<a href="mailto:david.lonie@kitware.com">david.lonie@kitware.com</a>>:<br>
>> ><br>
>> > On Thu, Oct 20, 2016 at 11:27 AM, Elvis Stansvik<br>
>> > <<a href="mailto:elvis.stansvik@orexplore.com">elvis.stansvik@orexplore.com</a>> wrote:<br>
>> >><br>
>> >> Using built-in fonts I also get text rendered smaller than expected.<br>
>> >><br>
>> >> However, I think it's a matter of DPI. I guess VTK assumes a DPI of 72<br>
>> >> somewhere?<br>
>> >><br>
>> >> With the following, the text is rendered in the expected size:<br>
>> >><br>
>> >>     auto logicalDpiY =<br>
>> >> QApplication::screens().at(0)-<wbr>>logicalDotsPerInchY();<br>
>> >>     ...<br>
>> >>     textProperty->SetFontSize(<wbr>qRound(10 * (logicalDpiY / 72.0)));<br>
>> >>     textProperty-><wbr>SetFontFamilyAsString("Noto Sans");<br>
>> >><br>
>> >> So I'm compensating for VTK's assumption about 72 DPI by increasing<br>
>> >> the font size (on my system Qt's logicalDotsPerInchY() reports<br>
>> >> 96.2526).<br>
>> >><br>
>> >> I guess I should also figure out how to be notified when the widget is<br>
>> >> moved to another screen and update the size, since the DPI of the<br>
>> >> other screen might be different.<br>
>> ><br>
>> ><br>
>> > Aha, yes, VTK does assume 72 DPI by default. We very recently added the<br>
>> > ability to change that for text rendering purposes. Call<br>
>> > vtkRenderWindow::SetDPI to update it to what Qt is using, and the text<br>
>> > rendering should adjust accordingly. Let me know if that fixes it.<br>
>><br>
>> Aha, thanks for the tip. On my way home now but will test tomorrow. Do you<br>
>> know if it's in 7.1rc1? I'm building my Debian package from that tag<br>
<br>
</div></div>SetDPI(...) worked great.<br>
<br>
So in summary, in a VTK/Qt application, you can set the DPI to the one<br>
Qt detects with<br>
<br>
    GetRenderWindow()->SetDPI(<wbr>qRound(windowHandle()->screen(<wbr>)->logicalDotsPerInch()));<br>
<br>
in your QVTKWidget, and then configure the vtkTextProperty to<br>
approximate the general system font with<br>
<br>
    auto font = QFontDatabase::systemFont(<wbr>QFontDatabase::GeneralFont);<br>
    textProperty->SetFontSize(<wbr>font.pointSize());<br>
    textProperty-><wbr>SetFontFamilyAsString(font.<wbr>family().toUtf8().constData())<wbr>;<br>
    textProperty->SetBold(font.<wbr>bold());<br>
    textProperty->SetItalic(font.<wbr>italic());<br>
<br>
Thanks for the pointers David!<br>
<span class="HOEnZb"><font color="#888888"><br>
Elvis<br>
</font></span><div class="HOEnZb"><div class="h5"><br>
><br>
><br>
> It is. We added this about a year ago, but like the fontconfig stuff, it<br>
> hasn't seen widespread use yet so any feedback would be great :)<br>
><br>
> Dave<br>
</div></div></blockquote></div><br></div>