سؤال

أريد أن استخدام الخطوط الخارجية في التطبيق.لقد حاولت إضافة جديدة fonts باستخدام AssetManager لكنه لم ينجح.أدناه هو قانون بلدي:

Typeface face;

face = Typeface.createFromAsset(getAssets(), "font.otf");

textview.setTypeface(face);

ولكن لا يظهر النص...

الرجاء مساعدتي مع هذا.

هل كانت مفيدة؟

المحلول

AFAIK, أندرويد لا يدعم أوبن.استخدام خط تروتايب بدلا من ذلك.


تحديث: على ما يبدو أوبن معتمد الآن على الأقل إلى حد ما.كان غير معتمد أصلا, لذلك سوف ترغب في اختبار الخط الخاص بك بدقة على أي إصدارات الروبوت التطبيق الخاص بك وسوف الدعم.

نصائح أخرى

في أجل الوصول إلى الخط لدينا بسهولة، نحن بحاجة إلى حزمة مع طلبنا بطريقة كود لدينا يمكن تحميل لاحقا. للقيام بذلك، ونحن إنشاء مجلد الخطوط في أصولنا مباشرة

وهذا قد يكون. XML الخاصة بك

<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<TextView
    android:id="@+id/DefaultFontText"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:textSize="30sp"
    android:text="Here is some text." />
<TextView
    android:id="@+id/CustomFontText"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:textSize="30sp"
    android:text="Here is some text.">
    </TextView>

وكتابة التعليمات البرمجية التالية في الصف. JAVA الخاص بك

Typeface tf = Typeface.createFromAsset(getAssets(),
            "fonts/BPreplay.otf");
    TextView tv = (TextView) findViewById(R.id.CustomFontText);
    tv.setTypeface(tf);

والروبوت التي يدعمها OTF (لست متأكدا من أي إصدار SDK لكنه يعمل بالتأكيد مع 1.6)، وكان يستخدم الخط آلة كاتبة OTF لفترة من الوقت ولكن جعل هو أي مكان بالقرب من دقيقة كما هو الحال مع نسخة TTF انتهى حتى باستخدام (عن طريق تحويل الخط على الانترنت). وكان الأساس في كل مكان (كانت بعض الحروف أعلى كاملة 2 بكسل من غيرها)، وعلى الهواتف LDPI مثل HTC الهشيم وتضخيم المشكلة بشكل كبير نظرا لبكسل أكبر.

وكنت أعاني من نفس المشكلة. وكان بلدي الخط لا يعمل في الروبوت إما لكني في حاجة للعمل. باستخدام محرر الخط، أنا نسخ الأحرف من وجهة نظري الخط إلى الخط الذي يأتي مع المثال FontSampler من الروبوت SRC-2_1. انها عملت تماما.

وبينما أنا لن أعترف بأن لي طريقة كانت موضع شك من الناحية الملكية الفكرية للعرض، لم أكن الرياح فعليا حتى باستخدام الخط الأصلي، حيث تم استبدال جميع الشخصيات وجميع الإشارات إلى الخط القديم حيث استبدلت كذلك . وقد حاولت "تبحث" في الطريقة التي تم بها تحديد الخطوط اثنين لكن مما لم كل مباراة المتغيرات الخط لا يعمل سواء. وذلك في نيد، كنت هيكل عظمي من الخط الأصلي كقالب للخط الجديد.

والروبوت يدعم كلا من اللوبي والصناديق الأشكال، لي خبرة كل منهما.

tv3 = (TextView)findViewById(R.id.tv1);
    Typeface typeFace = Typeface.createFromAsset(getAssets(), "fonts/TRAJANPRO-BOLD.OTF");
    tv3.setTypeface(typeFace);

وهذه هي الخطوة أنا استخدم لكلتا اللغتين الانجليزية والمحلية

استخدم Fontinator انها تدعم كشك OTF وTTF الخطوط

وهو الروبوت مكتبة تجعل من السهل، لاستخدام مخصص الخطوط.

https://github.com/svendvd/Fontinator

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top