سؤال

كيف يمكنك أن تفعل الخطوط الخاصة بك?أنا لا أريد الوزن الثقيل خوارزمية (freetype ، تروتايب, adobe, الخ) و يكون على ما يرام مع المقدمة مسبقا الخطوط النقطية.

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

سمعت يمكنني استخدام Gimp للقيام التقديم (مع بعض بعد تجهيز?)

أنا النامية جزءا لا يتجزأ من جهاز تلفزيون إل سي دي.انها حصلت على 32 بت المعالج ، ولكن لا أريد أن تشغيل لينكس (مبالغة - الكثير من التعليمات البرمجية/بيانات المساحة القليل جدا من الوظائف التي أود أن استخدام)

C.C++ إذا لزم الأمر ، ولكن ج المفضل.الخوارزميات و الأفكار/المفاهيم على ما يرام في أي لغة...

-آدم

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

المحلول

في بلادي القديمة demo-المشهد الأيام كثيرا ما درو كافة الأحرف في الخط في واحد كبير صورة نقطية.في التعليمات البرمجية, أنا تخزين (X,Y) إحداثيات كل حرف في الخط ، وكذلك عرض كل حرف.ارتفاع عادة ثابتة طوال الخط.إذا كان الفضاء ليست قضية ، يمكنك وضع جميع الشخصيات في الشبكة ، أن يكون ثابت المسافة بين أعلى الزاوية اليسرى من كل حرف.

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

أبسط النهج التي يمكن استخدامها الصغيرة ب/ث الخطوط هو تعريف الشخصيات مباشرة في التعليمات البرمجية:

LetterA  db 01111100b
         db 11000110b
         db 11000110b
         db 11111110b
         db 11000110b
         db 11000110b

على XPM تنسيق الملف هو في الواقع شكل ملف مع C الجملة التي يمكن استخدامها في حل الهجين لتخزين الشخصيات.

نصائح أخرى

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

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

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

ونحن قد استخدمت بنجاح في SRGP حزمة الخطوط.نحن لم نستخدم ثابت الخطوط, لذلك أنا لست متأكدا مما إذا كان يمكن النسبي الخطوط.

نحن نستخدم الخطوط النقطية التي تم إنشاؤها بواسطة anglecode#s الخطوط النقطية مولد :

http://www.angelcode.com/products/bmfont/

هذا هو جدا للاستخدام كما مخرجات XML والتي سوف يكون من السهل تحويل أي تنسيق البيانات التي تحتاج إليها.

ملاك المدونة bmfont يضيف أيضا تقنين أفضل التعبئة القديمة البديلة التي كان MudFont.

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