Arne Steffens: Erstellung / Konvertierung Word Dokument mit Perl

Hallo Forum!

War mir mit dem Themenbereich nicht ganz sicher, hoffe das passt so ;-)
Folgendes Problem:
Mein Perl Script muss auf dem Server ein Word Dokument erstellen. Das ist nun zugegeben eine obskure Kombination, weshalb natürlich auch die Suche bei z.B. CPAN erfolglos war. Es gibt zwar ein Modul zur Erstellung von RTF, aber das ist nunmal kein ".doc" ;-)

Ein anderer Ansatz wäre, mit Hilfe der PDFLib erstmal ein PDF zu erstellen und dieses dann in ein Word Dokument zu konvertieren.
Auch hier habe ich nichts richtiges gefunden. PDF2RTF gibt es wohl, aber erstens mit bescheidenem Ergebnis und zweitens: kein word :-(

Hoffentlich weiss von euch jemand Rat....

Danke und Grüsse
Arne

  1. hallo Arne,

    War mir mit dem Themenbereich nicht ganz sicher, hoffe das passt so ;-)

    Ist bissel exotisch, aber paßt schon.

    Mein Perl Script muss auf dem Server ein Word Dokument erstellen.

    Ich fürchte, das wird es nicht können. "Word" ist schließlich das, was wir immer einmal "proprietär" nennen. Außerdem gibts davon zuviele Versionen. WordXP-Dateien kannst du ja auch nicht mit Office 97 lesen usw.

    Es gibt zwar ein Modul zur Erstellung von RTF, aber das ist nunmal kein ".doc" ;-)

    Warum nicht? RTF kann nicht nur von den Microsoft-Office-Programmen geöffnet und gelesen werden und ist nicht ganz so "proprietär". Wenn es dir nun nur darauf ankommt, daß ein user anhand der Datei-Extension mitgeteilt bekommt, um welches Format es sich handelt (um dann sein Office zu öffnen), so kannst du doch tricksen. Gib der RTF-Datei ganz einfach die Endung DOC, das wirst du ja mit PERL hinkriegen.

    Grüße aus Berlin

    Christoph S.

    1. Hallo Christoph und Danke für deine Antwort.

      Mein Hinweis auf die Dateiendung wahr wohl irre führend. Sorry. Die Erstellung eines "Original" Word Dokuments ist zwingend, weil in der Weiterverarbeitung auf genau diesen propietären Ansatz gesetzt wurde :-(

      Meine weiteren Forschung haben aber eine Möglichkeit offenbart!
      Für PHP gibt es eine COM Library. COM bezeichnet wohl eine Windows interne Schnittstelle, um die lokal installierte Software zu bedienen.
      Hierüber kann dann z.B. auch Word dazu gebracht werden, ein Dokument zu erstellen.

      http://www.zend.com/manual/class.com.php

      Das bedeutet dann allerdings ein Webserver auf Windows Basis. Aber OK, wer schon Word Dokumente erstellen will, soll auch gefälligst Windows benutzen ;-)

      Gruss Arne

  2. Hallo,

    http://search.cpan.org/~gsar/libwin32-0.191/OLE/lib/Win32/OLE.pm

    Gruss

    --
    no strict;
    no warnings;
    Über eine Rückmeldung freut sich später jeder, der das gleiche Problem hat und im Archiv nach einer Lösung sucht.