Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Как определить ширину строки? / 8 сообщений из 8, страница 1 из 1
11.03.2005, 17:48
    #32956513
Dmitry A.
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как определить ширину строки?
Как определить ширину строки в пикселях? Размер шрифта, название заданы.
В результате хотелось бы получить такую функцию: на вход - строка, ширина; на выходе - строка, ширина которой будет <= заданной (если исходная строка не шире - она обрубается и добавляется ...).
Возможно есть какой-то стандартный способ получить нужный мне результат?
Спасибо.
...
Рейтинг: 0 / 0
11.03.2005, 21:58
    #32956815
Max Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как определить ширину строки?
Нет стандартных средств. Это связано с тем, что в разных браузерах длина будет разной. Но можно определить длину "по-еврейски" я бы сказал. Для этого помести строку в контейнер, например в DIV, Panel или TableCell. Далее замеряешь яваскриптом ширину контейнера. И потом яваскриптом же обрубаешь нужную строку в нужном месте.
Ну где-то так например:
Ширина в пикселах ячейки с id=CellId:
CellId.offsetWidth
Max Pro
...
Рейтинг: 0 / 0
14.03.2005, 11:59
    #32958364
Dmitry A.
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как определить ширину строки?
А на стороне сервера можно что-то сделать?
...
Рейтинг: 0 / 0
14.03.2005, 13:25
    #32958649
Как определить ширину строки?
Max ProНет стандартных средств. Это связано с тем, что в разных браузерах длина будет разной. Но можно определить длину "по-еврейски" я бы сказал.

Иногда лучше жевать чем говорить
...
Рейтинг: 0 / 0
14.03.2005, 13:26
    #32958654
greenapple
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как определить ширину строки?
длина строки в браузере не используется, отображение разметки так устроено, что это не должно иметь никакого значения. В GDI+ есть в классе Graphics метод MeasureString, он используется в Windows forms как раз для целей измерения строк, - там нет никого перетекания, там это нужно.
Даже если вы будете его использовать, мерять вы будете на сервере, а показывать будет браузер, понятно, по другому.
Могу посоветовать использовать количество символов, например.
...
Рейтинг: 0 / 0
14.03.2005, 16:28
    #32959237
Dmitry A.
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как определить ширину строки?
А как этот System.Drawing.Graphics создать? Метод MeasureString у него не static, а public конструктора я не нашел.
...
Рейтинг: 0 / 0
15.03.2005, 01:18
    #32959874
greenapple
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как определить ширину строки?
ну да, ему нужен контекст, куда рисовать :)
вот так можно:

Bitmap bmp = new Bitmap(1, 1);
Graphics g = Graphics.FromImage(bmp);

потом только надо Dispose
...
Рейтинг: 0 / 0
15.03.2005, 11:28
    #32960341
Dmitry A.
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как определить ширину строки?
ОК, спасибо за ответы, буду пробовать.
...
Рейтинг: 0 / 0
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Как определить ширину строки? / 8 сообщений из 8, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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