|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
05.04.2011, 05:32 | #1 |
Форумчанин
Регистрация: 29.09.2009
Сообщений: 587
|
Расчет количества пикселей для отображения записи
Здравствуйте.
Как можно рассчитать количество пикселей необходимое для отображения строчки текста с учетом того что размер шрифта = 10 и известен сам шрифт |
05.04.2011, 08:01 | #2 |
personality
Старожил
Регистрация: 28.04.2009
Сообщений: 2,882
|
canvas.textheight для высоты, canvas.textwidth для ширины, канвас сам посчитает эти параметры с учетом своего текущего canvas.font
также можно использовать canvas.textextent, но он просто объединяет 2 вышеназванных а если делается без канваса ,то можно создать его в памяти, на имейдже/битмапе, задать фонт, и проверить этими функциями то, что надо |
06.04.2011, 03:25 | #3 | |
Форумчанин
Регистрация: 29.09.2009
Сообщений: 587
|
Цитата:
|
|
06.04.2011, 04:06 | #4 |
Пользователь
Регистрация: 02.04.2011
Сообщений: 48
|
Можно к примеру так:
Код:
|
06.04.2011, 04:30 | #5 |
Форумчанин
Регистрация: 29.09.2009
Сообщений: 587
|
canvas вообще не применим.
Я программно рисую мемо в отчете FastReport. Все что знаю это количество символов которое будет записано в мемо и шрифт по умолчанию. |
06.04.2011, 10:01 | #6 |
personality
Старожил
Регистрация: 28.04.2009
Сообщений: 2,882
|
ну и сделай без реального канваса (какого-либо компонента), создай его в памяти, рассчитай и выкинь
|
06.04.2011, 10:13 | #7 | ||
Заблокирован
Регистрация: 27.05.2010
Сообщений: 1,099
|
Цитата:
Сначала сами себе создаем вымышленные трудности, потом их героически преодолеваем) Цитата:
Или ты валишь графику прямиком в видеобуфер, шарахаясь от WinAPI как черт от ладана ?) Открою тебе Америку : TCanvas - не более чем удобная оболочка для группы WinAPI-ф-ций И все что делают методы TCanvas.TextWidth/Height - вызывают WinAPI-ф-цию GetTextExtentPoint32 |
||
06.04.2011, 10:20 | #8 | |
Форумчанин
Регистрация: 29.09.2009
Сообщений: 587
|
Цитата:
Делаю так Код:
|
|
06.04.2011, 12:40 | #9 |
Форумчанин
Регистрация: 06.12.2010
Сообщений: 300
|
Тоесть этот код вы пихаете в скриптовый движок и он не понимает что такое TCanvas? А расширять возможности движка собственным кодом можно? Обычно такая возможность всегда присутствует.
|
06.04.2011, 13:00 | #10 |
Пользователь
Регистрация: 02.04.2011
Сообщений: 48
|
В FastReport-е у компонента TMemo есть свойство AutoWidth, чем оно для вас непригодно?
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Компонент для отображения смайлов | SERG1980 | Компоненты Delphi | 7 | 29.01.2012 02:54 |
Недостаточно памяти для отображения | Lukker | Microsoft Office Word | 4 | 11.04.2010 08:07 |
Firebird. Расчет количества. | artemavd | БД в Delphi | 40 | 24.11.2009 06:05 |
Расчет количества в БД Excell, использование сводных таблиц? | ITM | Microsoft Office Excel | 10 | 12.01.2009 14:41 |