Did you try loading the fonts into system memory first? https://stackoverflow.com/questions/5652344/how-can-i-use-a-custom-font-in-java

I've transcoded many languages from svg to png before but not like you have there. I simply load all the font families into the system then set the font family using css (not using url). I dont know if there is an issue using local resource lookups (various issues I can think of) the method I use avoids that problem.

From: Parth Upadhyay <parth.upadhyay@gmail.com>
Sent: Thursday, January 31, 2019 2:54:56 AM
To: batik-users@xmlgraphics.apache.org
Subject: Vertical Punctuation Rotation on textpaths in tb writing mode for Japanese Text
 
Hello,

I'm using batik 1.10 to render svgs to png. I noticed that in `tb` writing mode, punctuation doesn't seem to get rotated as it should:
Batik Result: https://github.com/justaparth/batik-vertical-test/blob/master/readme_resources/batik_result.png
Chrome Result: https://github.com/justaparth/batik-vertical-test/blob/master/readme_resources/chrome_result.png

In chrome, the full-width parenthesis and quote characters, (「 , get rotated 90 degrees (as is natural in vertically written japanese), but when rendered on batik, they remain upright.

Did I make some mistake in my svg file? Or is this a bug in batik?

My machine is running:
OSX 10.13.6 (also tried on a centos 7.5 machine)
openjdk-11.0.2 (though i have also tried with jdk 8 and had similar results)

Please let me know if you need any more information. Any help would be greatly appreciated!

Thanks,
-parth