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

نام تاپیک: گرفتن لیست charset ها

  1. #1
    کاربر دائمی
    تاریخ عضویت
    بهمن 1381
    محل زندگی
    شیراز
    پست
    123

    گرفتن لیست charset ها

    وقتی در object inspector ,
    font را باز میکنی(expand میکنی),
    یک گزینه charset داره
    چطور میشه لیست item های این combobox را به دست آورد

  2. #2
    بنیان گذار Barnamenevis آواتار مهدی کرامتی
    تاریخ عضویت
    اسفند 1381
    محل زندگی
    کرج، گلشهر
    سن
    46
    پست
    6,379
    برای یک فونت بخصوص یا لیست کل Charset‌ ها را میخواهید؟

  3. #3
    کاربر دائمی
    تاریخ عضویت
    بهمن 1381
    محل زندگی
    شیراز
    پست
    123
    charset های یک فونت خاص
    البته اگه ممکنه مورد دوم را هم بگین

  4. #4
    بنیان گذار Barnamenevis آواتار مهدی کرامتی
    تاریخ عضویت
    اسفند 1381
    محل زندگی
    کرج، گلشهر
    سن
    46
    پست
    6,379
    این کد را ببینید:
    type
    TNewTextMetricEx = packed record
    NewTextMetric: TNewTextMetric;
    FontSignature: TFontSignature end;

    TCharSetRec = packed record
    Name: string;
    ID: Integer end;

    const
    NumCharSets = 19;

    CharSets: array[0..NumCharSets - 1] of TCharSetRec = (
    (Name: 'ANSI_CHARSET'; ID: 0),
    (Name: 'DEFAULT_CHARSET'; ID: 1),
    (Name: 'SYMBOL_CHARSET'; ID: 2),
    (Name: 'SHIFTJIS_CHARSET'; ID: $80),
    (Name: 'HANGEUL_CHARSET'; ID: 129),
    (Name: 'GB2312_CHARSET'; ID: 134),
    (Name: 'CHINESEBIG5_CHARSET'; ID: 136),
    (Name: 'OEM_CHARSET'; ID: 255),
    (Name: 'JOHAB_CHARSET'; ID: 130),
    (Name: 'HEBREW_CHARSET'; ID: 177),
    (Name: 'ARABIC_CHARSET'; ID: 178),
    (Name: 'GREEK_CHARSET'; ID: 161),
    (Name: 'TURKISH_CHARSET'; ID: 162),
    (Name: 'VIETNAMESE_CHARSET'; ID: 163),
    (Name: 'THAI_CHARSET'; ID: 222),
    (Name: 'EASTEUROPE_CHARSET'; ID: 238),
    (Name: 'RUSSIAN_CHARSET'; ID: 204),
    (Name: 'MAC_CHARSET'; ID: 77),
    (Name: 'BALTIC_CHARSET'; ID: 186));

    function EnumProc(const EnumLogFontEx: TEnumLogFontEx;
    const NewTextMetricEx: TNewTextMetricEx; FontType: Integer;
    Strings: TStrings): Integer; stdcall;
    var
    I: Integer;
    ID: Integer;
    S: string;
    begin
    Strings.Clear;
    ID := EnumLogFontEx.elfLogFont.lfCharSet;
    S := Format('Unknown charset %d', [ID]);
    for I := 0 to NumCharSets - 1 do
    if CharSets[I].ID = ID then begin
    S := CharSets[I].Name;
    Break end;
    Strings.Add(S);
    Result := 1 end;

    procedure GetAvailableCharSets(const FaceName: string; CharSets: TStrings);
    var
    DC: THandle;
    LogFont: TLogFont;
    begin
    DC := GetDC(GetDesktopWindow);
    if DC <> 0 then
    try
    FillChar(LogFont, SizeOf(LogFont), 0);
    Move(FaceName[1], LogFont.lfFaceName, Length(FaceName));
    LogFont.lfCharSet := DEFAULT_CHARSET;
    EnumFontFamiliesEx(DC, LogFont, @EnumProc, LPARAM(CharSets),
    0);
    finally
    ReleaseDC(GetDesktopWindow, DC) end
    end;

    نحوه استفاده:
    GetAvailableCharSets('Arial Narrow Bold', Memo1.Lines);

تاپیک های مشابه

  1. لیست کامل charset ها
    نوشته شده توسط delphi developer در بخش طراحی وب (Web Design)
    پاسخ: 4
    آخرین پست: شنبه 20 خرداد 1385, 17:28 عصر
  2. سوال فوری! charset?
    نوشته شده توسط zoro21750 در بخش طراحی وب (Web Design)
    پاسخ: 5
    آخرین پست: سه شنبه 04 مرداد 1384, 06:44 صبح
  3. Mail Charset
    نوشته شده توسط arash63 در بخش PHP
    پاسخ: 0
    آخرین پست: سه شنبه 30 فروردین 1384, 13:23 عصر
  4. فاکس پرو و CharSet
    نوشته شده توسط rezaTavak در بخش Foxpro
    پاسخ: 5
    آخرین پست: یک شنبه 11 بهمن 1383, 23:33 عصر

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

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