Как строка, помеченная как выделенная жирным шрифтом в файле Flat 1000 * (fods) Libre Office? - PullRequest
0 голосов
/ 14 февраля 2020

Просмотр в необработанном виде XML из файла .fods:

  <table:table-column table:style-name="co1" table:default-cell-style-name="ce17"/>
  <table:table-row table:style-name="ro1">
    <table:table-cell table:style-name="ce15" office:value-type="string" calcext:value-type="string">
      <text:p>John Smith</text:p>
    </table:table-cell>
  </table:table-row>
  <table:table-row table:style-name="ro2">
    <table:table-cell table:style-name="ce16" office:value-type="string" calcext:value-type="string">
      <text:p>(123) 456-7890</text:p>
    </table:table-cell>
  </table:table-row>
  <table:table-row table:style-name="ro2">
    <table:table-cell office:value-type="string" calcext:value-type="string">
      <text:p>123 Main Street</text:p>
    </table:table-cell>
  </table:table-row>
  <table:table-row table:style-name="ro2">
    <table:table-cell office:value-type="string" calcext:value-type="string">
      <text:p>Anywhere, ZZ 12345-6789</text:p>
    </table:table-cell>
  </table:table-row>
  <table:table-row table:style-name="ro1">
    <table:table-cell table:style-name="ce15" office:value-type="string" calcext:value-type="string">
      <text:p>Jane Doe</text:p>
    </table:table-cell>
  </table:table-row>
  <table:table-row table:style-name="ro2">
    <table:table-cell table:style-name="ce16" office:value-type="string" calcext:value-type="string">
      <text:p>(234) 567-8901</text:p>

При открытии в Libre Office имена выделены жирным шрифтом. Где это будет отражено в вышеприведенном XML? Я вижу только value-type="string" без разметки для жирного шрифта, подчеркивания и т. Д. c.

Все находится в одном столбце, поэтому не совсем уверен, что указывает атрибут default-cell-style-name="ce17".

В то время как данные возникли как файл .doc, я использую Libre Office для файла.

Я ищу, чтобы извлечь имена из XML, которые на самом деле являются только В отличие от телефона или адреса, они выделены жирным шрифтом. Я полагаю, что чисел тоже нет c, но я бы хотел выбрать жирные данные из электронной таблицы.

Информация о форматировании кажется несколько расплывчатой:

Форматирование

Множество элементов управления стилем и форматированием обеспечивают ряд элементов управления отображением информации.

Макет страницы управляется различными атрибутами. К ним относятся размер страницы, формат номера, лоток для бумаги, ориентация печати, поля, граница (и ширина линии), отступы, тень, фон, столбцы, порядок страниц печати, номер первой страницы, масштаб, центрирование таблицы, максимальная высота сноски и разделитель. и многие свойства сетки макета.

Верхние и нижние колонтитулы могут иметь фиксированные и минимальные высоты, поля, ширину линии границы, отступы, фон, тень и динамический интервал.

Существует множество атрибутов. для конкретного c текста, абзацев, ruby текста, разделов, таблиц, столбцов, списков и заливок. Для символов Specifi c могут быть заданы шрифты, размеры, фамилии родовых шрифтов c (романский - с засечками, швейцарский - без засечек, модерн - моноширинный, декоративный, сценарий или система) и другие свойства. Абзацы могут иметь вертикальное пространство, контролируемое с помощью атрибутов «Держись вместе», «Вдова» и «Сирота», и иметь другие атрибуты, такие как «буквицы» для обеспечения специального форматирования. Список чрезвычайно обширный; подробности см. в ссылках (в частности, в действующем стандарте).

1 Ответ

0 голосов
/ 05 мая 2020

Значения и форматы размещаются в разных разделах файла XML.

Обычно у вас есть раздел 'style', в котором все форматы определены с именем (style: name).

В разделе таблицы у вас есть определенная таблица, значения, помещенные в нее, и какой стиль имеет (определяется по его 'table: style-name'). Вы можете определить стиль для каждой ячейки, для всей строки, всего столбца или даже для всей таблицы.

Таким образом, в вашем случае вы можете идентифицировать выделенный жирным шрифтом текст, соответствующий названию стиля. Это не всегда легко, потому что вы можете указать стиль по умолчанию для всего столбца / строки (default-cell-style-name = "ce17"), что будет иметь место, если стиль не определен.

Я разработал библиотеку для разбора ODS-файлов в Java, поэтому, если вам нужно вдохновение, вы можете проверить это в Github: https://github.com/miachm/SODS

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...