سلام
من از دلفی7 استفاده می کنم کسی می دونه چطور میشه از کاراکتر های خاص توی canvas دلفی و کلا توی دلفی استفاده کرد و اونا رو نمایش داد؟
مثلا من می خوام توی canvas با تابع textout کاراکتر لاندا λ را چاپ کنم.
سلام
من از دلفی7 استفاده می کنم کسی می دونه چطور میشه از کاراکتر های خاص توی canvas دلفی و کلا توی دلفی استفاده کرد و اونا رو نمایش داد؟
مثلا من می خوام توی canvas با تابع textout کاراکتر لاندا λ را چاپ کنم.
توی دلفی 7 Canvas از یونیکد پشتیبانی نمیکنه. البته شاید اگر از کامپوننت های TNT استفاده کنید، کنترل های آنها (مثل فرم های TNT) دارای Canvas یونیکد هم باشند. در اون صورت، می تونید با درج کارکتر یونیکد مربوطه، آن را به درستی رسم کنید.
در غیر این صورت، می تونید دنبال فونتی بگردید که این کارکتر را در خودش داشته باشه، و از اون فونت به عنوان فونت Canvas استفاده کنید.
به طور کلی همچین مشکلاتی در دلفی های 2009 و 2010 که یونیکد هستند، وجود نداره.
وَ سَيَعْلَمُ الَّذِينَ ظَلَمُوا [آل محمد حقهم] أَيَّ مُنْقَلَبٍ يَنْقَلِبُونَ - الشعراء (227)
و ظالمین [حق آل محمد (ص) ] به زودی خواهند دانست که به کدام بازگشتگاه بازخواهند گشت.
سلام دوست عزیز، من خودم یه بار از Image برای این مشکل استفاده کردم.
این حرف از شما بعید آقای کشاورزفرم چیزی جز منابع ویندوز و DCهم متلق به فرمه.Canvas دلفی فقط یه Encapsulate محدود از توانایی API روی DC.توی دلفی 7 Canvas از یونیکد پشتیبانی نمیکنه.
نیاز به این کار نیست بجای او از DrawTextW استفاده کنید که Unicode رو هم واستون رسم می کنهدر غیر این صورت، می تونید دنبال فونتی بگردید که این کارکتر را در خودش داشته باشه، و از اون فونت به عنوان فونت Canvas استفاده کنید
آخرین ویرایش به وسیله مصطفی ساتکی : شنبه 04 اردیبهشت 1389 در 13:19 عصر
با تشکر از توجه همه ی دوستان فرمایش آقای کشاورز کاملا صحیح بود از فونت Symbol استفاده کردم حل شد
این هم کد:
procedure TForm1.Button1Click(Sender: TObject);
begin
Image1.Canvas.Font.Name:='Symbol';
Image1.Canvas.Font.Size:=20;
Image1.Canvas.TextOut(50,50,Edit1.Text);
end;کاراکتر لاندا هم که مورد نظر من بود معادل حرف L کیبورد است.
اینقدر برای شما فک می زنم آخر میگی حرف فلانی درسته.دقت نمی کنی .می گم تابع API.
DrawTextW سپس Canvas.handle می فرستی و Widechar و بقیه اطلاعاتو
از راهنمایی شما بسیار سپاسگزارم
دوست گرامی اشکال از سطح علمی بنده است.
تایید روش آقای کشاورز به معنای رد روش شما نیست اما چون بنده با win32 کار نکردم روش حرفه ای شما را نمی توانم پیاده کنم از روش ایشان استفاده کردم.
در ضمن الان دلفی 2009 نصب کردم و بدون نیاز به هیچ کار خاصی مشکل رفع شد.
آخرین ویرایش به وسیله صابر طهماسبی : یک شنبه 05 اردیبهشت 1389 در 21:05 عصر