#0
by supervk
Как сделать перенос текста по буквам в ячейке табличного документа? Есть этикетка (табличный документ), в которой область с названием. Это название размещается в ячейке с высотой в две строки. Названия длинные, надо, чтобы они разбивались на две строки по ширине ячейки, но не по словам, а по буквам. Без делений по слогам. Т.е. например Колбаса импортная вкусная должно разделиться на две строки таким образом: Колбаса импор| тная вкусная | Шрифт НЕ моноширинный, поэтому просчитать и заранее программно разбить на две строки через XX символов не удаётся (точнее, я не знаю как). Как, всё-таки это сделать? Подскажите, пожалуйста.
#1
by mehfk
"Шрифт НЕ моноширинный, поэтому просчитать и заранее программно разбить на две строки через XX символов не удаётся (точнее, я не знаю как)." Посчитай, сколько каджого символа твоего алфавита может войти в одну строку. И вычисли "коэффициент ширины", например к пробелу. Зная что в строку может уместиться n пробелов...
#2
by МимохожийОднако
Синтаксис: СтрДлина(<Строка>) Параметры: Тип: Строка. Исходная строка. Возвращаемое значение: Тип: Число. Длина строки. Описание: Получает количество символов в строке. Доступность: Тонкий клиент, веб-клиент, сервер, толстый клиент, внешнее соединение. Пример: ДлинаНаименования = СтрДлина(Товар.Наименование);
#4
by supervk
Ага, спасибо, mehfk, пока это единственный вариант. Только в сочетании с вариантом, предложенным mehfk , т.к. заранее неизвестно, сколько символов до конца края ячейки "Переносить" переносит по словам. А мне надо по буквам. т.е. чтобы целое слово разбивалось на две строки.
#5
by mistеr
Можно написать ВК, которая будет рассчитывать точно с помощью функций WinAPI. Для конкретного текста, шрифта и разрешения принтера.
#6
by supervk
В общем, как я понял, простых решений (включить нужную галочку) не будет. Всем спасибо за помощь.
#7
by mehfk
Вы уверны, что без ВК никак? Как-бэ текст переносит не ОС и не драйвер принтера. ПроверитьВывод и без ВК работает, не так ли? Просто это решение будет настолько тормозно, что автору лучше сделать так, как в мысль дана.
#10
by mistеr
Я не утверждал, что никак. Я предложил как одно из решений. способ не оптимальный. В худших случаях будет ошибаться, а значит придется брать запас по длине строки, часть места будет пропадать.
#11
by Torquader
Проще всего перейти на моноширинный шрифт или вообще печатать этикетку командами принтера - тогда ничего подгонять будет не надо - там сразу известно, сколько символов может быть в строке. Перенос по буквам выглядит не очень. Сразу вспоминается: градский".
#13
by Torquader
Зато гарантированно будут заполнены строки. P.S. из файла ttf-шрифта можно узнать размеры символов, просто прочитав его силами самой 1С.
Тэги: 1С 8
Ответить:
Комментарии доступны только авторизированным пользователям
Похожие вопросы 1С
- Перенос строк в ячейке табличного поля
- Цвет текста в ячейке табличного документа.
- Перенос форматированного текста из .doc в таблицу 1С 7.7
- Штатный перенос из ЗиК 7.7 в ЗУП 8.1 - не переносит пол/инн/пфр. Это нормально!?
- Перенос 1.6 - 2.0. Перенос проводок. Мысли...
- перенос текста в макете.
- Перенос не переносит!
- V8: 8.3 - можно ли выделить часть текста в ячейке табличного документа?
- Перенос логов базы при переносе сервера 1С
- УФ перенос текста колонки в таблице на форме
- Перенос 77 бух -83 бп, какая рабочая связка релизов для переноса
- Искажение текста при переносе текста из Word
В этой группе 1С
- Сначала соединение потом отбор (ГДЕ)?
- Посоветуйте, как лучше всего реализовать иерархию в табличой части?
- СКД склеить результат в 1 строку
- отчет СКД с своим макетом
- v8: Что использовать на клиенте вместо Таблицы значений?
- Как найти шаблон типового отчета в конфе?
- Выгрузка из SAP в XML формате.
- Как освободить память, занимаемую SQL без перезапуска службы сервера?
- Ввод на основании нескольких документов
- Как запросом вернуть наиболее встречающееся значение?
- Поле HTML документа - как вывести на печать ?
- вылетает конфигуратор при сохранении
- Разные пути через tracert для двух компьютеров
- ошибка при обновлении УТ 11
- Как вызвать окно выбора ХарактеристикиНоменклатуры для конкретной номенклатуры?
- УТ 11 ЕНВД
- Ошибка "Поле объекта не обнаружено (ТипКода)"
- Что влияет на скорость записи регистров накопления.
- Конвертация данных. Обновление номенклатуры через значения свойств объектов
- 1С 8: Обычное приложение. Как прочитать параметр переданный при открытии формы?