CJK fonts in library cover images not rendered correctly #2502

Closed
opened 2026-02-06 22:08:48 +03:00 by OVERLORD · 44 comments
Owner

Originally created by @jang-geon on GitHub (Jan 12, 2021).

Describe the bug

System (please complete the following information):

  • OS: [synology]
  • Virtualization: [Docker]
  • Clients: [Browser]
  • Browser: [Chrome]
  • Jellyfin Version: [10.7.0 rc2]

To Reproduce

  1. Make library name in Korean (copy this '애니')
  2. Waiting for image creation
  3. See problem

Maybe CJK problem
mojibake

Screenshots

화면 캡처 2021-01-13 013720

Originally created by @jang-geon on GitHub (Jan 12, 2021). **Describe the bug** <!-- A clear and concise description of what the bug is. --> **System (please complete the following information):** - OS: [synology] - Virtualization: [Docker] - Clients: [Browser] - Browser: [Chrome] - Jellyfin Version: [10.7.0 rc2] **To Reproduce** <!-- Steps to reproduce the behavior: --> 1. Make library name in Korean (copy this '애니') 2. Waiting for image creation 3. See problem Maybe CJK problem mojibake **Screenshots** <!-- If applicable, add screenshots to help explain your problem. --> ![화면 캡처 2021-01-13 013720](https://user-images.githubusercontent.com/39822140/104345555-d5045c00-5541-11eb-953d-f3943a6c63ee.png)
OVERLORD added the bugconfirmed labels 2026-02-06 22:08:48 +03:00
Author
Owner

@crobibero commented on GitHub (Jan 12, 2021):

https://github.com/jellyfin/jellyfin/pull/4863 should have fixed it, I guess we'll need to handle other languages?

@crobibero commented on GitHub (Jan 12, 2021): https://github.com/jellyfin/jellyfin/pull/4863 should have fixed it, I guess we'll need to handle other languages?
Author
Owner

@jang-geon commented on GitHub (Jan 12, 2021):

#4863 should have fixed it, I guess we'll need to handle other languages?

I tested the Japanese by looking at #4863, but I have the same problem

화면 캡처 2021-01-13 025220

@jang-geon commented on GitHub (Jan 12, 2021): > #4863 should have fixed it, I guess we'll need to handle other languages? I tested the Japanese by looking at #4863, but I have the same problem ![화면 캡처 2021-01-13 025220](https://user-images.githubusercontent.com/39822140/104352743-6677cc00-554a-11eb-950e-450adf3ac1a8.png)
Author
Owner

@nyanmisaka commented on GitHub (Jan 12, 2021):

This result can be expected as there is no CJK font in docker image.
We should let frontend handle the fonts rendering.

@nyanmisaka commented on GitHub (Jan 12, 2021): This result can be expected as there is no CJK font in docker image. We should let frontend handle the fonts rendering.
Author
Owner

@caoli5288 commented on GitHub (Apr 21, 2021):

any progress?

@caoli5288 commented on GitHub (Apr 21, 2021): any progress?
Author
Owner

@bingzhangdai commented on GitHub (May 20, 2021):

manually install cjk fonts inside container does not work :(

@bingzhangdai commented on GitHub (May 20, 2021): manually install cjk fonts inside container does not work :(
Author
Owner

@ClearSeve commented on GitHub (May 25, 2021):

wait for

@ClearSeve commented on GitHub (May 25, 2021): wait for
Author
Owner

@erri120 commented on GitHub (Jun 13, 2021):

The problem is that the Container Images only have the DejaVu font installed. I recommend getting the Noto CJK OpenType/CFF Collection (OTC) from Google and either installing ths into the container or mounting it:

    volumes:
      - <your-path>/NotoSansCJK-Bold.ttc:/usr/share/fonts/NotoSansCJK-Bold.ttc

You want to get the Bold version because Jellyfin only uses that for the Thumbs:

e3f55a0c54/Jellyfin.Drawing.Skia/StripCollageBuilder.cs (L127-L130)

Noto CJK is under the SIL Open Font License and should be packaged with Jellyfin. I'll see if I can create a PR for this.

@erri120 commented on GitHub (Jun 13, 2021): The problem is that the Container Images only have the DejaVu font installed. I recommend getting the Noto CJK OpenType/CFF Collection (OTC) from [Google](https://www.google.com/get/noto/help/cjk/) and either installing ths into the container or mounting it: ```yaml volumes: - <your-path>/NotoSansCJK-Bold.ttc:/usr/share/fonts/NotoSansCJK-Bold.ttc ``` You want to get the **Bold** version because Jellyfin only uses that for the Thumbs: https://github.com/jellyfin/jellyfin/blob/e3f55a0c54a2517361c237543aba717fd2a16e69/Jellyfin.Drawing.Skia/StripCollageBuilder.cs#L127-L130 Noto CJK is under the [SIL Open Font License](https://scripts.sil.org/cms/scripts/page.php?site_id=nrsi&id=OFL) and should be packaged with Jellyfin. I'll see if I can create a PR for this.
Author
Owner

@bingzhangdai commented on GitHub (Aug 11, 2021):

Any updates on the PR? Can the contributors make an agreement on how to put the fonts inside the image?

@bingzhangdai commented on GitHub (Aug 11, 2021): Any updates on the PR? Can the contributors make an agreement on how to put the fonts inside the image?
Author
Owner

@bingzhangdai commented on GitHub (Nov 5, 2021):

Any updates? Can this issue be fixed in the 10.8 release?

@bingzhangdai commented on GitHub (Nov 5, 2021): Any updates? Can this issue be fixed in the 10.8 release?
Author
Owner

@baoang commented on GitHub (Dec 24, 2021):

Any updates? Can this issue be fixed in the 10.8 release?

hope so.

v10.7.7 on Ubuntu 20 package installation, the same problem occurred.

@baoang commented on GitHub (Dec 24, 2021): > Any updates? Can this issue be fixed in the 10.8 release? hope so. v10.7.7 on Ubuntu 20 package installation, the same problem occurred.
Author
Owner

@xinyo commented on GitHub (Jan 3, 2022):

Any updates? Or can someone please point me to the right place so I can create a PR for this

@xinyo commented on GitHub (Jan 3, 2022): Any updates? Or can someone please point me to the right place so I can create a PR for this
Author
Owner

@myfingerhurt commented on GitHub (Jan 5, 2022):

Haven't been fixed, still not rendered correctly in the latest release 10.7.7 windows.
Unconfirmed on 10.8.0 alpha.

@myfingerhurt commented on GitHub (Jan 5, 2022): Haven't been fixed, still not rendered correctly in the latest release 10.7.7 windows. Unconfirmed on 10.8.0 alpha.
Author
Owner

@YUCLing commented on GitHub (Apr 29, 2023):

This is still not fixed in 10.8.10.

@YUCLing commented on GitHub (Apr 29, 2023): This is still not fixed in 10.8.10.
Author
Owner

@gtgo001 commented on GitHub (Jun 15, 2023):

启用备用字体的时候,注意字体的选择即可解决此问题

@gtgo001 commented on GitHub (Jun 15, 2023): 启用备用字体的时候,注意字体的选择即可解决此问题
Author
Owner

@CyleAR commented on GitHub (Jun 29, 2023):

image
I solved it
Make your volume path like this:

volumes:
      - <your path>/fonts:/usr/share/fonts/
      - ...
      - ...

then put any CJK fonts into /<your path>/fonts/<fontname>/
then restart jellyfin service and remove original cover image having □□□s
I used Pretendard font but any other CJK fonts(like noto sans CJK) will work fine

@CyleAR commented on GitHub (Jun 29, 2023): ![image](https://github.com/jellyfin/jellyfin/assets/15523113/26179fdf-2320-4e5c-ac3a-cd0dac5c9668) I solved it Make your volume path like this: ``` volumes: - <your path>/fonts:/usr/share/fonts/ - ... - ... ``` then put any CJK fonts into /\<your path\>/fonts/\<fontname\>/ then restart jellyfin service and remove original cover image having □□□s I used Pretendard font but any other CJK fonts(like noto sans CJK) will work fine
Author
Owner

@felix920506 commented on GitHub (Oct 3, 2023):

The text is rendered server side.
I think it uses server side system fonts

@felix920506 commented on GitHub (Oct 3, 2023): The text is rendered server side. I think it uses server side system fonts
Author
Owner

@cloudiesky commented on GitHub (Jan 29, 2024):

image I solved it Make your volume path like this:

volumes:
      - <your path>/fonts:/usr/share/fonts/
      - ...
      - ...

then put any CJK fonts into //fonts// then restart jellyfin service and remove original cover image having □□□s I used Pretendard font but any other CJK fonts(like noto sans CJK) will work fine

Great! works for me.

@cloudiesky commented on GitHub (Jan 29, 2024): > ![image](https://private-user-images.githubusercontent.com/15523113/249742703-26179fdf-2320-4e5c-ac3a-cd0dac5c9668.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MDY1MzYyNTIsIm5iZiI6MTcwNjUzNTk1MiwicGF0aCI6Ii8xNTUyMzExMy8yNDk3NDI3MDMtMjYxNzlmZGYtMjMyMC00ZTVjLWFjM2EtY2QwZGFjNWM5NjY4LnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNDAxMjklMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjQwMTI5VDEzNDU1MlomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPTBjYzdlOTVjOTE0MGIwOTI5MDkwNTg3YjYxODA1MDM1ZjI5MTI4NGFhYmIxMjdiYjZkNzkwM2JjYWYzN2EyYWImWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0JmFjdG9yX2lkPTAma2V5X2lkPTAmcmVwb19pZD0wIn0.ZAH7TACmu2FK_tCf7_CKc-Nf5wIRf9qv_a3_zS_JP9k) I solved it Make your volume path like this: > > ``` > volumes: > - <your path>/fonts:/usr/share/fonts/ > - ... > - ... > ``` > > then put any CJK fonts into /<your path>/fonts/<fontname>/ then restart jellyfin service and remove original cover image having □□□s I used Pretendard font but any other CJK fonts(like noto sans CJK) will work fine Great! works for me.
Author
Owner

@yamanobe96 commented on GitHub (Feb 22, 2024):

This issue has been labeled as resolved but is still not resolved

There are first aid measures in the thread, but they are too difficult for beginners to understand.
Where on earth can I get CJK fonts?

I am running jellyfin with docker from synology's container manager.
How should I write it in volume?

@yamanobe96 commented on GitHub (Feb 22, 2024): This issue has been labeled as resolved but is still not resolved There are first aid measures in the thread, but they are too difficult for beginners to understand. Where on earth can I get CJK fonts? I am running jellyfin with docker from synology's container manager. How should I write it in volume?
Author
Owner

@gnattu commented on GitHub (Feb 22, 2024):

@yamanobe96 Noto Sans Japanese can be downloaded here: https://fonts.google.com/noto/specimen/Noto+Sans+JP

Or if you are interested in all other variants, you can get it here:
https://github.com/notofonts/noto-cjk/tree/main/Sans#downloading-noto-sans-cjk

@gnattu commented on GitHub (Feb 22, 2024): @yamanobe96 Noto Sans Japanese can be downloaded here: https://fonts.google.com/noto/specimen/Noto+Sans+JP Or if you are interested in all other variants, you can get it here: https://github.com/notofonts/noto-cjk/tree/main/Sans#downloading-noto-sans-cjk
Author
Owner

@nyanmisaka commented on GitHub (Feb 22, 2024):

I think it's time to consider adding some CJK fonts to the docker image.
Using fonts-noto-cjk was discussed before but it was overkill.

In addition, most of the CJK fonts used by ASS/SSA subtitles can be found here.

@nyanmisaka commented on GitHub (Feb 22, 2024): I think it's time to consider adding some CJK fonts to the docker image. Using [`fonts-noto-cjk`](https://packages.ubuntu.com/jammy/fonts-noto-cjk) was discussed before but it was overkill. In addition, most of the CJK fonts used by ASS/SSA subtitles can be found here. - https://vcb-s.com/archives/1114 - https://share.dmhy.org/topics/view/516705_XZ.html
Author
Owner

@yamanobe96 commented on GitHub (Feb 22, 2024):

thank you!
Thank you for your kindness.
But even if I delete the thumbnail and update it, it doesn't change
Is there a difference in how volume is written?
YURIANAS - Synology NAS - Google Chrome 2024_02_22 20_57_46

@yamanobe96 commented on GitHub (Feb 22, 2024): thank you! Thank you for your kindness. But even if I delete the thumbnail and update it, it doesn't change Is there a difference in how volume is written? ![YURIANAS - Synology NAS - Google Chrome 2024_02_22 20_57_46](https://github.com/jellyfin/jellyfin/assets/46581513/a402d578-db2c-476a-9c79-4d21b5d66e2f)
Author
Owner

@nyanmisaka commented on GitHub (Feb 22, 2024):

Jellyfin uses the default fonts path of Linux instead of /fonts.

  • /usr/share/fonts
  • /usr/local/share/fonts

So --volume /path/to/fonts/on/host:/usr/local/share/fonts

@nyanmisaka commented on GitHub (Feb 22, 2024): Jellyfin uses the default fonts path of Linux instead of `/fonts`. - /usr/share/fonts - /usr/local/share/fonts So `--volume /path/to/fonts/on/host:/usr/local/share/fonts`
Author
Owner

@yamanobe96 commented on GitHub (Feb 22, 2024):

thank you
but i am not able to understand
Should I register "/path/to/fonts/on/host" and "/usr/local/share/fonts" in the volume setting?
However, the location /path/to/fonts/on/host does not exist, so it cannot be selected.
YURIANAS - Synology NAS - Google Chrome 2024_02_22 21_16_12

@yamanobe96 commented on GitHub (Feb 22, 2024): thank you but i am not able to understand Should I register "/path/to/fonts/on/host" and "/usr/local/share/fonts" in the volume setting? However, the location /path/to/fonts/on/host does not exist, so it cannot be selected. ![YURIANAS - Synology NAS - Google Chrome 2024_02_22 21_16_12](https://github.com/jellyfin/jellyfin/assets/46581513/25ad4d8b-cde7-464e-a985-af1abdcff5dd)
Author
Owner

@nyanmisaka commented on GitHub (Feb 22, 2024):

Replace /path/to/fonts/on/host with your /docker/jellyfin/fonts.

@nyanmisaka commented on GitHub (Feb 22, 2024): Replace `/path/to/fonts/on/host` with your `/docker/jellyfin/fonts`.
Author
Owner

@yamanobe96 commented on GitHub (Feb 22, 2024):

Thank you for taking the time to answer my troublesome questions!
I was able to display it successfully! thank you for your kindness
Jellyfin - Google Chrome 2024_02_22 21_31_02

@yamanobe96 commented on GitHub (Feb 22, 2024): Thank you for taking the time to answer my troublesome questions! I was able to display it successfully! thank you for your kindness ![Jellyfin - Google Chrome 2024_02_22 21_31_02](https://github.com/jellyfin/jellyfin/assets/46581513/e5d3c924-d30c-45e4-ad86-acba682a614a)
Author
Owner

@skywolf123 commented on GitHub (Jul 18, 2024):

Okay, this issue is still unresolved until version 10.9.7

@skywolf123 commented on GitHub (Jul 18, 2024): Okay, this issue is still unresolved until version 10.9.7
Author
Owner

@gnattu commented on GitHub (Jul 18, 2024):

Again, there is very little we can do if your server does not install the fonts that is required. You will be responsible to install it.

@gnattu commented on GitHub (Jul 18, 2024): Again, there is very little we can do if your server does not install the fonts that is required. You will be responsible to install it.
Author
Owner

@skywolf123 commented on GitHub (Jul 18, 2024):

If I use the server to install it directly, I will not ask this problem at all. The question is Docker. There is neither configured docker file to implement, nor does it have a clear official guidance to configure the font. It's so long that made this issue open so long

@skywolf123 commented on GitHub (Jul 18, 2024): If I use the server to install it directly, I will not ask this problem at all. The question is Docker. There is neither configured docker file to implement, nor does it have a clear official guidance to configure the font. It's so long that made this issue open so long
Author
Owner

@nabulator commented on GitHub (Jul 18, 2024):

well, there is some advice above about how to font fonts from your local host into your docker container. @skywolf123 did you try the steps above? It seems to work for others.

Edit: there seems to have been pushback in https://github.com/jellyfin/jellyfin/pull/6182 from adding new fonts to the container directly due to size issues. It seems unlikely that a simple solution to be arrived.

@nabulator commented on GitHub (Jul 18, 2024): well, there is some advice above about how to font fonts from your local host into your docker container. @skywolf123 did you try the steps above? It seems to work for others. Edit: there seems to have been pushback in https://github.com/jellyfin/jellyfin/pull/6182 from adding new fonts to the container directly due to size issues. It seems unlikely that a simple solution to be arrived.
Author
Owner

@felix920506 commented on GitHub (Jul 18, 2024):

@nabulator the entire set of CJK fonts are already shipped with installs of the web client in order to properly display text in the UI. We might be able to just make Jellyfin use them for things but I'm not sure.

@felix920506 commented on GitHub (Jul 18, 2024): @nabulator the entire set of CJK fonts are already shipped with installs of the web client in order to properly display text in the UI. We might be able to just make Jellyfin use them for things but I'm not sure.
Author
Owner

@gnattu commented on GitHub (Jul 18, 2024):

They are in different formats so you cannot use those directly.

@gnattu commented on GitHub (Jul 18, 2024): They are in different formats so you cannot use those directly.
Author
Owner

@theggs commented on GitHub (Jul 29, 2024):

I have created linuxserver/jellyfin based image that pre-installed Noto CJK fonts. It will resolve this without addition configuration for the fonts.
Anyone being interested can try it: https://hub.docker.com/r/theggs/linuxserver-jellyfin-notofonts
QQ_1722231821484

notice: if you are using offical image before, notice that linuxserver based image has some path diiferences. It may not be harm, but I suggest to create a new container or docker compose project if you would like to change the image used.

@theggs commented on GitHub (Jul 29, 2024): I have created linuxserver/jellyfin based image that pre-installed Noto CJK fonts. It will resolve this without addition configuration for the fonts. Anyone being interested can try it: https://hub.docker.com/r/theggs/linuxserver-jellyfin-notofonts ![QQ_1722231821484](https://github.com/user-attachments/assets/27ab55c0-e82c-420b-b65e-9242c38e5993) notice: if you are using offical image before, notice that linuxserver based image has some path diiferences. It may not be harm, but I suggest to create a new container or docker compose project if you would like to change the image used.
Author
Owner

@felix920506 commented on GitHub (Jul 29, 2024):

@theggs the Linuxserver.io image has problems with the limit on the number of ffmpeg threads and may lead to the entire system crashing. It is advised to use the official image.

@felix920506 commented on GitHub (Jul 29, 2024): @theggs the Linuxserver.io image has problems with the limit on the number of ffmpeg threads and may lead to the entire system crashing. It is advised to use the official image.
Author
Owner

@theggs commented on GitHub (Jul 29, 2024):

@theggs the Linuxserver.io image has problems with the limit on the number of ffmpeg threads and may lead to the entire system crashing. It is advised to use the official image.

Thanks! I may need to transform to the official image.

@theggs commented on GitHub (Jul 29, 2024): > @theggs the Linuxserver.io image has problems with the limit on the number of ffmpeg threads and may lead to the entire system crashing. It is advised to use the official image. Thanks! I may need to transform to the official image.
Author
Owner

@chunjiw commented on GitHub (Nov 7, 2024):

I tried many font files but it never worked, I suspect I didn't have the correct font file. There is one font "NotoSansSC-VariableFont_wght.woff2" (I got from Google Fonts then convert to woff2 using google/woff2), when I use it, the cover image shows no text, no squares, just an image. When I use static font file (like NotoSansSC-Regular) from the same zip (downloaded together from Google Fonts), the cover image again shows squares.
I'm at a loss. Can anybody point me to a place where I can get a font file that works?

@chunjiw commented on GitHub (Nov 7, 2024): I tried many font files but it never worked, I suspect I didn't have the correct font file. There is one font "NotoSansSC-VariableFont_wght.woff2" (I got from [Google Fonts](https://fonts.google.com/noto/specimen/Noto+Sans+SC?lang=zh_Hans) then convert to woff2 using [google/woff2](https://github.com/google/woff2)), when I use it, the cover image shows no text, no squares, just an image. When I use static font file (like NotoSansSC-Regular) from the same zip (downloaded together from Google Fonts), the cover image again shows squares. I'm at a loss. Can anybody point me to a place where I can get a font file that works?
Author
Owner

@felix920506 commented on GitHub (Nov 7, 2024):

@chunjiw you should use normal .ttf or .otf fonts for system fonts

@felix920506 commented on GitHub (Nov 7, 2024): @chunjiw you should use normal .ttf or .otf fonts for system fonts
Author
Owner

@chunjiw commented on GitHub (Nov 7, 2024):

I tried .ttf as well, it does not work in my case. I'm quite confused. The same font (NotoSansSC-VariableFont_wght), ttf file does not work (shows squares), but if I convert it to woff2, the image does not have text nor square.
I tried woff2 because it is recommended in the doc

@chunjiw commented on GitHub (Nov 7, 2024): I tried .ttf as well, it does not work in my case. I'm quite confused. The same font (NotoSansSC-VariableFont_wght), ttf file does not work (shows squares), but if I convert it to woff2, the image does not have text nor square. I tried woff2 because it is recommended in the [doc](https://jellyfin.org/docs/general/installation/container)
Author
Owner

@yamanobe96 commented on GitHub (Nov 7, 2024):

It may not be the fonts that are bad, but the way they are mounted on JELLYFIN may not be good.
Maybe someone can give you the proper advice if you show them the docker configuration screen.

@yamanobe96 commented on GitHub (Nov 7, 2024): It may not be the fonts that are bad, but the way they are mounted on JELLYFIN may not be good. Maybe someone can give you the proper advice if you show them the docker configuration screen.
Author
Owner

@chunjiw commented on GitHub (Nov 7, 2024):

Thank you for the suggestion!

Image
I'm using Jellyfin official image in Unraid, and I mount it as a volume. I put the font file in folder /mnt/user/media2/fonts in the host.

At previous attempts, I also tried bind mount like so:

--mount type=bind,source=/mnt/user/media2/fonts,target=/usr/local/share/fonts/custom,readonly

in the "Extra Parameters" option.

I see no difference between bind mount and volume in this case.

@chunjiw commented on GitHub (Nov 7, 2024): Thank you for the suggestion! ![Image](https://github.com/user-attachments/assets/df33ec29-4eea-4e3f-beec-668fa571a154) I'm using Jellyfin official image in Unraid, and I mount it as a volume. I put the font file in folder `/mnt/user/media2/fonts` in the host. At previous attempts, I also tried bind mount like so: ``` --mount type=bind,source=/mnt/user/media2/fonts,target=/usr/local/share/fonts/custom,readonly ``` in the "Extra Parameters" option. I see no difference between bind mount and volume in this case.
Author
Owner

@yamanobe96 commented on GitHub (Nov 7, 2024):

I did not specify a custom folder in my environment.
Sorry, I will leave the correct advice to someone else.
Image

@yamanobe96 commented on GitHub (Nov 7, 2024): I did not specify a custom folder in my environment. Sorry, I will leave the correct advice to someone else. ![Image](https://github.com/user-attachments/assets/95119693-e972-4ea6-8bcb-0871483d1c5b)
Author
Owner

@chunjiw commented on GitHub (Nov 7, 2024):

Thank you for sharing! I change /user/local/share/fonts/custom to /user/local/share/fonts and it works. I will open another issue to correct the doc.

@chunjiw commented on GitHub (Nov 7, 2024): Thank you for sharing! I change `/user/local/share/fonts/custom` to `/user/local/share/fonts` and it works. I will open another issue to correct the doc.
Author
Owner

@onword commented on GitHub (Jun 15, 2025):

For anyone using Jellyfin on TrueNAS, here is the ELI5 of what I did to enable Japanese fonts overlaid on the thumbnails:

  1. Create a dataset in your pool for fonts -- I created "fonts", and the path is /mnt/tank/fonts
  2. Copy your .ttf font to this directory -- I downloaded and copied NotoSansJP-Regular.ttf from https://fonts.google.com/noto/specimen/Noto+Sans+JP
  3. In TrueNAS go to Apps > Jellyfin > Edit (under Application Info)
  4. Scroll down to Storage Configuration
  5. Click Add beside Additional Storage
  6. "Type" = Host Path (Path that already exists on the system)
  7. "Read Only" = Checked
  8. "Mount Path" = /usr/share/fonts/truetype/NotoSansJP-Regular.ttf
  9. "Host Path" = /mnt/tank/fonts/NotoSansJP-Regular.ttf
  10. Scroll down and click update -- wait for Jellyfin to redeploy and run
  11. Login to Jellyfin
  12. From Jellyfin top menu, click the 3 dots in the bottom right of a category > Refresh Metadata >Replace all metadata > Replace existing images > Replace existing trickplay images
  13. Wait for the metadata to refresh (there should be a % completion in the top right of the thumbnail)
  14. When refresh is complete, refresh your browser window

Note: this is on TrueNAS 25.04, Jellyfin App version v10.10.7, Version v1.2.5.
Hope this helps save someone some time.

@onword commented on GitHub (Jun 15, 2025): For anyone using Jellyfin on TrueNAS, here is the ELI5 of what I did to enable Japanese fonts overlaid on the thumbnails: 1. Create a dataset in your pool for fonts -- I created "fonts", and the path is /mnt/tank/fonts 2. Copy your .ttf font to this directory -- I downloaded and copied NotoSansJP-Regular.ttf from https://fonts.google.com/noto/specimen/Noto+Sans+JP 3. In TrueNAS go to Apps > Jellyfin > Edit (under Application Info) 4. Scroll down to Storage Configuration 5. Click Add beside Additional Storage 6. "Type" = Host Path (Path that already exists on the system) 7. "Read Only" = Checked 8. "Mount Path" = /usr/share/fonts/truetype/NotoSansJP-Regular.ttf 9. "Host Path" = /mnt/tank/fonts/NotoSansJP-Regular.ttf 10. Scroll down and click update -- wait for Jellyfin to redeploy and run 11. Login to Jellyfin 12. From Jellyfin top menu, click the 3 dots in the bottom right of a category > Refresh Metadata >Replace all metadata > Replace existing images > Replace existing trickplay images 13. Wait for the metadata to refresh (there should be a % completion in the top right of the thumbnail) 14. When refresh is complete, refresh your browser window Note: this is on TrueNAS 25.04, Jellyfin App version v10.10.7, Version v1.2.5. Hope this helps save someone some time.
Author
Owner

@qotuzin commented on GitHub (Jun 17, 2025):

@onword you sir, are a legend. Working for me now.

@qotuzin commented on GitHub (Jun 17, 2025): @onword you sir, are a legend. Working for me now.
Author
Owner

@theguymadmax commented on GitHub (Nov 7, 2025):

Closing as fixed by: https://github.com/jellyfin/jellyfin-packaging/pull/98

@theguymadmax commented on GitHub (Nov 7, 2025): Closing as fixed by: https://github.com/jellyfin/jellyfin-packaging/pull/98
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: starred/jellyfin#2502