Windows
Когда мои программы работают на системах с установленными маленькими шрифтами, я получаю странный вид моей формы. К примеру, расположенные на форме компоненты Label становятся малы для размещения указанного теста, обрезая его в правой или нижней части. StringGrid не осуществляет положенного выравнивания и т.д.
Попробуй следующий код. Он масштабирует как размер формы, так и размер шрифтов. Вызывай его в Form.FormCreate. Надеюсь это поможет.
- Подробности
- Родительская категория: Шрифты, языки, кодировки, регионарные стандарты
- Категория: Шрифты и файлы шрифтов
Сразу рассмотрим плюсы и минусы помещения каждой буквы в отдельное изображение!
Плюсы :
1.Более быстрая отрисовка (так как ищется только номер картинки).
2.Буквы рисуются аккуратно, на одинаковом расстоянии друг от друга.
- Подробности
- Родительская категория: Шрифты, языки, кодировки, регионарные стандарты
- Категория: Шрифты и файлы шрифтов
Code: |
procedure TConsole.FontChanged(Sender: TObject); var DC: HDC; Save: THandle; Metrics: TTextMetric; Temp: string; begin if Font.Handle <> FOldFont.Handle then begin DC := GetDC(0); Save := SelectObject(DC, Font.Handle); GetTextMetrics(DC, Metrics); SelectObject(DC, Save); ReleaseDC(0, DC); if not (((Metrics.tmPitchAndFamily and ff_Modern) <> 0) and ((Metrics.tmPitchAndFamily and $01) = 0)) then begin Temp := 'TConsole: ' + Font.Name + ' не является шрифтом с фиксированной шириной'; Font.Name := FOldFont.Name; { Возвращаем предыдущие атрибуты шрифта } raise EInvalidFont.Create(Temp); end; SetMetrics(Metrics); end; FOldFont.Assign(Font); if csDesigning in ComponentState then InternalClrScr; end; |
- Подробности
- Родительская категория: Шрифты, языки, кодировки, регионарные стандарты
- Категория: Шрифты и файлы шрифтов
function GetFontResourceInfoW (FontPath : PWideChar; var BufSize : DWORD; FontName : PWideChar; dwFlags : DWORD) : DWORD; stdcall; external 'GDI32.DLL';
1-ый параметр - указатель на Wide-строку, содержащую путь к файлу шрифта;
2-ой параметр - указатель на DWORD-переменную, содержащую размер выходного буфера. После выполнения функции в этой переменной будет содержаться необходимая длина буфера;
3-ий параметр - указатель на буфер, в случае успешного выполнения будет содержать Wide-строку имени шрифта;
4-ый параметр - какие-то флаги, если рыться в функции GetFontResourceInfoW особым случаем является когда dwFlags=4, но зачем это, я так и не понял - в результате будет возвращен тот же путь к файлу; ну а для получения имени шрифта флаг должен быть равен 1.
- Подробности
- Родительская категория: Шрифты, языки, кодировки, регионарные стандарты
- Категория: Шрифты и файлы шрифтов
Очень-очень странные эти англоязычные люди... И счёт времени у них странный!
Вот так у них наступает полдень:
11:00 AM (11 утра)
12:00 PM <- полдень
1:00 PM (13 часов)
Итак 12 PM - это полдень, а 12 AM - это полночь
- Подробности
- Родительская категория: Windows
- Категория: Системная дата и время
Работа с КАЗАХСКИМИ ШРИФТАМИ.
Здравствуйте Уважаемые Господа Програмисты.
Моя небольшая статья будет, скорее всего, интересна програмистам из региона - КАЗАХСТАН.
Так как програмисты проживающиее и работающие в этом регионе чаще всего встречаются
с проблемой вывода нестандартных КАЗАХСКИХ ШРИФТОВ.
- Подробности
- Родительская категория: Шрифты, языки, кодировки, регионарные стандарты
- Категория: Шрифты и файлы шрифтов
Code: |
function LastInput: DWord; var LInput: TLastInputInfo; begin LInput.cbSize := SizeOf(TLastInputInfo); GetLastInputInfo(LInput); Result := GetTickCount - LInput.dwTime; end;
//Example: procedure TForm1.Timer1Timer(Sender: TObject); begin Label1.Caption := Format('System Idle since %d ms', [LastInput]); end;
// The GetLastInputInfo function retrieves the time // of the last input event. // Minimum operating systems: Windows 2000 |
- Подробности
- Родительская категория: Windows
- Категория: Системная дата и время
Я также долго мучился над проблемой решения этого вопроса, и ниже я излагаю свои выводы на основании моих многочисленных экспериментов.
Свойство, отвечающее за размер шрифта важно, но не менее важны в этом вопросе и другие характеристики.
- Подробности
- Родительская категория: Шрифты, языки, кодировки, регионарные стандарты
- Категория: Шрифты и файлы шрифтов
Вот так можно узнать дату/время загрузки или завершения работы системы (т.е. когда компьютер был выключен или перезагружен последний раз):
- Подробности
- Родительская категория: Windows
- Категория: Системная дата и время
Эти установки должны показать шрифты совместимые либо с принтером либо с экраном. В примере диалог Windows ChooseFont вызывается напрямую чтобы показать список шрифтов, совместимых одновременно и с экраном и с принтером.
- Подробности
- Родительская категория: Шрифты, языки, кодировки, регионарные стандарты
- Категория: Шрифты и файлы шрифтов
Ниже приведён код обработчика события OnClick для Button1. Он показывает диалоговое окошко с текстом в следующем формате
Windows started on Thursday, February 10, 2000 at 11:42:46 AM
Its been up for 0 days, 3 hours, 22 minutes, 54 seconds
- Подробности
- Родительская категория: Windows
- Категория: Системная дата и время
Страница 32 из 42