mehdico
سه شنبه 17 مرداد 1391, 20:25 عصر
سلام دوستان عزیز،
من به مشکلی برخوردم و چند سوال دارم :
توی پروژه جدیدم نیاز دارم تا یه فونت فارسی رو به صورت bitmap دربیارم طوری که تمام کارکترهای فارسی مورد نظرم به همراه شکل های مختلف هر کاراکتر (مثلا ت تـ ـتـ ـت) رو داشته باشم. برای این کار من هر کاراکتر رو با دستور زیر معرفی می کنم :
System.Text.RegularExpressions.Regex.Unescape("\u0628")
بعد اونرو با DrawString روی یه بیتمپ میکشم و با یه الگوریتم width تصویر کارکترم توی اون بیتمپ رو بدست میارم (چون مشخصات موقعیت و همچنین عرض هر کارکتر رو نیاز دارم تا بعدا توی یه برنامه دیگه بتونم از این مشخصات استفاده کنم تا این کارکتر رو از بیتمپ فراخوانی و چاپ کنم).
اما چون کدهای کارکترهای چند حالتی مثل ت یک کد بیشتر نیست باید برای هر کاراکتر این جوری یه چیزی بهش بچسبونم (مثلا کاراکتر کشیدگی) تا به حالت مورد نظرم دربیاد. اینجوری( ـت ) اما خوب می بینیم که کاراکتر اتصال (یا ـ) خودش یه عرض داره که شکل رو دچار مشکل میکنه!
System.Text.RegularExpressions.Regex.Unescape("\u0640") + System.Text.RegularExpressions.Regex.Unescape("\u0628")
آیا کارکتری هست که بتونم بدون تغییر قبل و یا بعد از حروف چندحالته قرارش بدم تا شکلشون عوض بشه؟ من کاراکتر اتصال مجازی رو استفاده کردم ولی جواب نداد.
در کل اگه راه بهتری برای ایجاد بیتمپ فونت به نظرتون میرسه لطفا کمکم کنید.
من به مشکلی برخوردم و چند سوال دارم :
توی پروژه جدیدم نیاز دارم تا یه فونت فارسی رو به صورت bitmap دربیارم طوری که تمام کارکترهای فارسی مورد نظرم به همراه شکل های مختلف هر کاراکتر (مثلا ت تـ ـتـ ـت) رو داشته باشم. برای این کار من هر کاراکتر رو با دستور زیر معرفی می کنم :
System.Text.RegularExpressions.Regex.Unescape("\u0628")
بعد اونرو با DrawString روی یه بیتمپ میکشم و با یه الگوریتم width تصویر کارکترم توی اون بیتمپ رو بدست میارم (چون مشخصات موقعیت و همچنین عرض هر کارکتر رو نیاز دارم تا بعدا توی یه برنامه دیگه بتونم از این مشخصات استفاده کنم تا این کارکتر رو از بیتمپ فراخوانی و چاپ کنم).
اما چون کدهای کارکترهای چند حالتی مثل ت یک کد بیشتر نیست باید برای هر کاراکتر این جوری یه چیزی بهش بچسبونم (مثلا کاراکتر کشیدگی) تا به حالت مورد نظرم دربیاد. اینجوری( ـت ) اما خوب می بینیم که کاراکتر اتصال (یا ـ) خودش یه عرض داره که شکل رو دچار مشکل میکنه!
System.Text.RegularExpressions.Regex.Unescape("\u0640") + System.Text.RegularExpressions.Regex.Unescape("\u0628")
آیا کارکتری هست که بتونم بدون تغییر قبل و یا بعد از حروف چندحالته قرارش بدم تا شکلشون عوض بشه؟ من کاراکتر اتصال مجازی رو استفاده کردم ولی جواب نداد.
در کل اگه راه بهتری برای ایجاد بیتمپ فونت به نظرتون میرسه لطفا کمکم کنید.