Форум поддержки пользователей. LibreOffice, Apache OpenOffice, OpenOffice.org

Форум поддержки пользователей. LibreOffice, Apache OpenOffice, OpenOffice.org

7 Март 2021, 05:58 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
Новости: Вы можете задать вопрос по LibreOffice или Apache OpenOffice без регистрации, используя форму
 
   Начало   Помощь Поиск Войти Регистрация    задать вопрос  
Страниц: 1   Вниз
  Печать  
Автор Тема: Как проверить количество строк в ячейке. Writer  (Прочитано 6950 раз)
0 Пользователей и 1 Гость смотрят эту тему.
tka4enk0
Участник
**
Offline Offline

Сообщений: 5


« Стартовое сообщение: 21 Сентябрь 2014, 22:36 »

Доброго времени суток!
Есть необходимость в документе LibreOffice Writer для определенной ячейки таблицы узнать поместился ли текст в одну строку, а если не поместился, то остаток текста перенести в др. строку. Есть ли какое нибудь свойство  для объекта ячейка (SwXCell) в котором указывается количество строк в ячейке, или какой нибудь другой способ определить уместился ли текст в ячейке? Заранее спасибо.
Записан
rami
Гуру
*******
Offline Offline

Пол: Мужской
Сообщений: 3 061


iMac, LibreOffice и Apache OpenOffice


« Ответ #1: 22 Сентябрь 2014, 10:44 »

Есть необходимость в документе LibreOffice Writer для определенной ячейки таблицы узнать поместился ли текст в одну строку, а если не поместился, то остаток текста перенести в др. строку.
Если длина текста больше ширины столбца, то не вместившаяся часть автоматически переносится на новый "этаж", но фактически это одна и таже строка. Если вы хотите чтобы весь текст в ячейке был виден, поставьте автоподбор высоты строки. У меня он стоит по умолчанию.
Есть ли какое нибудь свойство  для объекта ячейка (SwXCell) в котором указывается количество строк в ячейке, или какой нибудь другой способ определить уместился ли текст в ячейке?
Нет такого свойства. Текст всегда помещается в ячейку, но не отображается полностью если длина текста больше ширины столбца и нет автоподбора высоты строки
Записан

Hasim
Форумчанин
***
Offline Offline

Сообщений: 754

Woe from wit


« Ответ #2: 22 Сентябрь 2014, 11:52 »

Вопрос поставлен так:
1. Есть некий макрос, вставляющий текст в ячейку таблицы Writer. (тема - Basic !!!)
2. Есть некая строка текста.
И сам вопрос: Как программно узнать, сколько строк будет видно в данной ячейке после вставки данного текста?
Записан
rami
Гуру
*******
Offline Offline

Пол: Мужской
Сообщений: 3 061


iMac, LibreOffice и Apache OpenOffice


« Ответ #3: 22 Сентябрь 2014, 12:58 »

Вопрос поставлен так:
1. Есть некий макрос, вставляющий текст в ячейку таблицы Writer. (тема - Basic !!!)
2. Есть некая строка текста.
И сам вопрос: Как программно узнать, сколько строк будет видно в данной ячейке после вставки данного текста?
1. Вставлял текст и макросом и в ручную, разницы ни какой.
2. Я брал как непрерывную последовательность букв, так и текст состоящий из предложений и параграфов, если стоит автоподбор высоты(а он стоит по умолчанию), то ячейка растягивается по высоте на весь текст.
Количество строк в ячейке — это не свойство ячейки, а свойство текста. Одна длинная строка в узкой ячейке превращается в одну "многоэтажную" строку, а сто строк — в сто "многоэтажных" строк. Можно в зависимости от шрифта, кегля и других параметров текста, посчитать сколько видимых "строк" будет при заданной ширине ячейки, но я не думаю, что речь шла об этом.
Записан

tka4enk0
Участник
**
Offline Offline

Сообщений: 5


« Ответ #4: 22 Сентябрь 2014, 15:28 »

