Mustafa Görmezer

  • Schrift vergrößern
  • Standard-Schriftgröße
  • Schriftgröße verkleinern
Home Dokumenten Konverter Server-Anwendungen SourceCode of ServPDF-OO

SourceCode of ServPDF-OO

E-Mail Drucken PDF
This is the source code of ServPDF-OO. A web based Office to PDF Converter Server for Open Office. Please note that you need Python and Spyce to run this script.

Before running this spyce script start Open Office as a service with:

soffice "-accept=socket,host=localhost,port=2002;urp;"
<html><head><title>ServPDF for OpenOffice</title>
<style type="text/css">
<!--
.Stil1 {font-size: 9px}
.Stil2 {color: #999999}
.Stil4 {font-size: 10px}
-->
</style>
</head>
<body bgcolor="#FFFFFF" text="#000000" link="#0000FF">
<table width="100%" border="0">
  <tr>
    <th width="94%"><b>ServPDF OpenOffice Conversion Service</b></th>
  </tr>
  <tr>
    <th>Supported Formarts: all Formats which OpenOffice can read</th>
  </tr>
</table>
        
<form enctype="multipart/form-data" action="index.spy" method="post">
<table width="100%" border="0" bgcolor="#CCCCCC">
  <tr>
    <td width="17%">Select Office File: </td>
    <td width="83%"><input name="userfile" type="file" size="20"></td>
  </tr>
 
  <tr>
    <td>Start conversion</td>
    <td><input type="submit" name="send" value="convert">
  </tr>
</table>
</form>
<%@import name=include %>
<%\
if request.file('userfile')!= None:
    import uno, os
    from com.sun.star.beans import PropertyValue
    
    (up_path, up_file) = os.path.split(request.file('userfile').filename)
    tempfile = open(os.getcwd()+'\\temp\\'+up_file, 'wb')
    tempfile.write(request.file('userfile').value)
    tempfile.close()
    
    export_format = 'writer_pdf_Export'
    
    url = os.getcwd()+'\\temp\\'+up_file
    url_save = uno.systemPathToFileUrl(url+ '.pdf')

    # Load File
    properties = []
    p=PropertyValue()
    p.Name = "Hidden"
    p.Value = True
    properties.append(p)

    context = uno.getComponentContext()
    resolver = context.ServiceManager.createInstanceWithContext("com.sun.star.bridge.UnoUrlResolver", context)
    ctx = resolver.resolve("uno:socket,host=localhost,port=2002;urp;StarOffice.ComponentContext")
    smgr = ctx.ServiceManager
    desktop = smgr.createInstanceWithContext("com.sun.star.frame.Desktop",ctx)
    doc = desktop.loadComponentFromURL('file:///'+url, "_blank", 0, tuple(properties))

    # Save File
    properties=[]
    p=PropertyValue()
    p.Name="Overwrite"
    p.Value=True
    properties.append(p)
    p=PropertyValue()
    p.Name="FilterName"
    p.Value=export_format
    properties.append(p)
    p=PropertyValue()
    p.Name="Hidden"
    p.Value=True

    try:
        doc.storeToURL(url_save, tuple(properties))
    except:
        print "Failed while writing:"
    doc.dispose()
    response.setContentType('application/pdf') #send the content type header
    #this line makes browsers download, using a readable name
    response.addHeader('Content-Disposition', 'attachment; filename=%s' %up_file+'.pdf', 1)
    #response.clear()
    #response.flush()
    response.write(include.dump(url+'.pdf', 1))
    raise spyceDone
%>
<div align="center" class="Stil1"><a href="http://www.goermezer.de" class="Stil2">http://www.goermezer.de</a></div>
</body>
</html>
Zuletzt aktualisiert am Sonntag, 10. Juni 2007  

Comments are now closed for this entry


Schnipsel

Metadaten und URLs extrahieren mit PDFx

PDFx ermöglicht es, Metadaten und URLs aus PDF-Dokumenten zu extrahieren. Es ist ein Python-Programm für die Kommandozeile und kann auch als Python-Modul aus anderen Anwendungen heraus verwendet werden. Das Programm wurde unter der Apache Lizenz veröffentlicht.

 
Excel-Dateien lesen mit Python

Microsoft Excel Dateien lassen sich mit der Python Bibliothek XLRD Plattformunabhängig lesen und schreiben. Dieser Artikel von Mike Driscoll zeigt ein BEispiel, wie man es ohne Office-Installation macht.

RSS Feed

Anzeigen

 

Statistik

Seitenaufrufe : 7829975

Wer ist online

Wir haben 222 Gäste online