ODFTrans 2.0 released

March 19th, 2010

The new version 2.0 of ODFTrans is released.

ODFTrans is a powerful tool, that helps you to convert your office files, e.g.

  • binary formats (doc, xls, ppt) to ODF (et vice versa)
  • binary formats (doc, xls, ppt) to PDF (or PDF/A)
  • OOXML to ODF (et vice versa)

The quality of generated output depends on the input document and the converter tool, you use.
ODFTrans has an easy to use  interface, to chose among various converter programs, addins or plugins to optimize your output.

What´s new in 2.0

  • Supports OOXML-files as produced by Microsoft Office 2007
  • standard protocols  (pop3, pop3s, smtp)
  • new InputAgents (POP, Batch, SMTP, Drag&Drop)
  • add Microsoft Office 2007 SP2 to the list of external converter
  • Support for PDF files
  • multilanguage
  • scalable
  • and many more

see www.odftrans.org for details

2. OpenOffice.org Kongress in München

February 15th, 2010

Am 16. und 17. November 2010 findet der 2. OpenOffice.org Kongress für Wirtschaft und Verwaltung in München statt.

Save/print Firefox/Iceweasel preferences

February 10th, 2010

Saving or printing all preferences in the about:config window of Firefox/Iceweasel is not possible. The prefs.js in the user´s profile folder does not contain all preferences. So what to do?

Maybe there is a more sophisticated solution, but after “googling”, “binging” and wasting a lot of time I decided to go my own way. Firefox is open source software, so why not use the source?

  1. Search for the file toolkit.jar in the chrome subdirectory within the firefox program directory.
  2. Use 7zip (btw. a wonderful tool) to unzip the jar file and extract the files into the “toolkit” folder.
  3. cd into the toolkit/content/global folder
  4. Here you’ll find the file config.js. Use your favourite editor to open this file
  5. Jump to the function filterprefs()
  6. Insert the following code snippets:
    a) at the top
    var fh = Components.classes["@mozilla.org/file/local;1"]
    .createInstance(Components.interfaces.nsILocalFile);
    //fh.initWithPath( “c:\\allprefs.txt” );
    fh.initWithPath( “/tmp/allprefs.txt” );
    if ( fh.exists() == false ) {
    alert( “Creating file… ” );
    fh.create( Components.interfaces.nsIFile.NORMAL_FILE_TYPE, 420 );
    }
    var outputStream = Components.classes["@mozilla.org/network/file-output-stream;1"].createInstance( Components.interfaces.nsIFileOutputStream );
    outputStream.init( fh, 0×04 | 0×08 | 0×20, 420, 0 );
  7. b) modify the for() loop
    for (var i = 0; i < gPrefArray.length; ++i)
    {
    if (rex.test(gPrefArray[i].prefCol + “;” + gPrefArray[i].valueCol))
    {
    gPrefView.push(gPrefArray[i]);
    output = output + gPrefArray[i].prefCol + “;” + gPrefArray[i].valueCol + “\n”;
    }
    }
  8. c) Finally after the loop close the stream
    var result = outputStream.write( output, output.length );
    outputStream.close();
  9. Save the config.js
  10. “cd” back into the “toolkit” folder.
  11. here use 7Zip again to create a zip file. Rename this zip-file to toolkit.jar
  12. copy this file into the parent directory (i.e. chrome) and
    replace the existing file
  13. Start Firefox, enter the uri about:config
  14. Enter * in the filter entryfield and a file allprefs.txt is created.

That´s it. It works for me and I hope it will help you

List (and check) links in ODF files

December 31st, 2009

With this little python script (listlinkodf.py) you can dump all (hyper)links, that are stored in the content.xml of ODF files, so you can easily see what dependencies exist, if they are valid etc.

Copy the file into a directory and start the program. The utility examines all ODF files within this directory and all its subdirectories und writes the result into a textfile (linklist.txt).

Links that reference other files within the local filesystem are checked and marked either ‘ok’ or ‘not found’.

Relative and absolute paths

We did some tests with ODF-files created with OpenOffice.org 3.1.1, KOffice and MS-Office 2007 SP2.
OpenOffice.org stores a relative path. You can change this to absolute by deselecting the corresponding checkbox under Tools->Options->Load/Save->General.

If you reference an object (e.g. test.ods) that resides in the same directory, the path that is stored in the context.xml  looks like “../test.ods”.  The reason for the extra “../” is, that the context.xml is part of a zip structure. To reference a file outside this zip structure you have to add this “../”. See http://www.oasis-open.org/committees/download.php/35090/OpenDocument-v1.2-part3-cd1.odt for details (2.7).

Interoperability issues

In our example, we have a directory structure like this

Level0<dir>
—– Level0.ods
—–+Level1<dir>
—–+—–Level1.ods
———–+Level2<dir>
———–+—–Level2.odt

Level2.odt has two embedded objects, i.e. Level0.ods and Level1.ods. Level2.odt was created with OpenOffice.org and the links are relative.