то не вместившаяся часть автоматически переносится на новый "этаж", но фактически это одна и таже строка
Вот этого то я и хочу избежать. Текст должен переноситься на другую строку таблицы и тем более в другой столбец (извеняюсь что не описал этот момент). Таблица имеет сложную структуру с объединенными ячейками ((
Записан
tka4enk0
Участник
**
Offline Offline

Сообщений: 5


« Ответ #5: 22 Сентябрь 2014, 15:31 »

Количество строк в ячейке — это не свойство ячейки, а свойство текста.
Отлично, как можно получить это свойство идя от объекта ячейки. Вчера минут 40 смотрел в инспекторе свойства, ни чего похожего не нашел (
Записан
rami
Гуру
*******
Offline Offline

Пол: Мужской
Сообщений: 3 061


iMac, LibreOffice и Apache OpenOffice


« Ответ #6: 22 Сентябрь 2014, 16:16 »

Таблица имеет сложную структуру с объединенными ячейками
Выложите пример с двумя таблицами: первая с исходными данными, а вторая — что должно получиться.
Записан

tka4enk0
Участник
**
Offline Offline

Сообщений: 5


« Ответ #7: 22 Сентябрь 2014, 16:40 »

Первый пример с адресом ("Сведения о месте регистрации, месте пребывания") нужно чтоб из ячейки B1 текст пешел в ячейку А2


* 005_от_26_05_2014.odt (28.22 Кб - загружено 20 раз.)
Записан
Hasim
Форумчанин
***
Offline Offline

Сообщений: 754

Woe from wit


« Ответ #8: 22 Сентябрь 2014, 19:14 »

Первый пример с адресом ("Сведения о месте регистрации, месте пребывания") нужно чтоб из ячейки B1 текст пешел в ячейку А2
Это только шаблон выходного документа, заполняемый программно (?) значениями указанных переменных вида $$$АдресЗаявительФЛ$$$.
Проще изменить этот шаблон.
Но для проверки нужна полная программа заполнения.
Записан
tka4enk0
Участник
**
Offline Offline

Сообщений: 5


« Ответ #9: 22 Сентябрь 2014, 22:14 »

заполняемый программно (?) значениями указанных переменных вида
Да, так и есть. Но заполняется этот шаблон на стороне вебсервера как я понял средствами PHP. Т.е. набор переменных (так называемых меток фиксированный), их просто нужно подставить в определенное место текста.
Проще изменить этот шаблон.
Непонимающий. Думаю что нет. прийдется замарачиваться с настройками шрифта в тексте. Т.е. часть текста должна быть жирным ширифтом, а часть подчеркнутым.
Записан
Hasim
Форумчанин
***
Offline Offline

Сообщений: 754

Woe from wit


« Ответ #10: 23 Сентябрь 2014, 00:01 »

придется заморачиваться с настройками шрифта в тексте. Т.е. часть текста должна быть жирным шрифтом, а часть подчеркнутым.
Думаю, что не придется. Все шрифты уже заданы в шаблоне. А программа подставляет только "чисто" текст.
Если не будет 3-х, 4-х, ... много-строчных ячеек, которые надо разбрасывать по разным ячейкам, то особой проблемы переформатировать шаблон нет.
Записан
JohnSUN
Капитана в тот день называли на "ты"
Гуру
*******
Offline Offline

Пол: Мужской
Расположение: Киев
Сообщений: 2 764


Помогаю людям и компьютерам понимать друг друга


WWW
« Ответ #11: 23 Сентябрь 2014, 11:51 »

Не надо мудрить с переносом данных из ячейки в ячейку, доверьте форматирование Writer. Достаточно просто объединить ячейки A1, B1 и A2 в одну. В этой ячейке должен остаться текст
Сведения о месте регистрации, месте пребывания $$$АдресЗаявительФЛ$$$
(после слова "пребывания" для красоты можно вставить знак табуляции)
Абзацы в ячейках желательно выравнивать "по ширине".
Этого уже достаточно для изготовления документа по шаблону.
Записан

Владислав Орлов aka JohnSUN
Благодарить-не зазорно.
Подарить благо создателям офиса, нашему ресурсу, мне
Страниц: 1   Вверх
  Печать  
 
Перейти в:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.21 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!