I have created an android app, in that I want to set Gujarati joint word.
I use Shruti.ttf font.
I want to print -
નર્સિંગ
But it prints-
નર્ સંગિ
So, how to print proper.
My code is -
TextView tv_guj=(TextView)findViewById(R.id.tv_gujarati);
Typeface font = Typeface.createFromAsset(getAssets(), "Shruti.ttf");
tv_guj.setTypeface(font);
tv_guj.setText("નર્સિંગ");
Please try this sample and copy your text to this sample text view it will work and will show proper result as you want
https://www.dropbox.com/s/6pqg9otcli038ij/HindiFont.zip
Lohit-Gujarati font is working
you can use terafont of gujarati Fontface so it will be implemented.
Thanks
Related
I have been trying to show marathi font using this link in my app. But some how its not working for me. It gives no error but does not show any font in text view. I came to know about internationalization concept when I first tried to do this.
TextView info=(TextView)findViewById(R.id.textview);
Typeface face= Typeface.createFromAsset(this.getAssets(), "fonts/FontAwesome.otf");
info.setTypeface(face);
info.setText("TypeFace");
I have a TextView which contains just one letter. The size of the text is calibrated so that the letter occupies entire TextView area. Now one of my users reported a problem that the letter does not fit properly into the TextView. From the attached screenshot I can see that she uses some kind of custom font on her Samsung S4 device. I am sure that's the problem. Here are some snapshots:
Custom font in a TextView over ImageView:
Custom font in the Status Bar:
Distorted letter N in my TextView:
Is there any way to make a TextView use standard android font ignoring any custom fonts that users applies? How can I install custom fonts on the emulator or Sony phone (do not have Samsung) and replicate the behavior?
Yes you can set custom fonts to your app. Make use TypeFace class.
Create a folder called fonts under assets folder and place all your fonts in it (Font format ttc or ttf. Folder name can be anything)
Within you onCreate method add the below code.
TextView mytextview= (TextView) findViewById(R.id.text_view_id);
// Loading Font Face. Replace with your font file name
Typeface tf = Typeface.createFromAsset(getAssets(), "fonts/your_custom_font.ttf");
// Applying font
mytextview.setTypeface(tf);
Similar way you can have as many as TypeFace you require and also use the same TypeFace declared on as many as TextView you want.
This tutorial below very well explains your requirement and also provides screenshot for better assistance.
http://www.androidhive.info/2012/02/android-using-external-fonts/
Also kindly note that TypeFace has a lot of other options that you can play around with. You can refer the android docs to get an idea about them.
I hope it helped you.
Thanks!!
My advise:
Create a subfolder in your asset folder called fonts.
Put there the fonts you want to use (for example ttc, or ttf) Set
your TextView typeface. For example:
yourTextView.setTypeface(Typeface.createFromAsset(getContext().getAssets(), "fonts/yourFont.ttc"));
I hope it helps!!
I am using various custom fonts in a TextView.
Typeface tf = Typeface.createFromAsset(getAssets(), "fonts/font_name.ttf");
TextView tv = (TextView) this.findViewById(R.id.MyText);
tv.setTypface(tf);
tv.setText("data to view in custom font");
This works for some fonts but not for all I want to use. The failed fonts do so silently. there are no exceptions or other failure indications. The text is displayed in the default font not in the custom font. It is clear that the fonts are not displayed, because the custom fonts I am trying to use are chess piece figurines.
All the fonts work in Word and LibreOffice Writer
How do I determine what is wrong with the font, so I might fix it.
Edits:fixed example code to add tv.setTypeface(tf); clarified what not working means.
I am trying to display local Indian languages in my application. The data for the application is from web. I use a web service to display the contents from DB. I am converting the data in format of unicode and i receive the unicode in phone. Am trying to display the unicode and also i use the relevant font If telugu i use telugu fonts.
The unicode is displayed but there is spacing problem. To solve this i got a option of reshaping, that is like giving space with fixed codes and got for Arabic but i am now searching for telugu.
My reffered link is:
Refference for Arabic
You can put in HTML codes for the devanagari characters. There are quite a lot of online editors that will give these codes, like:
-> http://www.wandel.person.dk/hindi.html
(A text editor which you can use to write devanagari characters)
-> http://vikku.info/indian-language-unicode-converter/hindi-unicode-converter.html
(An english to hindi text converter)
Use Typeface option. Please see an example below
TextView text = (TextView) findViewById(R.id.text);
Typeface font = Typeface.createFromAsset(getAssets(), "myfont.ttf");
text.setTypeFace(font);
I have an app that must show some Malayalam text. I used some Malayalam fonts and tried to use that through typeface. Though all the characters are shown, some of the symbols are not shown or are displaced. I use android 2.2. Can anyone guide me to solve this problem?
As Malayalam fonts are not supported by Android, you can still give that support to your Application.
For Marathi font copy font file to your asset folder. then use the following code.
TextView text_view = new TextView(this);
Typeface font = Typeface.createFromAsset(getAssets(), "MalayalamFont.ttf");
text_view.setTypeface(font);
text_view.setText("മലയാളം");
the same way u can give support for hindi....
We can add font files to the assets folder and from there we can load it. here is useful link for you..
Display malayalam text in my app