This is what the tool linklistodf.py shows us (the current working directory is Level0):

########## .\Level1\Level2\Level2.odt ##########
-> ../../../Level0.ods - ok
-> ../../Level1.ods - ok

If you open the file Level2.odt with MS office 2007 SP2 the result is not ok:

Interoperability issues

Interoperability issues

If you create an ODT file that has the same structure with MSO 2007SP2 and open it with OpenOffice.org, the result is much better:

Interoperability issues

Interoperability issues

But looking inside the odf structure, you can see an absolute path, a big problem when exchanging documents or using the same documents on another operating system.

########## .\Level1\Level2\Level2MSorg.odt ##########
-> file:///I:/Level0/Level0.ods - ok
-> file:///I:/Level0/Level1/Level1.ods - ok

Make ODF files anonymous

December 15th, 2009

On “The hacker´s forge” you can make your odf files anonymous. Upload your files and you can immediately downlaod the results. And these results are excellent. Text is replaced by random characters, pictures are substituted by dummy graphic files, meta information is erased.

But what, if you cannot upload your files, e.g. you are not allowed to do so?

We sometimes have to upload our customers´ files to openoffice.org´s issue tracker, so that the developers can analyze them. Because we are not allowed to upload these files to the internet, we have to anonymize them first. So uploading to the hacker`s forge isn´t an option and doing it manually is horror.

So I decided to write a “light” anonymizer as a python script. (the “hacker´s forge” version is more sophisticated, but our script suits our needs)

  • Text is replaced by “X” or “x”
  • Digits are replaced by “0″
  • Pictures are removed
  • Meta.xml is replaced
  • thumbnail.png is removed

anonODF.py is released under the terms of the GNU General Public License. You can download it here. Please report any bugs or comments.

Searching ODF-Files

November 29th, 2009

You cannot find content in ODF files (like writer documents) using microsoft´s windows explorer?

This is true for the OOo 3.0 as well as the OOo 3.1.x release and the issue shoud be fixed in OOo 3.2 (see Issue #96743).

Using the IFilter Explorer you can see the filter ooofiltproxy.dll assigned to e.g. odt, but the entry is marked invalid. So what to do:

Try to register the file ooofiltproxy.dll, i.e.

  • start cmd.exe
  • step down to the OOo-Install Directory, eg. c:\Program Files\OpenOffice.org 3
  • “cd” further into basis\program
  • register with regsvr32: ooofiltproxy.dll
  • “cd” further into shlxthdl directory
  • register with regsvr32: stlport_vc7145.dll

If you receive an error, that the file uwinapi.dll cannot be found, try the following:

extend your search path or copy the files

c:\Program Files\OpenOffice.org 3\URE\bin\uwinapi.dll and

c:\Program Files\OpenOffice.org 3\basis\program\shlxthdstlport_vc7145.dll

to your %windir%\system32 directory and try to register the ooofiltproxy.dll again.

Now you should be able to search within odf files.

See Olli´s comment on win64

Improvements OpenOffice.org 3.2

September 22nd, 2009

Malte Timmermann describes security and privacy feature improvements in the upcoming release 3.2 of OpenOffice.org. See his blog for details

OpenXML/ODF Translator Plugin for Office V3.0 (Patch 5250) is available

September 19th, 2009

From ODF Converter Team Blog:

OpenXML/ODF Translator Plugin for Office V3.0 (Patch 5250) is available

Improvements:
Spreadsheets - chart conversion
Word processing: translation quality
Presentation - translation quality esp. OLE

We´ll give it a try

1. Deutscher OpenOffice.org Kongress für Wirtschaft und Verwaltung

September 17th, 2009

Der 1. Deutsche OpenOffice.org Kongress für Wirtschaft und Verwaltung findet am 06. und 07. Oktober 2009 in Wiesbaden statt.

Von den Erfahrungen anderer profitieren, Ideen aufgreifen, Gedanken austauschen, Werkzeuge kennen lernen oder Probleme und Lösungen diskutieren: der 1. Deutsche OpenOffice.org-Kongress für Wirtschaft und Verwaltung eröffnet all diese Möglichkeiten und ist sicher ein Gewinn für alle Besucher.

HWD stellt dort ODFTrans vor und referiert am 2. Kongresstag über das Thema Interoperabilität

www.oookwv.de

ODF plugfest in Orvieto

September 17th, 2009

Der 2. Workshop zur Verbesserung der Interoperabilität im Bereich des Offenen Dokumenten Formates (ODF) OASIS OpenDocument Format/ISO 26300 findet am 2. und 3. November 2009  in Orvieto, Italien statt.

Eine wichtige Veranstaltung auf dem Weg zu einem einheitlichen, offenen Dokumentenstandard, der von allen Applikationen so umgesetzt wird, dass Interoperabilität in Zukunft kein Problem mehr darstellt.

http://www.odfworkshop.nl