Font (Script) is not changing in the Anki Windows.

I have changed the font in the Fields section but the app is still typing in English. It should be typing in the Hindi script but it isn’t. For example, when I change the font in the Microsoft Word, it changes to the Hindi script. But it is not changing in the Anki Windows. I also tried to install the font directly into Anki but that didn’t solve the problem either. I would really appreciate it if you could help me solve the problem.

Note: I know I can type the Hindi script by changing the default keyboard on the Windows system but I don’t want to do that because I don’t know the layout of the keyboard of that.


The selected font for the Hindi script.


The font (script) is still not changing.

I was able to reproduce this issue, and just opened a pull request that should fix it.

3 Likes

After updating to the latest version (2.1.47):-

The text is now showing in the Hindi script while making the cards, but it still appears in English when I study the cards. I am not a tech expert, but I think the reason for this is that the font I am using isn’t Unicode one and I think even If this new issue gets solved (the text appears as Hindi even when studying/reviewing the cards in the desktop), it won’t apply to the web or the mobile version.

So, I think the best thing is to use the Hindi keyboard provided by the Windows system because it will produce the Hindi text everywhere unlike the font I am using.
The second-best thing to do would be to use Microsoft Word/Excel to make your flashcards, and then convert the text to Unicode, and import that into Anki. This is the option I am currently using, and it works everywhere.

Is it possible you adjusted the font in the Fields screen, but did not adjust the font in the Cards screen?

I also changed the font in the styling section of the Cards screen, but it still shows in English when studying/reviewing the cards. I guess there is nothing more that can be done about this issue, right?

Could you attach a screenshot of the adjustment you made to the card template?

Here you go.

Try enclosing the font family name in either double or single quotes.

If you want to apply that font only to a specific field, you should enclose that field in a <div> or <span> tag with a class, and write font-family: "......"; within the css selector corresponding to that class, like the following:
Template:

{{Front}}

<div class="hindi">{{Hindi}}</div>

Styling:

.card {
    font-family: arial;
    font-size: 20px;
    text-align: center;
    color: black;
    background-color: white;
}

.hindi {
    font-family: "Kruti Dev 010";
}

Screenshot:

2 Likes