LibreOffice/Работа над ошибками

From SysadminWiki.ru
Jump to: navigation, search

Ошибка формата файла

Если получаем ошибку вида:

Ошибка чтения.
Ошибка формата файла в поддокументе content.xml в позиции 1,1(строка, столбец).

Значит повредилось внутреннее содержание одного из файлов ODT. Любой файл ODT - это архив из нескольких файлов. Изменив расширение с ODT на ZIP этот архив можно открыть в любом архиваторе, извлечь из него сбойный файл, открыть его в текстовом редакторе и исправить ошибку в указанной строке и столбце.

Несколько подсказок:

  • Если попытаться открыть сбойный XML файл в браузере, то можно получить подсказку о месте ошибки.
  • Если ошибка в заголовке (как в примере выше, ошибка в позиции 1:1), то можно скопировать рабочий заголовок из другого файла по следующему алгоритму:
    1. создаём в LibreOffice пустой файл, сохраняем, закрываем;
    2. изменить расширение на ZIP, извлекаем файл аналогичный сбойному;
    3. открываем в текстовом редакторе и копируем несколько строк заголовка, в зависимости от места сбоя (в приведённом примере достаточно скопировать только первую строку);
    4. вставляем рабочий заголовок в сбойный файл, сохраняем;
    5. копируем обновлённый файл обратно в архив;
    6. возвращаем расширение файлу из ZIP к ODT.

Файл content.xml

Если весь наш ODT документ содержит лишь строчку "111", то файл content.xml будет иметь вид:

<?xml version="1.0" encoding="UTF-8"?>
<office:document-content xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" 
  xmlns:style="urn:oasis:names:tc:opendocument:xmlns:style:1.0" 
  xmlns:text="urn:oasis:names:tc:opendocument:xmlns:text:1.0" 
  xmlns:table="urn:oasis:names:tc:opendocument:xmlns:table:1.0" 
  xmlns:draw="urn:oasis:names:tc:opendocument:xmlns:drawing:1.0" 
  xmlns:fo="urn:oasis:names:tc:opendocument:xmlns:xsl-fo-compatible:1.0" 
  xmlns:xlink="http://www.w3.org/1999/xlink" 
  xmlns:dc="http://purl.org/dc/elements/1.1/" 
  xmlns:meta="urn:oasis:names:tc:opendocument:xmlns:meta:1.0" 
  xmlns:number="urn:oasis:names:tc:opendocument:xmlns:datastyle:1.0" 
  xmlns:svg="urn:oasis:names:tc:opendocument:xmlns:svg-compatible:1.0" 
  xmlns:chart="urn:oasis:names:tc:opendocument:xmlns:chart:1.0" 
  xmlns:dr3d="urn:oasis:names:tc:opendocument:xmlns:dr3d:1.0" 
  xmlns:math="http://www.w3.org/1998/Math/MathML" 
  xmlns:form="urn:oasis:names:tc:opendocument:xmlns:form:1.0" 
  xmlns:script="urn:oasis:names:tc:opendocument:xmlns:script:1.0" 
  xmlns:ooo="http://openoffice.org/2004/office" 
  xmlns:ooow="http://openoffice.org/2004/writer" 
  xmlns:oooc="http://openoffice.org/2004/calc" 
  xmlns:dom="http://www.w3.org/2001/xml-events" 
  xmlns:xforms="http://www.w3.org/2002/xforms" 
  xmlns:xsd="http://www.w3.org/2001/XMLSchema" 
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
  xmlns:rpt="http://openoffice.org/2005/report" 
  xmlns:of="urn:oasis:names:tc:opendocument:xmlns:of:1.2" 
  xmlns:xhtml="http://www.w3.org/1999/xhtml" 
  xmlns:grddl="http://www.w3.org/2003/g/data-view#" 
  xmlns:officeooo="http://openoffice.org/2009/office" 
  xmlns:tableooo="http://openoffice.org/2009/table" 
  xmlns:drawooo="http://openoffice.org/2010/draw" 
  xmlns:calcext="urn:org:documentfoundation:names:experimental:calc:xmlns:calcext:1.0" 
  xmlns:loext="urn:org:documentfoundation:names:experimental:office:xmlns:loext:1.0" 
  xmlns:field="urn:openoffice:names:experimental:ooo-ms-interop:xmlns:field:1.0" 
  xmlns:formx="urn:openoffice:names:experimental:ooxml-odf-interop:xmlns:form:1.0" 
  xmlns:css3t="http://www.w3.org/TR/css3-text/" 
office:version="1.2">
  <office:scripts/>
  <office:font-face-decls>
    <style:font-face style:name="Droid Serif" svg:font-family="'Droid Serif'" style:font-family-generic="roman"/>
    <style:font-face style:name="Droid Sans" svg:font-family="'Droid Sans'" style:font-family-generic="swiss"/>
    <style:font-face style:name="FreeSans1" svg:font-family="FreeSans" style:font-family-generic="swiss"/>
    <style:font-face style:name="FreeSans" svg:font-family="FreeSans" style:font-family-generic="system" style:font-pitch="variable"/>
    <style:font-face style:name="Noto Sans CJK SC Regular" svg:font-family="'Noto Sans CJK SC Regular'" style:font-family-generic="system" style:font-pitch="variable"/>
  </office:font-face-decls>
  <office:automatic-styles>
    <style:style style:name="P1" style:family="paragraph" style:parent-style-name="Standard">
      <style:text-properties officeooo:rsid="0001ac6a" officeooo:paragraph-rsid="0001ac6a"/>
    </style:style>
  </office:automatic-styles>
  
  <office:body>
    <office:text>
      <text:sequence-decls>
        <text:sequence-decl text:display-outline-level="0" text:name="Illustration"/>
        <text:sequence-decl text:display-outline-level="0" text:name="Table"/>
        <text:sequence-decl text:display-outline-level="0" text:name="Text"/>
        <text:sequence-decl text:display-outline-level="0" text:name="Drawing"/>
      </text:sequence-decls>
        <text:p text:style-name="P1">111</text:p>
    </office:text>
  </office:body>
</office:document-content>