JDownloader Community - Appwork GmbH
 

Notices

Reply
 
Thread Tools Display Modes
  #1  
Old 31.03.2019, 13:00
serrato serrato is offline
Giga Loader
 
Join Date: Dec 2017
Posts: 99
Default Font Not Changing

Since I work with East-Asian fonts, I've run into the issue where Dialog doesn't support Korean (apparently, if it does let me know what I'm missing).

For a long time now I've tried using Arial Unicode, Noto, Source Han and more but none of them seem to work. JD simply doesn't change no matter what I do - I've written just the font name all the way to the very specific weight e.g. "Arial Unicode MS Regular". It remains stuck on Dialog (the interface setting shows it changed but the actual font being displayed is not the new font).

Any ideas?
Reply With Quote
  #2  
Old 31.03.2019, 13:41
raztoki's Avatar
raztoki raztoki is offline
English Supporter
 
Join Date: Apr 2010
Location: Australia
Posts: 17,659
Default

press enter after change, and restart client?
after restart which font is it on? which font does advanced setting indicate.
think the translation can specify font type also, but advanced setting should override.
__________________
raztoki @ jDownloader reporter/developer
http://svn.jdownloader.org/users/170

Don't fight the system, use it to your advantage. :]
Reply With Quote
  #3  
Old 31.03.2019, 14:26
serrato serrato is offline
Giga Loader
 
Join Date: Dec 2017
Posts: 99
Default

Quote:
Originally Posted by raztoki View Post
press enter after change, and restart client?
after restart which font is it on? which font does advanced setting indicate.
think the translation can specify font type also, but advanced setting should override.
Yes, I do enter and restart each time. In the past I have been able to change the fonts and it usually is something to do with the naming, but now I can't figure out why it won't take effect since I've exhausted all naming possibilities that I could come up with.

The advanced settings show whichever font I typed out, but the actual interface is still using the default options (usually Dialog since that's the last 'successful' font that was loaded).
Reply With Quote
  #4  
Old 01.04.2019, 13:02
Jiaz's Avatar
Jiaz Jiaz is offline
JD Manager
 
Join Date: Mar 2009
Location: Germany
Posts: 79,343
Default

The font name is 'Arial Unicode MS'. In case this doesn't work, please provide a log, see https://support.jdownloader.org/Know...d-session-logs and post shown logID here.
Did you modify/change the theme in advanced Settings?
__________________
JD-Dev & Server-Admin
Reply With Quote
  #5  
Old 03.04.2019, 02:00
serrato serrato is offline
Giga Loader
 
Join Date: Dec 2017
Posts: 99
Default

Quote:
Originally Posted by Jiaz View Post
The font name is 'Arial Unicode MS'. In case this doesn't work, please provide a log, see **External links are only visible to Support Staff**... and post shown logID here.
Did you modify/change the theme in advanced Settings?
I always use Advanced Settings - had no idea if there was any other way to change the font lol.

I tested out between Trebuchet MS and Arial Unicode MS just to be sure I wasn't fooling myself, so I can confirm that it is indeed working. I suppose the problem I'm having is that Arial is showing Chinese and Japanese characters but not Korean Hangul.

The logs are showing pretty raw data like folder hierarchy and names, so I'm a bit hesitant to upload it all and wondering if there's a specific file I can then paste/upload. So far I couldn't find any log file with the mention of font or anything even remotely close. Most of them are simply logs of restarts and reloading the database and related items.

It's possible that fonts like Noto and Source Han are not supported by jD, but I guess only you guys, the devs can confirm that based on whatever expansive characteristics newer fonts have. For instance, Noto and Source Han aren't fully supported by even MS Word (except their very basic 'regular' and 'bold' versions while there are hundreds of language-specific versions and weights).
Reply With Quote
  #6  
Old 03.04.2019, 10:33
Jiaz's Avatar
Jiaz Jiaz is offline
JD Manager
 
Join Date: Mar 2009
Location: Germany
Posts: 79,343
Default

Can you please send me some example links to support@jdownloader.org so I can do some testing. To my knowledge 'Arial Unicode MS' should work fine fine japanese/korean/chinese. Maybe korean hangul is different?

This is not about JDownloader not compatible with any fonts. First you have to enter the correct font name. Then it must be supported by Java (there are different types of fonts, eg ttf and otf)
You just setup a font and Java will use it for rendering. Not every font supports all characters of unicode. Is Noto and Source Han a font out-of-the-box installed on windows or manually installed?

Would be great if you can send some example links, then I can do some testing. In case those fonts are not installed by default, where can I get them?
__________________
JD-Dev & Server-Admin
Reply With Quote
  #7  
Old 04.04.2019, 09:00
serrato serrato is offline
Giga Loader
 
Join Date: Dec 2017
Posts: 99
Default

Oh, I was actually writing Korean text to supplement the original non-Korean name of the package. But in case you want one with Korean text already in, a random video from YouTube can suffice like this **External links are only visible to Support Staff****External links are only visible to Support Staff**

Sorry yes, that's what I meant to say with JD supporting or not --- Java should be able to support it.

Noto and Source Han are mostly the same but slightly differently implemented fonts, both are not out-of-the-box. You can read/download them from: https://www.google.com/get/noto/ and **External links are only visible to Support Staff****External links are only visible to Support Staff**
Reply With Quote
  #8  
Old 04.04.2019, 15:18
Jiaz's Avatar
Jiaz Jiaz is offline
JD Manager
 
Join Date: Mar 2009
Location: Germany
Posts: 79,343
Default

Hmm, that example link looks fine with 'Dialog' and 'Arial Unicode MS' on my Windows system. Now going to test the two fonts
__________________
JD-Dev & Server-Admin
Reply With Quote
  #9  
Old 04.04.2019, 15:57
Jiaz's Avatar
Jiaz Jiaz is offline
JD Manager
 
Join Date: Mar 2009
Location: Germany
Posts: 79,343
Default

Okay. For Chinese/Korean/Japanese you need the CKJ font version but those are lacking the normal characters. You need a logcial to physical mapping configuration so the application (for example java) knows how to map a certain character and what font to use.
For java there are some default mappings like Dialog and Arial Unicode MS. Other mappings must be created manually.
That's also the reason why some applications don't work well with 3rd party fonts because of missing/incorrect mappings.
__________________
JD-Dev & Server-Admin
Reply With Quote
  #10  
Old 04.04.2019, 16:08
Jiaz's Avatar
Jiaz Jiaz is offline
JD Manager
 
Join Date: Mar 2009
Location: Germany
Posts: 79,343
Default

I have to check how custom mappings can be created/supported

there are several search hits about this topic, I just need some time for it
__________________
JD-Dev & Server-Admin
Reply With Quote
  #11  
Old 04.04.2019, 17:56
Jiaz's Avatar
Jiaz Jiaz is offline
JD Manager
 
Join Date: Mar 2009
Location: Germany
Posts: 79,343
Default

It seems for such things you have to modify/update
lib/fontconfig.properties
yourself and tell Java what physical font to use for what unicode ranges as the font itself doesn't cover all required unicodes and nato split up the normal languages and ckj into different font files
__________________
JD-Dev & Server-Admin
Reply With Quote
  #12  
Old 05.04.2019, 06:08
serrato serrato is offline
Giga Loader
 
Join Date: Dec 2017
Posts: 99
Default

Wait, the Korean characters showed up? Even with Dialog, the Korean characters wouldn't show for me. Only Chinese (and Japanese) characters show. Korean just show up as boxes no matter which font I choose.

Is it a relatively simple thing to update fontconfig.properties (as it sounds) or is it likely actually a bit complicated with dependencies and related things? If the former I can give it a shot myself, but then I don't know how that would interfere with the main branch of JD as it pushes official updates. Personally I'd rather it be neatly done by you guys but that's, of course, dependent on priority
Reply With Quote
  #13  
Old 05.04.2019, 20:43
Jiaz's Avatar
Jiaz Jiaz is offline
JD Manager
 
Join Date: Mar 2009
Location: Germany
Posts: 79,343
Default

It's more complex, you can take a look at the file yourself. I'm sorry but I don't see us/me working on this in near future as 'Arial Unicode MS' should work just fine, We just need to find out why it fails for you.

Yes, the example link you've provided worked out of the box with Windows8/10 and 'Arial Unicode MS' on my system. Maybe you've got to install the font on your system first? Maybe it depends on locale/country what fonts are installed by default
__________________
JD-Dev & Server-Admin
Reply With Quote
  #14  
Old 06.04.2019, 08:59
serrato serrato is offline
Giga Loader
 
Join Date: Dec 2017
Posts: 99
Default

Ok after checking the file, there are no entries for "Arial Unicode MS" even though I have the font installed. Can I just add it similar to entries for the other fonts?

Curiously though, all fonts with a final entry of "Korean" have it set to either Batang or a variant of Gulim. For instance, entry for "Arial" seems to have all CJK mappings, yet Korean is the only one that shows up as boxes if I select Arial, Courier or any of the fonts that have a x.x.korean mapping.

UPDATE: FINALLY got it all working. I'm not entirely sure how, but I did the following:
1) Edited fontconfig.properties with a single entry for fontname ARIAL_UNICODE_MS=arialuni.ttf - no effect
2) Noticed I was missing Batang, Gulim and any other Korean fonts in my Windows fonts folder, so downloaded and installed them. - no effect
3) Installed Windows Language Pack for Korean, set font in JD to Arial Unicode MS - worked.

