Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Длина строки в пикселях / 18 сообщений из 18, страница 1 из 1
22.10.2019, 13:20
    #39879882
Женя32
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Длина строки в пикселях
Здравствуйте!
Подскажите, пожалуйста, как получить длину строки в пикселях?
...
Рейтинг: 0 / 0
22.10.2019, 13:27
    #39879887
Dimitry Sibiryakov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Длина строки в пикселях
DrawText(DT_CALCRECT)
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
22.10.2019, 14:03
    #39879910
Женя32
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Длина строки в пикселях
Dimitry SibiryakovDrawText(DT_CALCRECT)

А как использовать?
...
Рейтинг: 0 / 0
22.10.2019, 14:15
    #39879921
Док
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Длина строки в пикселях
...
Рейтинг: 0 / 0
22.10.2019, 14:17
    #39879926
Dimitry Sibiryakov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Длина строки в пикселях
Женя32А как использовать?

Так же как и любую другую функцию: вызвать из кода.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
22.10.2019, 14:21
    #39879930
Квейд
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Длина строки в пикселях
...
Рейтинг: 0 / 0
22.10.2019, 14:24
    #39879933
Квейд
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Длина строки в пикселях
Очевидно, что TextWidth cчитает длину аппроксимативно (поэтому и быстро), и результат не всегда верен
...
Рейтинг: 0 / 0
22.10.2019, 14:50
    #39879955
Женя32
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Длина строки в пикселях
КвейдОчевидно, что TextWidth cчитает длину аппроксимативно (поэтому и быстро), и результат не всегда верен
Это точно, результат разный.
Код: pascal
1.
s_len:=Canvas.TextWidth(Edit1.Text)
...
Рейтинг: 0 / 0
22.10.2019, 14:57
    #39879961
Женя32
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Длина строки в пикселях
Dimitry SibiryakovDrawText(DT_CALCRECT)

Так?:
Код: pascal
1.
s_len:=DrawText(Edit1.Text)
...
Рейтинг: 0 / 0
22.10.2019, 15:14
    #39879983
kealon(Ruslan)
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Длина строки в пикселях
Женя32,

ээээ..., стесняюсь спросить, а Canvas у вас чей?
...
Рейтинг: 0 / 0
22.10.2019, 15:50
    #39880023
Женя32
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Длина строки в пикселях
kealon(Ruslan)Женя32,

ээээ..., стесняюсь спросить, а Canvas у вас чей?
Так?:
Код: pascal
1.
2.
3.
4.
var
  vbmapRs: TBitmap;
.....
 s_len:=vbmapRs.Canvas.DrawText(Edit1.Text)


Я не пользовался этой функцией, поэтому не могу понять...
...
Рейтинг: 0 / 0
22.10.2019, 16:26
    #39880042
Dimitry Sibiryakov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Длина строки в пикселях
Женя32Я не пользовался этой функцией, поэтому не могу понять...

Для понимания функций, которыми не пользовался, есть клавиша F1.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
22.10.2019, 16:45
    #39880045
Женя32
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Длина строки в пикселях
Dimitry SibiryakovДля понимания функций, которыми не пользовался, есть клавиша F1.

Эта клавиша ничего не дает, справка не запускается......
...
Рейтинг: 0 / 0
22.10.2019, 16:56
    #39880052
wadman
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Длина строки в пикселях
Женя32Dimitry SibiryakovДля понимания функций, которыми не пользовался, есть клавиша F1.

Эта клавиша ничего не дает, справка не запускается......
Это провал.
...
Рейтинг: 0 / 0
22.10.2019, 17:45
    #39880065
Ghost Writer
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Длина строки в пикселях
Женя32Я не пользовался этой функцией, поэтому не могу понять...как не пользовался. вот же https://www.sql.ru/forum/1317800/drawtext-zadat-parametry
...
Рейтинг: 0 / 0
22.10.2019, 19:26
    #39880095
kealon(Ruslan)
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Длина строки в пикселях
КвейдДокЖеня32,

http://docs.embarcadero.com/products/rad_studio/delphiAndcpp2009/HelpUpdate2/EN/html/delphivclwin32/Graphics_TCanvas_TextWidth.html TextWidth бывает опасен

https://www.sql.ru/forum/1220406/canvas-textwidth-vydaet-nevernuu-shirinu-stroki
Женя32, Квейд

странно очень если правда, api функция которая вызывается в TextWidth у меня в движок входила, и проблем с ней не было таких на всех проверенных шрифтах и трансформах

Квейд,
а GetOutlineTextMetrics не пробовал вызывать по шрифту, с которым косячит?
...
Рейтинг: 0 / 0
23.10.2019, 10:19
    #39880302
Квейд
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Длина строки в пикселях
Женя32Dimitry SibiryakovДля понимания функций, которыми не пользовался, есть клавиша F1.

Эта клавиша ничего не дает, справка не запускается......
Это фиаско, братан
...
Рейтинг: 0 / 0
23.10.2019, 10:22
    #39880305
Квейд
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Длина строки в пикселях
kealon(Ruslan)Квейдпропущено...
TextWidth бывает опасен

https://www.sql.ru/forum/1220406/canvas-textwidth-vydaet-nevernuu-shirinu-stroki
Женя32, Квейд

странно очень если правда, api функция которая вызывается в TextWidth у меня в движок входила, и проблем с ней не было таких на всех проверенных шрифтах и трансформах
Возможно, были проблемы в неких метаданных шрифта, поэтому косячил TextWidth
DrawText, я так понимаю, при вызове реально обсчитывает кривые, поэтому дает верный результат, хоть и работает медленнее
...
Рейтинг: 0 / 0
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Длина строки в пикселях / 18 сообщений из 18, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]