mirror of
https://github.com/hneemann/Digital.git
synced 2025-10-04 02:12:42 -04:00
based new font size on screen resolution instead of screen size
This commit is contained in:
parent
2880b37d4d
commit
92af0a7dc8
@ -52,7 +52,7 @@ public class TestDataDialog extends JDialog {
|
|||||||
setDefaultCloseOperation(DISPOSE_ON_CLOSE);
|
setDefaultCloseOperation(DISPOSE_ON_CLOSE);
|
||||||
|
|
||||||
JTextArea text = new JTextArea(data.getDataString(), 30, 50);
|
JTextArea text = new JTextArea(data.getDataString(), 30, 50);
|
||||||
text.setFont(new Font(Font.MONOSPACED, Font.PLAIN, (int) Screen.getInstance().getFontSize()));
|
text.setFont(new Font(Font.MONOSPACED, Font.PLAIN, Screen.getInstance().getFontSize()));
|
||||||
|
|
||||||
JScrollPane scrollPane = new JScrollPane(text);
|
JScrollPane scrollPane = new JScrollPane(text);
|
||||||
getContentPane().add(scrollPane);
|
getContentPane().add(scrollPane);
|
||||||
|
@ -1,5 +1,10 @@
|
|||||||
package de.neemann.gui;
|
package de.neemann.gui;
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Win 150% : getScreenResolution() = 144
|
||||||
|
* Win 100% : getScreenResolution() = 96
|
||||||
|
*/
|
||||||
|
|
||||||
import javax.swing.*;
|
import javax.swing.*;
|
||||||
import java.awt.*;
|
import java.awt.*;
|
||||||
import java.awt.geom.AffineTransform;
|
import java.awt.geom.AffineTransform;
|
||||||
@ -16,7 +21,7 @@ public final class Screen {
|
|||||||
private static Screen instance = new Screen();
|
private static Screen instance = new Screen();
|
||||||
}
|
}
|
||||||
|
|
||||||
private final float size;
|
private final int size;
|
||||||
private final float scaling;
|
private final float scaling;
|
||||||
private final Font font;
|
private final Font font;
|
||||||
|
|
||||||
@ -30,14 +35,13 @@ public final class Screen {
|
|||||||
private Screen() {
|
private Screen() {
|
||||||
Font font = new JLabel().getFont();
|
Font font = new JLabel().getFont();
|
||||||
float scaling = 1;
|
float scaling = 1;
|
||||||
float size = 12;
|
int size = 12;
|
||||||
try {
|
try {
|
||||||
Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();
|
int s = Toolkit.getDefaultToolkit().getScreenResolution() * 12 / 96;
|
||||||
float s = screenSize.height / 90f;
|
|
||||||
if (s > 12) {
|
if (s > 12) {
|
||||||
scaling = s / 12;
|
scaling = s / 12f;
|
||||||
size = s;
|
size = s;
|
||||||
font = font.deriveFont(s);
|
font = font.deriveFont((float) s);
|
||||||
for (Object key : javax.swing.UIManager.getLookAndFeel().getDefaults().keySet()) {
|
for (Object key : javax.swing.UIManager.getLookAndFeel().getDefaults().keySet()) {
|
||||||
if (key.toString().endsWith(".font"))
|
if (key.toString().endsWith(".font"))
|
||||||
javax.swing.UIManager.put(key, font);
|
javax.swing.UIManager.put(key, font);
|
||||||
@ -95,7 +99,7 @@ public final class Screen {
|
|||||||
/**
|
/**
|
||||||
* @return font size
|
* @return font size
|
||||||
*/
|
*/
|
||||||
public float getFontSize() {
|
public int getFontSize() {
|
||||||
return size;
|
return size;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user