Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.10.24;
Скачать: CL | DM;

Вниз

будет ли это работать для ANSI кодировки ?   Найти похожие ветки 

 
nika_ufc ©   (2004-09-19 16:35) [0]

Пользуюсь функций GetFontUnicodeRanges для извлечения число символов из шрифта. Как говорит название функций и его определение: The GetFontUnicodeRanges function returns information about which Unicode characters are supported by a font (Функция GetFontUnicodeRanges возвращает информацию, о том которые из Unicode символов поддерживаются шрифтом.).
Вопрос:
Означает ли это, что моя программа не правилна будет выводить информацию о числе символов для "не Unicode поддерживаемых" шрифтах ? например для шрифтах которые поддерживают только ANSI кодировку ?
Наблюдаю за программой, и по моему работает отлично для всех кодировок, а не должно бить из за определения.
Вот и код:
unit Unit1;

interface

uses
 Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
 Dialogs, StdCtrls;

type
 TForm1 = class(TForm)
   ListBox1: TListBox;
   procedure ListBox1Click(Sender: TObject);
   procedure FormCreate(Sender: TObject);
 private
   { Private declarations }
 public
   { Public declarations }
 end;

var
 Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.ListBox1Click(Sender: TObject);
var
 idx, sz: integer;
 strFont: string;
 glp: PGLYPHSET;
begin
 idx := ListBox1.ItemIndex;
 if idx < 0 then exit;
 strFont := Listbox1.Canvas.font.Name;
 Listbox1.Canvas.font.Name := listbox1.Items[idx];
 sz := GetFontUnicodeRanges(listbox1.Canvas.Handle, Nil);
 Getmem(glp, sz);
 GetFontUnicodeRanges(listbox1.Canvas.Handle, glp);
 Listbox1.Canvas.font.Name := strFont;
 Showmessage(intToStr(glp.cGlyphsSupported)+"*"+inttostr(glp.flAccel));
 FreeMemory(glp);

end;

procedure TForm1.FormCreate(Sender: TObject);
begin
    ListBox1.Items.Assign(Screen.Fonts);
end;

end.


 
nika_ufc ©   (2004-09-20 09:04) [1]

Прощу ответить проста - Да или Нет.



Страницы: 1 вся ветка

Текущий архив: 2004.10.24;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.042 c
14-1096530538
vecna
2004-09-30 11:48
2004.10.24
Друзья vs деньги или "Курсы личностного роста"


1-1097255076
Anwy
2004-10-08 21:04
2004.10.24
Изминение размера линейного масива


14-1096545927
Александр Иванов
2004-09-30 16:05
2004.10.24
Нужна консультация врача


1-1097488798
Mutilator
2004-10-11 13:59
2004.10.24
Как убить скроллбары у родительской формы fsMDIForm?


4-1095775154
tgrey
2004-09-21 17:59
2004.10.24
консольное приложение как модуль