উত্তর:
আপডেট 2020:
রেস ফোল্ডারের ভিতরে ফন্ট নামের একটি ফোল্ডার তৈরি করুন এবং আপনার ফন্টটি অনুলিপি করুন
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:fontFamily="@font/abc_font" />
প্রোগ্রাম্যাটিক ব্যবহারের জন্য:
textView.setTypeface(ResourcesCompat.getFont(context, R.font.abc_font))
ফাইল> নতুন> ফোল্ডার> সম্পদ ফোল্ডার নির্বাচন করুন
সমাপ্তি ক্লিক করুন
সম্পদে রাইট ক্লিক করুন এবং ফন্ট নামক একটি ফোল্ডার তৈরি করুন
আপনার ফন্ট ফাইলটি সম্পদ > ফন্টে রাখুন
আপনার পাঠ্যভিউয়ের ফন্টটি পরিবর্তন করতে নীচের কোডটি ব্যবহার করুন
TextView textView = (TextView) findViewById(R.id.textView);
Typeface typeface = Typeface.createFromAsset(getAssets(), "fonts/yourfont.ttf");
textView.setTypeface(typeface);
মাঠে কাস্টম ফন্ট পরিবার সেট করার অনেকগুলি উপায় রয়েছে এবং আমি নীচের মতো ব্যবহার করছি।
ফন্টগুলি সংস্থান হিসাবে যুক্ত করতে, অ্যান্ড্রয়েড স্টুডিওতে নিম্নলিখিত পদক্ষেপগুলি সম্পাদন করুন:
1) রেজোল্ড ফোল্ডারে রাইট ক্লিক করুন এবং নতুন> অ্যান্ড্রয়েড রিসোর্স ডিরেক্টরিতে যান। নতুন রিসোর্স ডিরেক্টরি উইন্ডো প্রদর্শিত হবে।
2) রিসোর্স ধরণের তালিকায় ফন্ট নির্বাচন করুন এবং তারপরে ওকে ক্লিক করুন।
দ্রষ্টব্য: রিসোর্স ডিরেক্টরিটির নাম অবশ্যই হরফ হতে হবে।
3) ফন্ট ফোল্ডারে আপনার ফন্ট ফাইল যুক্ত করুন।
আপনার এক্সএমএল ফাইলটিতে কাঙ্ক্ষিত দৃশ্যে ফন্ট যুক্ত করুন:
দ্রষ্টব্য: তবে তার জন্য আপনার নিম্নলিখিত জিনিসগুলির প্রয়োজন ছিল:
উপরে Android স্টুডিও 3.0 ক্যানারি।
আপনার ক্রিয়াকলাপ অ্যাপকম্প্যাটঅ্যাক্টিভিটি প্রসারিত করে।
আপনার গ্রেডল ফাইলটি এর মতো আপডেট করুন:
compileSdkVersion 26
buildToolsVersion "26.0.1"
defaultConfig {
minSdkVersion 19
targetSdkVersion 26
versionCode 1
versionName "1.0"
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
}
buildtoolsVersion
26 এর উপরে এবং সর্বনিম্ন targetSdkVersion
26 প্রয়োজন
classpath 'com.android.tools.build:gradle:3.0.0-beta4'
distributionUrl=https\://services.gradle.org/distributions/gradle-4.1-all.zip
আমার মনে হয় .tf ফাইলটি ডাউনলোড করার পরিবর্তে আমরা গুগল ফন্ট ব্যবহার করতে পারি। এটি প্রয়োগ করা খুব সহজ। কেবল আপনাকে এই পদক্ষেপগুলি অনুসরণ করতে হবে। পদক্ষেপ 1) আপনার প্রকল্পের লেআউট.এক্সএমএল এবং বৈশিষ্ট্যগুলিতে পাঠ্য দৃশ্যের ফন্ট পরিবার নির্বাচন করুন (রেফারেন্স স্ক্রিন শটটির জন্য সংযুক্ত)
পদক্ষেপ 2) ইন ফন্ট পরিবার আরও ফন্ট নির্বাচন করুন .. আপনার ফন্ট না থাকলে বিকল্প। তারপরে আপনি দেখতে পাবেন একটি নতুন উইন্ডো খোলা হবে, সেখানে আপনি আপনার প্রয়োজনীয় ফন্টটি টাইপ করতে পারেন এবং সেই তালিকা থেকে পছন্দসই ফন্টটি নির্বাচন করতে পারেন যেমন) নিয়মিত, বোল্ড, ইটালিক ইত্যাদি below নীচের চিত্রটিতে দেখানো হয়েছে।
পদক্ষেপ 3) তারপরে আপনি পর্যবেক্ষণ করতে পারবেন একটি ফন্ট ফোল্ডারটি আপনার নির্বাচিত ফন্ট xML ফাইলযুক্ত / রেজোল্টারে স্বয়ংক্রিয়ভাবে উত্পন্ন হবে।
তারপরে আপনি সরাসরি এই ফন্টের পরিবারকে এক্সএমএলে ব্যবহার করতে পারেন
android:fontFamily="@font/josefin_sans_bold"
বা প্রো ব্যাকরণগতভাবে আপনি ব্যবহার করে এটি অর্জন করতে পারেন
Typeface typeface = ResourcesCompat.getFont(this, R.font.app_font);
fontText.setTypeface(typeface);
হ্যালো এখানে অ্যান্ড্রয়েড এডিটেক্সটস এবং টেক্সটভিউতে ফন্টগুলি একবারে প্রয়োগ এবং পুরো প্রকল্পে প্রয়োগ করার জন্য আমাদের আরও ভাল উপায়।
সবার আগে আপনাকে ফন্ট ফোল্ডার তৈরি করতে হবে। এখানে পদক্ষেপগুলি রয়েছে।
1: (প্রকল্প ফোল্ডার) তারপরে অ্যাপ> src> প্রধানতে যান
2: মূল ফোল্ডারে 'সম্পদ / ফন্ট' নামের ফোল্ডার তৈরি করুন।
3: আপনার ফন্টগুলি ফন্ট ফোল্ডারে রাখুন। এখানে আমার 'মাভেনপ্রো-রেগুলার.টিএফ' রয়েছে
এডিটটেক্সটে কাস্টম ফন্টগুলি প্রয়োগ করার এবং এই পদ্ধতির সাহায্যে আপনি প্রতিটি ইনপুটটিতে ফন্ট প্রয়োগ করতে পারেন এর জন্য পদক্ষেপগুলি এখানে রয়েছে।
1: একটি ক্লাস MyEditText তৈরি করুন (আপনার পছন্দের নাম ...)
2: যা এডিটেক্সট প্রসারিত করে
3: আপনার ফন্ট প্রয়োগ করুন
এখানে কোড উদাহরণ;
public class MyEditText extends EditText {
public MyEditText(Context context, AttributeSet attrs, int defStyle) {
super(context, attrs, defStyle);
init();
}
public MyEditText(Context context, AttributeSet attrs) {
super(context, attrs);
init();
}
public MyEditText(Context context) {
super(context);
init();
}
private void init() {
if (!isInEditMode()) {
Typeface tf = Typeface.createFromAsset(getContext().getAssets(), "fonts/MavenPro-Regular.ttf");
setTypeface(tf);
}
}
}
এবং এখানে কোডটি এটি কীভাবে ব্যবহার করবেন তা এখানে রয়েছে।
MyEditText editText = (MyEditText) findViewById(R.id.editText);
editText.setText("Hello");
বা আপনার এক্সএমএল ফাইলে
<MyEditText
android:layout_width="match_parent"
android:layout_height="match_parent"
android:gravity="center"
android:textColor="#fff"
android:textSize="16dp"
android:id="@+id/editText"
/>
আমি আমার উত্তরটি অ্যান্ড্রয়েড-ও এবং অ্যান্ড্রয়েড স্টুডিও ২.৪ এর জন্য যুক্ত করতে চাই
নামক ফোল্ডার তৈরি করুন ফন্ট অধীনে মাঝামাঝি ফোল্ডার। আপনার প্রকল্পের উদাহরণ হিসাবে গুগল ফন্টে আপনি যুক্ত করতে চেয়েছিলেন এমন বিভিন্ন ফন্টগুলি ডাউনলোড করুন
আপনার এক্সএমএল ব্যবহারকারী ফন্ট পরিবারের ভিতরে
উদাহরণ:
<TextView
android:fontFamily="@font/indie_flower"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:padding="10dp"
android:text="@string/sample_text" />
৩. আপনি যদি প্রোগ্রামের পদ্ধতিতে চান তবে নিম্নলিখিত কোডটি ব্যবহার করুন
Typeface typeface = getResources().getFont(R.font.indie_flower);
textView.setTypeface(typeface);
আরও তথ্যের জন্য অ্যান্ড্রয়েড স্টুডিও ২.৪ সহ অ্যান্ড্রয়েডের জন্য আমার ব্লগ পোস্ট ফন্ট শৈলীর লিঙ্কটি অনুসরণ করুন
অ্যান্ড্রয়েড ওয়ে উপলব্ধ নতুন বৈশিষ্ট্য অনুসারে, এক্সএমএলে ফন্টের উত্স নতুন বৈশিষ্ট্য হিসাবে উপলভ্য।
ফন্টগুলি সংস্থান হিসাবে যুক্ত করতে, অ্যান্ড্রয়েড স্টুডিওতে নিম্নলিখিত পদক্ষেপগুলি সম্পাদন করুন:
1) রেজোল্ড ফোল্ডারে রাইট ক্লিক করুন এবং নতুন> অ্যান্ড্রয়েড রিসোর্স ডিরেক্টরিতে যান । নতুন রিসোর্স ডিরেক্টরি উইন্ডো প্রদর্শিত হবে।
2) রিসোর্স ধরণের তালিকায় ফন্ট নির্বাচন করুন এবং তারপরে ওকে ক্লিক করুন।
দ্রষ্টব্য: রিসোর্স ডিরেক্টরিটির নাম অবশ্যই হরফ হতে হবে।
3) ফন্ট ফোল্ডারে আপনার ফন্ট ফাইল যুক্ত করুন।
আপনি নতুন রিসোর্সের ধরণ, হরফের সাহায্যে হরফ সংস্থানগুলি অ্যাক্সেস করতে পারেন। উদাহরণস্বরূপ, একটি ফন্ট সংস্থান অ্যাক্সেস করতে, @ ফন্ট / মাইফন্ট, বা আর.ফন্ট.মাইফন্ট ব্যবহার করুন।
যেমন। Typeface typeface = getResources().getFont(R.font.myfont);
textView.setTypeface(typeface);
আপনার নিজস্ব কাস্টম ফন্টের বিভিন্ন সেট করতে আপনি সহজ এবং সাধারণ ইজিফন্টগুলি তৃতীয় পক্ষের লাইব্রেরিটি ব্যবহার করতে পারেনTextView
। এই লাইব্রেরিটি ব্যবহার করে আপনার সম্পদ / ফন্ট ফোল্ডারে ফন্ট ডাউনলোড এবং যুক্ত করার বিষয়ে চিন্তা করা উচিত নয়। টাইপফেস অবজেক্ট তৈরি সম্পর্কেও। আপনিও সম্পদ ফোল্ডার তৈরি করা থেকে মুক্ত থাকবেন।
কেবল:
TextView myTextView = (TextView)findViewById(R.id.myTextView);
myTextView.setTypeface(EasyFonts.robotoThin(this));
এই গ্রন্থাগারটি দ্বারা সরবরাহ করা অনেক ধরণের ফন্ট রয়েছে।
ফন্ট ফোল্ডারে ফন্টে প্রথম যুক্ত করুন। তারপরে এই লাইনটি অনক্রিট পদ্ধতিতে যুক্ত করুন
Typeface typeface = ResourcesCompat.getFont(getApplicationContext(), R.font.myfont);
mytextView.setTypeface(typeface);
এবং এখানে আমার এক্সএমএল
<TextView
android:id="@+id/idtext1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="7dp"
android:gravity="center"
android:text="My Text"
android:textColor="#000"
android:textSize="10sp"
/>
পাঠ্য ভিউতে ফন্টটি বরাদ্দ করতে:
TextView textView = (TextView) findViewById(R.id.your_textView);
final Typeface font = Typeface.createFromAsset(context.getAssets(), "fonts/your_font_name");
আপনার_ফন্ট_নামে ফন্টের এক্সটেনশন অন্তর্ভুক্ত রয়েছে।
আমি যেমন অ্যান্ড্রয়েডে আপনি খুব নতুন হন তবে এটি কিছুটা জটিল হতে পারে। আপনি কল করেছেন তা নিশ্চিত করুন:
TextView myTextView = (TextView) findViewById(R.id.textView);
Typeface typeface=Typeface.createFromAsset(getAssets(), "fonts/your font.ttf");
myTextView.setTypeface(typeface);
পদ্ধতি যেমন একটি পদ্ধতির মধ্যে onCreate
।
অ্যান্ড্রয়েড 8.0 (এপিআই 26) ফন্ট সম্পর্কিত নতুন বৈশিষ্ট্য চালু করেছে।
1) হরফ সংস্থান হিসাবে ব্যবহার করা যেতে পারে।
2) ডাউনলোডযোগ্য ফন্ট
আপনি যদি আপনার অ্যান্ড্রয়েড অ্যাপ্লিকেশনটিতে বাহ্যিক ফন্টগুলি ব্যবহার করতে চান তবে আপনি এপিকে ফন্ট ফাইল অন্তর্ভুক্ত করতে পারেন বা ডাউনলোডযোগ্য ফন্টগুলি কনফিগার করতে পারেন।
এপিএমে ফন্ট ফাইল সহ : আপনি ফন্ট ফাইলগুলি ডাউনলোড করতে পারেন, এগুলি পুনরায় / ফন্ট ফাইলারে সংরক্ষণ করতে পারেন, ফন্ট পরিবারকে সংজ্ঞায়িত করতে পারেন এবং ফন্ট পরিবারকে শৈলীতে ব্যবহার করতে পারেন।
সংস্থান হিসাবে কাস্টম ফন্টগুলি ব্যবহার করার বিষয়ে আরও তথ্যের জন্য দেখুন http://www.zoftino.com/android- using-custom-fouts
ডাউনলোডযোগ্য ফন্টগুলি কনফিগার করা : ফন্ট সরবরাহকারীর বিশদ সরবরাহ করে, ফন্ট সরবরাহকারী শংসাপত্র যুক্ত করুন এবং শৈলীতে ফন্ট ব্যবহার করুন font
ডাউনলোডযোগ্য ফন্টের আরও তথ্যের জন্য দেখুন http://www.zoftino.com/downloading-fouts-android
প্রথমে assets
ফোল্ডার তৈরি করুন তারপরে এতে ফোল্ডার তৈরি করুন fonts
।
তারপরে আপনি বেলো font
থেকে সেট করতে assets
বা directory
পছন্দ করতে পারেন :
public class FontSampler extends Activity {
@Override
public void onCreate(Bundle icicle) {
super.onCreate(icicle);
setContentView(R.layout.main);
TextView tv = (TextView) findViewById(R.id.custom);
Typeface face = Typeface.createFromAsset(getAssets(), "fonts/HandmadeTypewriter.ttf");
tv.setTypeface(face);
File font = new File(Environment.getExternalStorageDirectory(), "MgOpenCosmeticaBold.ttf");
if (font.exists()) {
tv = (TextView) findViewById(R.id.file);
face = Typeface.createFromFile(font);
tv.setTypeface(face);
} else {
findViewById(R.id.filerow).setVisibility(View.GONE);
}
}
}
অ্যাপ্লিকেশন / এসসিআর / মুখ্য / সম্পদগুলিতে সম্পদ ফোল্ডারে আপনার ফন্টগুলি যুক্ত করুন এটির মতো একটি কাস্টম পাঠ্যদর্শন করুন:
class CustomLightTextView : TextView {
constructor(context: Context) : super(context){
attachFont(context)
}
constructor(context: Context, attrs: AttributeSet): super(context, attrs){
attachFont(context)
}
constructor(context: Context, attrs: AttributeSet?, defStyleAttr: Int) : super(context, attrs, defStyleAttr) {
attachFont(context)
}
fun attachFont(context: Context) {
this.setTypeface(FontCache.getInstance().getLightFont(context))
}
}
ফন্টক্যাচি যুক্ত করুন: যাতে আপনাকে বার বার টাইপফেস তৈরি করতে না হয়:
class FontCache private constructor(){
val fontMap = HashMap<String,Typeface>()
companion object {
private var mInstance : FontCache?=null
fun getInstance():FontCache = mInstance?: synchronized(this){
return mInstance?:FontCache().also { mInstance=it }
}
}
fun getLightFont(context: Context):Typeface?{
if(!fontMap.containsKey("light")){
Typeface.createFromAsset(context.getAssets(),"Gotham-Book.otf");
fontMap.put("light",Typeface.createFromAsset(context.getAssets(),"Gotham-Book.otf"))
}
return fontMap.get("light")
}
}
এবং আপনি শেষ!
পিএসএফ থেকে অ্যান্ড্রয়েড হে, আপনি সরাসরি ফন্টগুলি যুক্ত করতে পারেন।
সম্পদ ফোল্ডারে হরফগুলি রাখুন তারপর ফন্টফ্যামিলি প্রয়োগ করুন: '' আপনার ফন্টগুলি
নতুন পাঠকদের জন্য
আপনি এই লাইব্রেরিটি গ্লোসি কাস্টম ফন্ট দর্শন ব্যবহার করতে পারেন
গ্রেড নির্ভরতা
dependencies{
compile 'io.gloxey.cfv:custom-font-views:1.0.2'
}
ব্যবহারবিধি?
ফোল্ডার সম্পদ -> ফন্ট তৈরি করুন । আপনার ফন্টগুলি ফন্ট ফোল্ডারে অনুলিপি করুন ।
সম্পত্তি অ্যাপ্লিকেশন ব্যবহার করুন: ফন্ট_নাম = "ফন্ট_নাম_স্ট্রিং" ভিউতে ফন্ট প্রয়োগ করতে।
উদাহরণ
<!--Font Names in srings.xml-->
<string name="aadhunik">aadhunik.ttf</string>
<string name="kung_fool">kungfool.ttf</string>
<string name="skrova">skrova.otf</string>
<string name="painting_in_the_sun_light">painting_in_the_sun_light.ttf</string>
<!--Include views in layout.xml-->
<io.gloxey.cfv.CFTextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center"
android:text="Aadhunik"
android:textColor="#ff00"
android:textSize="40sp"
app:font_name="@string/aadhunik" />
<io.gloxey.cfv.CFButton
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Kung Fool"
android:textColor="#154748"
app:font_name="@string/kung_fool" />
<io.gloxey.cfv.CFEditText
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center"
android:text="Hello world"
android:textSize="30sp"
app:font_name="@string/skrova" />
<io.gloxey.cfv.CFCheckBox
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:text="Painting In The Sun Light"
android:textSize="30sp"
app:font_name="@string/painting_in_the_sun_light" />