In the post
I already explained you, why PD4ML needs an access to physical TTF font files. JRE or Microsoft office have an access to font resources / font objects, so they can display the fonts on a screen.

But in a case of PDF the font files need to be parsed, used glyphs extracted and the limited character subset to be included to the resulting document. You cannot get the needed info from java.awt.Font object,. So PD4ML implements a simple “font name->font file” mapping approach. I am sorry if you find it overcomplicated.