Показаны сообщения с ярлыком Разделы. Показать все сообщения
Показаны сообщения с ярлыком Разделы. Показать все сообщения

вторник, 9 мая 2023 г.

Разделы в текстовом документе LibreOffice Writer. Как вставить абзац или новый раздел между двумя разделами

Что такое разделы в Writer, я писал ранее

Наткнулся в нашей багзилле на запрос "Если два раздела вставлены друг за другом в документе вплотную, то между ними не получается вставить обычный абзац и соответственно нельзя добавить новый раздел. При нажатии Enter - соответствующий раздел просто расширяется".

Как оказалось, такие разделы таки можно раздвинуть в документе: установите текстовый курсор после последнего символа последнего абзаца в нужном разделе и нажмите сочетание клавиш Alt+Enter. Это действие создаст новый пустой абзац в основном тексте сразу после раздела.

среда, 5 августа 2020 г.

Релиз LibreOffice 7.0


The Document Foundation бъявил о релизе офисного пакета LibreOffice 7.0.
Скачать его можно по ссылке.
В этом выпуске отмечены следующие новшества:

Writer

  • Реализована расширенная нумерация списков. Теперь доступна нумерация вида:
  • [0045]
  • [0046]
  • Закладки и поля могут быть защищены от изменений
  • Улучшено управление вращение текста в таблицах
  • Реализована возможность создавать полупрозрачный шрифт
  • Закладки в тексте выделяются специальными непечатаемыми символами
  • Пустые поля для ввода ранее были невидимы, теперь они подсвечиваются серым непечатаемым фоном, как и все поля
  • Улучшены некоторые настройки автозамены

Calc

  • Добавлены новые функции RAND.NV() и RANDBETWEEN.NV() для генерации псевдослучайных чисел, которые не пересчитываются при каждом измении таблицы, в отличие от функций RAND() и RANDBETWEEN()
  • Функции, которые принимают регулярные выражения в качестве аргументов, теперь поддерживают флаги регистрозависимости
  • В функции TEXT() теперь поддерживается передача пустой строки в качестве второго аргумента для взаимодействия с другими реализациями. Если первый аргумент число или текстовая строка, которую можно преобразовать в число, то возвращается пустая строка. Если первым аргументом является текстовая строка, которую нельзя преобразовать в число, возвращается эта текстовая строка. В предыдущих выпусках пустая строка формата всегда приводила к ошибке Err:502 (недопустимый аргумент)
  • В функции OFFSET() необязательный 4-й параметр (Ширина) и 5-й параметр (Высота) теперь должны быть больше 0, если они заданы, иначе результатом будет ошибка Err:502 (недопустимый аргумент). В предыдущих выпусках отрицательное значение аргумента автоматически ошибочно принималось за значение 1.
  • Произведены оптимизации для улучшения производительности при заполнении ячеек рядами, при работе с автофильтром, при открытии файлов XLSX с большим количеством изображений
  • Сочетание клавиш [Alt] + [=] назначено на функцию SUM по умолчанию, по аналогии с Эксель

Impress/Draw

  • Исправлено положение верхнего и нижнего индексов в текстовых блоках
  • Реализована возможность создавать полупрозрачный шрифт
  • Произведены оптимизации для улучшения производительности для случаев ввода списков, для которых настроена анимация; при переходе в режим редактирования таблиц и улучшено время открытия некоторых PPT файлов
  • Реализована поддержка эффекта Glow
  • Реализована поддержка эффекта Soft edge

Math

  • Добавлена возможность задавать произвольный цвет символам в формате RGB. Используйте конструкцию вида color rgb 0 100 0 {symbols} в редакторе формулы, чтобы получить заданный цвет
  • Добавлен символ для преобразования Лапласа ℒ (U+2112)

Общие/Ядро

  • Добавлена поддержка формата ODF 1.3
  • В бэкенд kf5 (для работы в среде KDE) была добавлена начальная поддержка экранов высокого разрешения HiDPI
  • В PDF теперь можно экспортировать документы размерами более 200 дюймов
  • Механизм отрисовки, использующий OpenGL, был заменён на библиотеку Skia (для Windows версии)
  • Перерисованы Текстовые эффекты
  • Обновлена встроенная Галерея изображений
  • Большинство встроенных шаблонов презентаций для Impress были переработаны в формат слайда 16:9 вместо 4:3. Многие шаблоны получили поддержку стилей
  • Навигатор в Writer получил множество улучшений:
  • Категории, в которых нет элементов, теперь выделяются серым цветом
  • Все категории получили новые пункты контекстного меню для быстрого перехода к элементу, редактирования, переименования, удаления
  • Заголовки можно перемещать по структуре используя контекстное меню
  • Добавлен механизм отслеживания текущего положения курсора в документе с выделением соответствующего заголовка в Навигаторе
  • Панель навигации была заменена выпадающим списком
  • Добавлена всплывающая подсказка с количеством символов в тексте под соответствующим заголовком

