Skip to content

#125 løsning til oppløsningstrøbbel ved å bruke px ikke pt i font

Thomas Holene Løkkeborg requested to merge fiks-oppløsningsproblem into master

Som indirekte vist her: https://stackoverflow.com/questions/42141354/convert-pixel-size-to-point-size-for-fonts-on-multiple-platforms/42141980 punktstørrelser på fonter resulterer i ulik pikselstørrelse fra skjerm til skjerm. Dette er hele poenget med punktstørrelser. Men til vårt bruk trenger vi at tekster inne i SOI har lik pikselstørrelse fra skjerm til skjerm, så denne endringen begynner å flytte fonter brukt i SOI fra punkt til piksel. Grunnen til at pikselstørrelse må være lik fra skjerm til skjerm er at SOI har en hardkodet pikselstørrelse.

Denne MRen:

  • Introduserer en ny funksjon som gir en QFont med størrelse oppgitt i pikselstørrelse
    • Brukes overalt der en font trengs inne i SOIen
  • Legger til enkel test som burde fange oppløsningsproblemer med moduler i fremtiden (avhengig av å bli kjørt på ulike oppløsninger.. pipeline gjør det heldigvis)
    • SOI header testes ikke for opplønsingproblemer. Jeg tror det vil være meget tidkrevende å implementere dette, så jeg lot være
    • Den nye testen vil kreve oppdatering hver gang en modul legges til, fjernes, eller endres.

For å teste:

  • Lag en enkel SOI med en av hver modul, og skriv ut til PDF.
  • Gi PDF nytt navn, så den ikke blir overskrevet senere.
  • Endre skjermoppløsning og lag samme enkle SOI. Skriv ut til PDF.
  • Åpne begge PDFene, og observer at SOIene er like.
  • Om du vil: Repeter denne prosessen på master branch, og observer at SOIene ikke er like (fonter vil være helt ulike størrelser)

VIKTIG

  • Fiksen fungerer bare på Windows "skalering" 100% og 125%
  • Fiksen er testet på minst én skaleringsmodus på hver av:
    • 1920 x 1080
    • 1680 x 1050
    • 1366 x 768
    • 800 x 600
  • Testen til fiksen fungerer bare på windows, og vil ikke kjøre på Ubuntu
  • Vi kjører Qt 5.12.1, og her fungerer det som forventet. Men jeg forsøkte å oppgradere til Qt 5.12.2 (kom ut mars 2020 :) ) og her har Qt trøbbel til og med med 100% vs. 125% skalering, så fiksen min fungerer ikke til den versjonen. Vi leverer nok vår bachelor som Qt 5.12.1, så dette er ikke et problem for oss.
Edited by Thomas Holene Løkkeborg

Merge request reports