I once had a similar problem where I needed to save a document in Word format. I ran OpenOffice from perl.
system qw{/path/to/soffice -invisible},
qq{"macro:///Standard.Converters.SaveAsDoc($(in),$(out))"};
which invoked the following macro. You'll need to find out what you change
"MS Word 97" to, I have to leave something for you to do;)
REM ***** BASIC *****
Sub SaveAsDoc( inFile, outFile )
inURL = ConvertToURL( inFile )
oDoc = StarDesktop.loadComponentFromURL( inURL, "_blank", 0, (_
Array(MakePropertyValue( "Hidden", True ),))
outURL = ConvertToURL( outFile )
oDoc.storeToURL( outURL, Array(_
MakePropertyValue( "FilterName", "MS Word 97" ),)
oDoc.close( True )
End Sub
Function MakePropertyValue( Optional cName As String, Optional uValue
+) As com.sun.star.beans.PropertyValue
Dim oPropertyValue As New com.sun.star.beans.PropertyValue
If Not IsMissing( cName ) Then
oPropertyValue.Name = cName
EndIf
If Not IsMissing( uValue ) Then
oPropertyValue.Value = uValue
EndIf
MakePropertyValue() = oPropertyValue
End Function