In my company at least in the business (healthcare in hospitals) we target
JavaFX for (as a replacement of old app in Swing) we for sure cannot ask
our clients to change their computers/screen to have HiDPI... so having 5K
screens, yes in 2045 perhaps.


On Thu, Apr 16, 2015 at 7:12 PM, Jeff Martin <j...@reportmill.com> wrote:

> I’m surprised about the font size problem - If I create a font with new
> Font(“Monaco”, 10), text shows up the same size as it does in Eclipse.
>
> I don’t think there is a solution for the blurry problem, however, because
> there is no way to disable Antialiasing. In Swing, I was able to get crisp
> rendering identical to eclipse by checking for very specific fonts/sizes
> and disabling TEXT_ANTIALIASING.
>
> The only solution in JavaFX may be to get a Retina monitor. This didn’t
> seem to be a terrible proposition to me last year, when it seemed like
> almost everything from phones to tablets to laptops had gone HiDPI. It’s
> taking forever for the desktop world to catch on, though. Apple is taking
> it’s time. Dell apparently has a nice 5k external, but it needs two mini
> display ports to drive it.
>
> jeff
>
>
> On Apr 16, 2015, at 9:28 AM, Damien Dudouit <ddudo...@clio.ch> wrote:
>
> > Hello,
> >
> > I'm experimenting with Java FX on a Windows 7 machine, using Java
> 1.8.0_40.
> >
> > The *javafx.scene.text.*Font javadoc says :
> >
> > *The size of a Font is described as being specified in points which are a
> > real world measurement of approximately 1/72 inch. *
> >
> > *[...] Note that the real world distances specified by the default
> > coordinate system only approximate point sizes as a rule of thumb and are
> > typically defaulted to screen pixels for most displays. *
> >
> > Java FX behaves as if the display dpi is 72 while in my case for instance
> > its about 96. 96/72 = 1.3333.
> >
> > So for instance if I set Font.font("Consolas", FontPosture.REGULAR, 10)
> as
> > a font on a javafx.scene.control.TextArea, text appears a lot smaller
> than
> > in my eclipse editor configured with the same font.
> > Obviously, I get about the same visual size if I use a font size of 13 in
> > Java FX while using the same font in size 10 in Eclipse.
> >
> > I guess I could set scaling somehow in my Java FX code. But using
> scaling,
> > I imagine that text has little chance to display as crisp as it should.
> >
> > In fact, trying to compare the pixel output of Eclipse with font size 10
> > and Java FX in font size 13 (or 13.333), the Java FX one is slightly
> blurry.
> >
> > What can be done in Java FX when an application needs text as clear as
> > possible, for instance if the application is a text editor ?
> >
> > What is the correct approach in a Java FX app so that it respect the
> > default font size configured at the OS level ?
> >
> >
> > Thanks a lot in advance,
> >
> > Damien
> >
> >
> > public final class MyApplication extends Application {
> >
> >  public static void main(String[] args) {
> >    launch(args);
> >  }
> >
> >  @Override
> >  public void start(Stage primaryStage) {
> >    TextArea editor = new TextArea();
> >
> >    editor.setFont(Font.font("Consolas", FontPosture.REGULAR, 10));
> >
> >    primaryStage.setScene(new Scene(editor));
> >    primaryStage.show();
> >
> >    System.out.println(Toolkit.getDefaultToolkit().getScreenResolution());
> >  }
> > }
>
>

Reply via email to