Problem mit variierender Textdarstellungsgröße auf verschiedenen Rechnern



  • hallo,

    ich hab folgendes problem und bin ziemlich ratlos.
    ich hab ein dialogfenster indem ich einen text in einem Editfeld ausgebe
    den font hab ich folgendermaßen festgelegt:

    HDC hdc = GetDC(NULL);
                    lfHeight2 = -MulDiv(26, GetDeviceCaps(hdc, LOGPIXELSY), 72);
                    ReleaseDC(NULL, hdc);
    
                   HFONT hfontz = CreateFont(lfHeight2, 0, 0, 0, 600, FALSE, 0, 0, 0, 0, 0, 0, 0, "Optimum");
    

    auf meinem ausgangsrechner wird der Text, egal in welcher Bildschirmauflösung ich das Programm laufen lasse korrekt dargestellt.
    Nun hab ich es auf dem Rechner meiner Freundin ausprobiert und zu meiner Verwunderung ist die Darstellung dort so groß
    dass er nicht mehr komplett in das edit-feld passt. Woran liegt das? Ich dachte GetDeviceCaps sollte genau das verhindern?



  • SnowBlind schrieb:

    Woran liegt das? Ich dachte GetDeviceCaps sollte genau das verhindern?

    Kann auch sein, dass das völliger Blödsinn ist, aber ich denke nicht, dass GetDeviceCaps diesen Sinn hat 🙄
    Ich vermute mal, dass auf dem Rechner deiner Freundin bei den Anzeige-Optionen große Schriftarten eingestellt ist - kann das sein?!



  • das war auch meine Vermutung, hat sich leider nicht bestätigt. Hab das am WE kontrolliert und sie hat die gleichen Einstellungen wie ich, kleine Schriftarten+96dpi. Sie hat allerdings nen 15" Mon.

    werd mal probieren den abstand auch noch mit GetDeviceCaps zu ermitteln und mein CreateFont dann entsprechend um die ermittelte width-variable zu erweitern. vielleicht hab ich damit glück.


Anmelden zum Antworten