Новые книги

Эта книга не просто исследует существующие тенденции и теории – она открывает читателю новый путь к трансформации бизнеса. Ставя на одну ступень потребительский опыт и инновационное лидерство, Брайан Солис подробно объясняет, как повысить эффективность бизнеса и степень вовлеченности потребителей, а также достичь желаемых взаимоотношений между компанией и ее клиентами. В его книге вы найдете ответы на вопросы, почему потребительский опыт имеет столь огромное значение и какое влияние он может оказать на будущее бизнеса в целом. На русском языке публикуется впервые.
Книга о том, как неукоснительное соблюдение корпоративной дисциплины может привести к скорым и неожиданно успешным результатам. Авторы уверены, что, несмотря на отсутствие неопровержимых эмпирических доказательств того, команды обеспечивают более высокие результаты эффективнее, чем не организованные в команды группы.

Вопрос и Ответ 32

Вопросы и Ответы


      32. Как во время работы приложения загружать новый шрифт?

      Большое количество одновременно установленных шрифтов замедляет работу Windows. Поэтому, при использовании специфических шрифтов, бывает полезно загружать их только на время работы приложения, а после работы удалять их из памяти. Для этого используются две функции:

      function AddFontResource(Filename: PChar): Integer; и

      function RemoveFontResource(Filename: PChar): Bool;

      единственным параметром им необходимо передавать имя файла шрифта. Первая функция возвращает количество, действительно, загруженных шрифтов. Фирма Microsoft рекомендует после загрузки или удаления шрифта посылать всем открытым окнам сообщение, об изменении списка доступных шрифтов.

      Пример:

      Использование гипотетического шрифта "newfont.ttf" с именем "New Font Name".

      ............

      {Загрузка нового шрифта}
      procedure TForm1.FormCreate(Sender: TObject);
      begin

        IF AddFontResource('newfont.ttf') <> 0 THEN

          SendMessage($FFFF, wm_FontChange, 0, 0);

      end;

      ............

      {Использование нового шрифта}
      procedure TForm1.FormPaint(Sender: TObject);
      begin

        Canvas.Font.Name := 'New Font Name';
        Canvas.TextOut(10, 10, 'Привет!');

      end;

      ............

      {Удаление нового шрифта из памяти}
      procedure TForm1.FormClose(Sender: TObject);
      begin

        IF RemoveFontResource('newfont.ttf') THEN

          SendMessage($FFFF, wm_FontChange, 0, 0);

      end;

      ............


...предыдущая страница следующая...
оглавление



"Вопрос и Ответ 32"
Copyright © "В помощь Веб-Мастеру" (Alexander D. Belyaev) 2005-2024 .
При перепечатке любого материала видимая ссылка на источник "В помощь Веб-Мастеру" и все имена, ссылки авторов обязательны!
Время генерации страницы: 0.009