15

Mam trochę dokumentacji napisanej w OpenOffice i chciałbym dołączyć niektóre z nich jako pliki PDF do ostatecznych dostaw budowania. Chciałbym to zrobić za pomocą skryptu do automatycznej kompilacji.Tworzenie wiersza poleceń w OpenOffice Tworzenie PDF

Czy istnieje sposób na utworzenie pliku PDF z OpenOffice za pomocą polecenia wiersza poleceń?

Odpowiedz

12

Art of Solving ma również bardzo dobre API do wykonywania konwersji w Javie. Jest trochę powolny, ale jest dość prosty. W ten sposób go używam:

 File inputFile = new File("C:\\oreyes\\hola.doc"); 
     File outputFile = new File("C:\\oreyes\\hola.pdf"); 
     OpenOfficeConnection connection = new SocketOpenOfficeConnection(8100); 
     try { 
      connection.connect(); 
     } catch(Exception e) {} 

     DocumentConverter converter = new OpenOfficeDocumentConverter(connection); 
     converter.convert(inputFile, outputFile); 
     connection.disconnect(); 

Można utworzyć słoik i przetworzyć go z wiersza poleceń.

+1

Czy tak samo jak opisujesz, ale podano 'OpenOfficeConnection officeConnection = new SocketOpenOfficeConnection ("my_local_vm_ip", 8100);', ale pojawia się błąd cały czas. 'Wyjątek w wątku" główny "com.artofsolving.jodconverter.openoffice.connection.OpenOfficeException: konwersja nie powiodła się: nie można załadować dokumentu wejściowego' – Eugene

+0

Jeśli chcesz wyeksportować dane z pewnymi opcjami (np. Oznaczonym PDF), czy najpierw musisz je ustawić? w OpenOffice lub LibreOffice? –

16

Istnieje wspaniałe narzędzie o nazwie "unoconv", które znajdowało się w moim repozytorium Ubuntu. Konwertuje ODF, .ods, ... do formatu PDF i myślę, że do innych formatów też.

Mogę również konwertować pliki PowerPoint na format PDF.

+0

pracował jak urok, dzięki! –

1

Istnieje anytopdf. Nie próbowałem tego sam.

Cytując ...

anytopdf is a perl script that converts OpenOffice.org, Microsoft Office (Word DOC, Excel XLS), RTF, HTML, and other openoffice.org readable file formats to the PDF format. It will automatically install the supporting 'AnyToPDF' OpenOffice.org Basic macro library in the current user's OpenOffice.org configuration if it's not already present.

Dedicated to peace, love, understanding and respect for all beings.

28

Począwszy od września 2012 roku, LibreOffice można przekonwertować dokument PDF z wiersza poleceń:

lowriter --headless --convert-to pdf yourfile.odt 

Posiada również wsparcie masowych konwersji:

lowriter --headless --convert-to pdf yourfiles*.odt 

skonwertuje wszystkie pliki pasujące do wzorca do odpowiedniego pliku PDF.

Po uruchomieniu tego polecenia nie mogą być otwarte żadne okna LibreOffice.

+0

To bardzo miłe. Czy wiesz, czy istnieje sposób na aktualizację spisu treści przed wykonaniem konwersji? –

+0

Udało mi się przekonwertować obrazy, dokumenty tekstowe, arkusze kalkulacyjne. Działa jak marzenie. –

+1

To rozwiązanie jest bardzo stabilne, ale nieco powolne. Trochę informacji dla każdego, kto je rozważa, począwszy od wersji 4.1.0.4, dość prosty plik konwertuje w 1800 ms. –

2

Choć to pytanie jest trochę stary, tu coś dla celów dokumentowania niektórych typowych pułapek z roztworem LibreOffice:

  • If lowriter nie działa dla Ciebie, ponieważ ignoruje parametry wiersza polecenia i wychowuje gui prostu spróbować wywołanie libreoffice lub loffice binarne:

    loffice --headless --convert-to pdf yourfile.odt

  • Jeśli ten komunikat

    Error: Please reverify input parameters...

    spróbować działa jako korzeń (np przez sudo). To pomogło mi na Ubuntu 12.04 LTS z LibreOffice 3 zainstalowany i może być również powodem, dla którego ta konwersja nie jest uruchomiony na serwerze internetowym bez odpowiedniej konfiguracji (Libreoffice --headless refuses to convert unless root, won't work from PHP script)

  • Również upewnić się, że nie masz żadnych innych wystąpień LibreOffice działa lub po prostu nie powiedzie się po cichu i nie dokona żadnej konwersji.

Powiązane problemy