Not sure if 1) and 2) made any difference, but I did notice a new font added by the Language Pack, called "Gungsuh". Not sure why this is the only font that is being rendered in JD. Curious.

Last edited by serrato; 06.04.2019 at 09:13.
Reply With Quote
  #15  
Old 09.04.2019, 11:54
Jiaz's Avatar
Jiaz Jiaz is offline
JD Manager
 
Join Date: Mar 2009
Location: Germany
Posts: 79,343
Default

Thanks for detailed feedback. the fontconfig.properties is a file that tells the logic mapping to actual physical fonts. Yes, I guess in the end it was simply caused by not all required fonts being installed on the system.
When you change font in JD settings, then Java will search for best matching logical/physical font. As soon as you enter a physical font, there will be no more mapping involved (using multiple fonts at once) and then it will fail when the given font doesn't support specific unicode codepoints. That's what 'Arial Unicode MS' does. It tells the rendering that unicode codepoint A will go to Font X and another codepoint, eg Japanese, will go to another Font. It's a mix of different fonts because a single font can only hold 65k different codepoints.

Thanks for sharing your findings and glad that you finally find the solution/fix to your problem.
__________________
JD-Dev & Server-Admin
Reply With Quote
Reply

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump

All times are GMT +2. The time now is 14:02.
Provided By AppWork GmbH | Privacy | Imprint
Parts of the Design are used from Kirsch designed by Andrew & Austin
Powered by vBulletin® Version 3.8.10 Beta 1
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.