Справка

  • Справка не будет отображаться нормально в IE11 (и никогда не отображалась, но сейчас об этом решили заявить официально)
  • Добавлены несколько новых страниц, посвященных Basic
  • Страницы справки теперь подсвечивают заголовки цветом в зависимости от того, от какого модуля справка

Фильтры

  • Улучшен фильтр импорта файлов EML+
  • Сохранение в формат DOCX теперь выполняется в версию 2013/2016/2019 вместо ранее использовавшейся 2007. Это улучшит совместимость с MS Word
  • Исправлены несколько ошибок при импорте/экспорте в форматы XLSX и PPTX

Интерфейс пользователя

  • Добавлена новая тема значков Sukapura. Она будет использоваться по умолчанию для macOs версии пакета. Но вы можете её выбрать в диалоге Параметры самостоятельно и на любой другой ОС
  • Темы значков Colibre и Sifr были обновлены
  • Тема значков Tango была удалена, как неподдерживаемая, однако остается доступной в виде расширения
  • Был обновлён брендинг программы. Это коснулось диалога установки в Windows, диалога «О программе», загрузочной заставки
  • Консоль презентации (доступна при наличии двух дисплеев) получила пару новых кнопок для повышения удобства работы
  • В стартовом центре были исправлены проблемы, связанные с ненужным скроллингом миниатюр в некоторых случаях

Локализация

  • Обновлены словари для африкаанс, каталанского, английского, латышского, словацкого, белорусского и русского языков
  • Словарь для русского языка был сконвертирован из KOI-8R в UT

вторник, 3 декабря 2019 г.

Разделы в текстовом документе LibreOffice Writer. Скрытие раздела по условию

О том, что такое разделы, как их создавать и редактировать, я коротко писал в этом посте.
У разделов есть чудесная возможность, которая может помочь автоматизировать всякие хитрые документы (у меня это договоры), в которых некоторый текст может меняться в зависимости от ключевых условий. Например, в договорах обычно прописывают порядок оплат. И аванс по договору может выплачиваться, а может и НЕ выплачиваться. Соответственно условия оплаты в этих двух случаях отличаются.
Что хотелось бы автоматизировать в данном случае: чтобы в шаблоне договора можно было в определённом месте написать ключевое слово "выплачивается"/"не выплачивается", в соответствии с чем определённый кусок текста в договоре становился бы таким, каким надо для каждого случая.
Давайте сделаем это в Writer! Система немного запутанная, но нужно просто понять логику и всё становится просто.
Завязан нужный нам функционал на такой штуке, как переменная, которая и будет управлять скрытием наших разделов с кусками нужного текста. Переменная - это термин из области программирования. Означает он (в нашем случае) - "имя, с которым может быть связано значение". Переменная эта создаётся внутри документа Writer и существует только и исключительно внутри конкретно этого документа Writer!
Чтобы создать переменную, установим курсор в тексте в нужное место и откроем диалог "Поля", используя пункт меню Вставка->Поле->Ещё поля или сочетание клавиш Ctrl+F2. На вкладке "Переменная" слева в списке "Тип" выделите "Задать переменную". В нижней части диалога в поле "Имя" задайте имя переменной (я задал слово аванс) и в поле "Значение" нужное первоначальное значение (я задал слово выплачивается). А теперь ВАЖНЫЙ нюанс! Если вы хотите работать со словами, то в правой части диалога в списке "Формат" вид переменной ДОЛЖЕН быть "Текст"!
Нажмите кнопку "Вставить". В тексте появится слово "выплачивается" подсвеченное, как и все поля, серым цветом.
Далее нам нужно настроить наши разделы так, чтобы они скрывались/отображались в зависимости от того, какое текущее слово-значение у нашей переменной "аванс".
Так как у нас два варианта текста, то и разделов с соответствующим текстом должно быть два. Тут однако есть нюанс! Когда раздел скрыт на его месте остается пустая строка-знак абзаца! Это неудобно: пустая строка в договорах не приветствуется, да и удалить эту псевдо-пустую строку можно легко. Причем эта пустая строка будет прыгать в зависимости от того, какой раздел скрыт.
Внимание! Скрытый раздел НИКАК в тексте не выделяется, вы должны помнить о том, что он существует!
Обойти это можно путем создания одного родительского раздела, внутри которого и разместить оба наших раздела с текстом.
Вставляем раздел, используя пункт меню Вставка->Раздел. Назовём его "основной". Жмём ОК.
Затем пишем текст, который относится к варианту "выплачивается" внутри раздела "основной". Вставляем две пустых строки после текста (нужно для удобства последующих манипуляций). Выделяем текст (без пустой строки после текста!) и опять выбираем пункт меню Вставка->Раздел. Задаём имя раздела "выплачивается". Жмём ОК. Вставится раздел внутри раздела.
Ставим курсор на вторую пустую строку после раздела "выплачивается" и пишем текст для варианта "не выплачивается". Опять вставляем две пустых строки после текста (нужно для удобства последующих манипуляций). Выделяем текст (без пустой строки после текста!) и опять выбираем пункт меню Вставка->Раздел. Задаём имя раздела "не выплачивается". Жмём ОК. Вставится второй раздел внутри раздела.
На скриншоте ниже красной рамкой показан раздел "основной", а цветами выделены разделы внутри раздела "основной". Как видно, в документе не очень-то очевидна структура этих разделов-внутри-раздела, ибо тоненькие серые линии сливаются по границам разделов.

