بنام خدا
باسلام
آموزش نمایش فونت فارسی با LCD NOKIA 5510/3310
تصویری از برنامه دماسنج با فونت فارسی و ال سیدی نوکیا
توابع فونت فارسی قبلا توسط شخصی خیر برای LCD ها نوشته شده که اینجانب نیز برای این LCD کمی ان را بروز رسانی کردم،تا متن نمایش داده شود.
لازم به ذکر است این کتابخانه و فونت ها ساخته شده،با راه اندازهای این LCD که توسط کدویژن ساخته شده و در پست قبلی معرفی شده راه اندازی میشود . !
یعنی، ابتدا به مانند پست قبلی LCD به کدویژن معرفی میشود ،سپس برای راه اندازی سه کتابخانه که امروز معرفی میشود به برنامه الحاق میشود.
کتابخانه Graphic
مربوط به گرافیک ها و همچنین کشیدن اشکال هندسی در ال سیدی و .. استفاده میشود .(ک
ه در پست ها بعدی اموزش کشیدن اشکال هندسی داده میشود)
که باید کتابخانه Graphic.c ان از طریق پنجره project/configuration/add به برنامه اضافه شود.
کتابخانه Font
به کمک این کتابخانه و بسته ها الحاقی ان،قابلیت نمایش فارسی راه اندازی میشود ..
که باید کتابخانه font.c ان از طریق پنجره project/configuration/add به برنامه اضافه شود.
و همچنین باید در برنامه ادرس ان مشخص شود. مثل "include "FONT\Font.h#
کتابخانه فونت!
فعلا یک فونت فارسی برای انجام دادن کارها معرفی میشود و انشالله در پست های بعدی چند فونت دیگر معرفی میشود.
نحویه معرفی ان در برنامه "include "FONT\font\AF9x10.h#
اما مابعد از معرفی کتابخانه و پایه و راه اندازی ها لازم،باید نوع فونت،رنگ فونت،رنگ پس زمینه،فاصله بین کاراکترها،وضعیت فارسی انگلیسی برای نمایش متن مشخص کنیم
بدین منظور در تابع اصلی،ابتدا فونت را به کمک تابع "(
نوع فونت)
LcdFont" مشخص میکنیم . چون ما از فونت
AF9x10 استفاده میکنیم پس فونت را چنین مشخص می کنیم.
Please Login or Register to see this code
برای تایین
رنگ پس زمینه و
رنگ فونت نیز از دو تابع زیر استفاده می کنیم.
Please Login or Register to see this code
برای تایین
فاصله بین کاراکترها نیز از تابع زیر استفاده می کنیم(که ما ان را بر روی 1 قرار داده ایم)
Please Login or Register to see this code
اما برای اینکه بتوانیم فونت فارسی را بدرستی نمایش بدهیم باید به کمک تابع "()
SetLetter" نوع
فارسی نویسی یا انگلیسی نویسی را مشخص کنیم
بدنی منظور اگر بخواهیم متن فارسی نمایش بدهیم،باید قبل از ان از تابع "()SetLetter" به صورت زیر استفاده کنیم
Please Login or Register to see this code
اگر بخواهیم به انگلیسی مطلبی را نمایش بدیم باید قبل از ان از تابع "()SetLetter" به صورت زیر استفاده کنیم
Please Login or Register to see this code
اکنون همه چیز اماده می باشد، ومی توان متن فارسی را تایپ کرد! برای تایپ متن ما از تابع() DrawStringAt استفاده می کنیم. این تابع بدین شکل می باشد.
Please Login or Register to see this code
به عنوان مثال:
Please Login or Register to see this code
*رنگ ها یا BLACK می باشد یا WHITE .. (که وقتی به انگلیسی تایپ شود،خود نرم افزار متوجه ان میشود)
مثال های نسبتا خوبی در یک برنامه همراه با شبیه ساز و همراه با توضیحات لازمه،
اماده شده که می توانید از [External Link Removed for Guests]دانلود کنید.
کل کدهای مثال ها:
Please Login or Register to see this code
Please Login or Register to see this code
Please Login or Register to see this code
Please Login or Register to see this code
Please Login or Register to see this code
Please Login or Register to see this code
باتشکر.