Wie unterscheiden sich der 2010 OpenDocument Text (.odt) von OpenOffice und der 2012er von LibreOffice?

563
Redsandro

Wie Sie wahrscheinlich beim Lesen dieser Frage wissen, handelt es sich bei einer .odt- Datei nur um eine .zip- Datei, die einige Ordner und .xml- Dateien enthält.

Ich habe das zu schätzen gewusst, da ich in OpenOffice (2010) ein Dokument mit Schlüsselwörtern erstellen und zum Beispiel verschiedene Dokumente mit Adressdaten online mithilfe eines PHP-Skripts generieren konnte.

Die interessante Datei ist content.xml, in der Sie den Inhalt des Texts ändern können. Danach packen Sie alles zusammen und Sie haben sich ein funktionierendes .odt .

Wenn ich jedoch neue Vorlagen mit LibreOffice (2012) erstelle, ist das resultierende Dokument beschädigt und Writer versucht, es wiederherzustellen, schlägt jedoch fehl und hinterlässt ein leeres Dokument.

Die Dateistruktur der ZIP- Datei (.odf) sieht für mich genauso aus. Es sieht nicht so aus, als hätte sich etwas geändert, aber es muss gewesen sein. Lustig, wenn ich die 2012 content.xml aus dem beschädigten Dokument verwende und in ein funktionierendes Dokument für 2010 packe, funktioniert es plötzlich wieder.

Was hat sich im Dokumentformat geändert? Gibt es eine Möglichkeit, wie ich meine Dateien immer noch auf diese Weise "automatisieren" kann? Warum sollten sie etwas ändern, was für Superbenutzer nichts Schöneres ist?

2
Dies hängt höchstwahrscheinlich von den genauen Versionen ab. Im Interesse Ihrer Frage sollten Sie also wirklich die gewünschten Versionen hinzufügen, um aussagekräftige Antworten zu erhalten. 0xC0000022L vor 11 Jahren 0
Ich habe das oft mit verschiedenen Versionen von Open Office gemacht. Ich kann mich nicht mehr an die erinnern, an die ich mich erinnere, aber wenn im Dokument eine Versionszeichenfolge enthalten ist, kann ich mir eine alte Vorlage ansehen und mich bei Ihnen melden. Redsandro vor 11 Jahren 1
Ich sage nur, dass * wenn * LO und OOo vom Dateiformat abweichen, die Unterschiede * pro Version relevant sein werden, nicht nur auf globaler Ebene. 0xC0000022L vor 11 Jahren 0

0 Antworten auf die Frage