Аккуратно удаляем все ненужные теперь пустые строки внутри раздела "основной".
Явно структуру разделов видно в диалоге "Редактирование разделов" из меню Формат->Разделы:
Следующий шаг - это настройка условия для отображения/скрытия наших внутренних разделов.
Вспоминаем, что у нас есть переменная с именем аванс. Далее в диалоге "Редактирование разделов" выбираем раздел "выплачивается", отмечаем флажком опцию "Скрыть" и в поле "При условии" пишем при каком собственно условии данный раздел будет скрыт: аванс!="выплачивается"
Выбираем второй раздел - "не выплачивается", аналогично отмечаем опцию "Скрыть", аналогично пишем условие для скрытия: аванс!="не выплачивается".
Обратите внимание на кавычки, которыми обрамляются наши ключевые слова - значения. Так как тип переменной у нас текст, то кавычки обязательны в данном случае. А сочетание != означает "НЕ РАВНО".
Жмём ОК. Смотрим на результат. Так как у нас переменная аванс при создании имела некое значение, а именно слово выплачивается, то раздел "не выплачивается у нас скрыт в соответствии с заданным ему условием! Дважды щёлкаем мышью на переменной в тексте, откроется диалог "Редактирование полей". В нём, в нижней части, в поле "Значение" пишем "не выплачивается". Жмём ОК и смотрим на результат. Виден стал раздел с именем "не выплачивается", а раздел "выплачивается" скрыт! Работает!
Что мне не нравится в этом варианте: я не могу создать вместо простой переменной список значений, от выбора значений в котором и менялось бы отображение/скрытие разделов. Вернее я могу создать список, вот только этот элемент документа не будет переменной, а условия можно задавать только переменным =(
Однако, это всё равно лучше, чем каждый раз руками переписывать шаблон или иметь кучу шаблонов на все варианты оплат. Можно иметь один универсальный шаблон, в котором задать столько вариантов тех же оплат, сколько нужно (а вариантов, к сожалению может быть вагон и тележка).

воскресенье, 12 февраля 2017 г.

Использование разделов в текстовом документе LibreOffice Writer

Что такое раздел в LibreOffice Writer? Это именованный текстовый блок,который позволяет защитить текст или часть текста от изменения, скрывать и показывать части текста, вставлять текст в несколько колонок внутри текста в одну колонку, использовать текст или объекты из других документов LibreOffice.
Два основных диалога, которые нужны для работы с разделами - это диалог Вставить раздел из меню Вставка - Раздел:
и диалог Редактирование разделов из меню Формат - Разделы:
Диалоги визуально немного похожи, однако первый служит для настройки вставляемого раздела, а второй для работы с уже существующими разделами.
Визуально в тексте документа раздел обрамлен серой непечатаемой рамкой:
При вставке раздела перед ним вставляется символ перевода строки, то есть раздел вставляется, как новый абзац. Не получится вставить раздел по середине слова или строки. 
Примечание: Учтите при этом, что если раздел скрыть, а знак перевода строки, который был создан при вставке раздела удалить, то раздел также будет удален.
Текст или объект внутри раздела можно форматировать точно так же, как основной текст или иные объекты документа, используя стили или ручное форматирование.
У меня была мысль применить эти разделы при работе с документами типа "договор", однако высянилась особенность, даже если раздел вставить в нумерованный список и задать тексту внутри него корректную нумерацию, то при скрытии раздела, нумерация не пересчитывается, а весь смысл работы с разделами в таком случае теряется.