نمایش نتایج 1 تا 8 از 8

نام تاپیک: کاراکتر لاندا در canvas دلفی

  1. #1

    کاراکتر لاندا در canvas دلفی

    سلام
    من از دلفی7 استفاده می کنم کسی می دونه چطور میشه از کاراکتر های خاص توی canvas دلفی و کلا توی دلفی استفاده کرد و اونا رو نمایش داد؟
    مثلا من می خوام توی canvas با تابع textout کاراکتر لاندا λ را چاپ کنم.

  2. #2

    نقل قول: کاراکتر لاندا در canvas دلفی

    توی دلفی 7 Canvas از یونیکد پشتیبانی نمیکنه. البته شاید اگر از کامپوننت های TNT استفاده کنید، کنترل های آنها (مثل فرم های TNT) دارای Canvas یونیکد هم باشند. در اون صورت، می تونید با درج کارکتر یونیکد مربوطه، آن را به درستی رسم کنید.

    در غیر این صورت، می تونید دنبال فونتی بگردید که این کارکتر را در خودش داشته باشه، و از اون فونت به عنوان فونت Canvas استفاده کنید.

    به طور کلی همچین مشکلاتی در دلفی های 2009 و 2010 که یونیکد هستند، وجود نداره.


    وَ سَيَعْلَمُ الَّذِينَ ظَلَمُوا [آل محمد حقهم] أَيَّ مُنْقَلَبٍ يَنْقَلِبُونَ - الشعراء (227)
    و ظالمین [حق آل محمد (ص) ] به زودی خواهند دانست که به کدام بازگشتگاه بازخواهند گشت.

  3. #3
    کاربر دائمی آواتار Zahed2008
    تاریخ عضویت
    آبان 1387
    محل زندگی
    تهران
    پست
    100

    Smile نقل قول: کاراکتر لاندا در canvas دلفی

    سلام دوست عزیز، من خودم یه بار از Image برای این مشکل استفاده کردم.

  4. #4
    کاربر دائمی آواتار مصطفی ساتکی
    تاریخ عضویت
    اردیبهشت 1386
    محل زندگی
    www.7khatcode.com
    پست
    1,193

    نقل قول: کاراکتر لاندا در canvas دلفی

    این حرف از شما بعید آقای کشاورز
    توی دلفی 7 Canvas از یونیکد پشتیبانی نمیکنه.
    فرم چیزی جز منابع ویندوز و DCهم متلق به فرمه.Canvas دلفی فقط یه Encapsulate محدود از توانایی API روی DC.
    در غیر این صورت، می تونید دنبال فونتی بگردید که این کارکتر را در خودش داشته باشه، و از اون فونت به عنوان فونت Canvas استفاده کنید
    نیاز به این کار نیست بجای او از DrawTextW استفاده کنید که Unicode رو هم واستون رسم می کنه
    آخرین ویرایش به وسیله مصطفی ساتکی : شنبه 04 اردیبهشت 1389 در 13:19 عصر

  5. #5

    نقل قول: کاراکتر لاندا در canvas دلفی

    نقل قول نوشته شده توسط Delphi_CAT مشاهده تاپیک
    بجای او از DrawTextW استفاده کنید که Unicode رو هم واستون رسم می کنه
    از توجه شما سپاسگزارم
    اما در Canvas دستوری به نام DrawTextW نداریم!
    یعنی من ندیدم کد من به شکل زیره :
    procedure TForm1.Button1Click(Sender: TObject);
    begin
    Image1.Canvas.TextOut(50,50,'λ');
    end;

  6. #6

    نقل قول: کاراکتر لاندا در canvas دلفی

    با تشکر از توجه همه ی دوستان فرمایش آقای کشاورز کاملا صحیح بود از فونت 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 کیبورد است.

  7. #7
    کاربر دائمی آواتار مصطفی ساتکی
    تاریخ عضویت
    اردیبهشت 1386
    محل زندگی
    www.7khatcode.com
    پست
    1,193

    نقل قول: کاراکتر لاندا در canvas دلفی

    اینقدر برای شما فک می زنم آخر میگی حرف فلانی درسته.دقت نمی کنی .می گم تابع API.
    DrawTextW سپس Canvas.handle می فرستی و Widechar و بقیه اطلاعاتو

  8. #8

    نقل قول: کاراکتر لاندا در canvas دلفی

    نقل قول نوشته شده توسط Delphi_CAT مشاهده تاپیک
    اینقدر برای شما فک می زنم آخر میگی حرف فلانی درسته.دقت نمی کنی .می گم تابع API.
    DrawTextW سپس Canvas.handle می فرستی و Widechar و بقیه اطلاعاتو
    از راهنمایی شما بسیار سپاسگزارم
    دوست گرامی اشکال از سطح علمی بنده است.
    تایید روش آقای کشاورز به معنای رد روش شما نیست اما چون بنده با win32 کار نکردم روش حرفه ای شما را نمی توانم پیاده کنم از روش ایشان استفاده کردم.

    در ضمن الان دلفی 2009 نصب کردم و بدون نیاز به هیچ کار خاصی مشکل رفع شد.
    آخرین ویرایش به وسیله صابر طهماسبی : یک شنبه 05 اردیبهشت 1389 در 21:05 عصر

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •