Fórum Ubuntu CZ/SK
Ubuntu pro osobní počítače => Software => Příkazový řádek a programování pro GNU/Linux => Téma založeno: Firzen 20 Července 2011, 20:44:45
-
Ahoj ubunťáci,
dostal jsem za úkol udělat jeden program, který poběží na serveru s Ubuntu 10.10. Potřeboval bych nějak solidně převádět plain text do PDF, a to buď přímo pomocí knihovny v C/C++ (radši čisté C++), a nebo klidně i pomocí nějaké jiné (pochopitelně konzolové) aplikace ve stylu pdftotext, akorát obráceně.
Předem díky za vaše rady! ;)
-
pouzival jsem pdfcslatex, ale nevim, jestli se ti bude hodit
-
Co si prostě nainstalovat cups-pdf a pak pomocí lpr normálně tisknout?
-
Co si prostě nainstalovat cups-pdf a pak pomocí lpr normálně tisknout?
To mě taky napadlo. Avšak za boha se mi nepovedlo to zprovoznit.. prostě ty příkazy neznám a rady na internetu nefungovaly. Přitom ta tiskárna už tam je..
-
Já jsem si to schválně zkusil.
Po přidání tiskárny si najdu jak se jmenuje pomocí lpstat -p -d a pak pomocí
lpr -P Generic-CUPS-PDF-Printer test.txt
(kde "Generic-CUPS-PDF-Printer" je ten název) normálně tisknu. Výsledek se uloží do ~/PDF (to jde změnit v /etc/cups/cat cups-pdf.conf)
-
Jo no jo, už vím, v čem byl problém.. zkusil jsem to podle vás a na výstupu je sice PDF, avšak prázdné. Prostě jen bílá stránka. :-\
Ale tiskárnou PDF (u mě se tak jmenuje) to asi není --> když tisknu třeba z Kate, tak funguje správně. Z příkazové řádky ale ne.
-
Ještě mě napadá: http://www.linuxexpres.cz/praxe/asciidoc-vytvorte-si-z-jednoho-zdroje-html-nebo-pdf-dokument
(Já na generování používám LaTeX tedy...)
-
Jak praví článek:
Po pravdě, a podle dokumentace k AsciiDoc, je také možno vytvářet soubory PDF, DVI, LaTeX, PostScript. Pravdou je, že se mi to ještě nepodařilo. Převod probíhá prostřednictvím DocBook a s tím kamarád nejsem.
To bohužel musím potvrdit, taky se mi to nepovedlo. :D
-
Co s tím děláš, že ti nic nefunguje... :)
Zkusíme to vrátit ke kořenům - LibHaru (http://sourceforge.net/projects/libharu/)
-
Takže problém jsem nakonec vyřešil pomocí wkhtmltopdf. Tato utilita ke svému běhu bohužel vyžaduje X server. Možnosti, jak to obejít jsou dvě: využít falešný x server nebo použít patch. Použití patche by pro mě bylo zatím trochu tricky, takže jsem se vydal cestou falešného X serveru (balíček xvfb). Celá věc se tedy provádí následovně:
# aptitude install wkhtmltopdf xvfb
$ ls
text.txt
$ cat text.txt
Toto je pokusný pdf soubor. ěšččččéýíážčřéíýŠČÉÍÍÍÝÁĚČŠŠŠŽ
$ Xvfb :5 -screen 5 640x480x16 & DISPLAY=127.0.0.1:5 && export DISPLAY && wkhtmltopdf --encoding utf-8 text.txt text.pdf
$ ls
text.pdf text.txt
Takže s malým ošizením všechno funguje. :)
-
proc jsi vlastne nepouzil LaTeX, jak navrhoval Bohous? to by bylo celkem bezbolestne...
-
Bezbolestné by to bylo pro závislosti a pro jakousi učesanost. Ale program by musel přidávat do těch souborů tagy LaTeXu, které navíc ani neznám. Tohle tedy bylo nejrychlejší a nejméně náročné řešení.
Postupem času, až nebude nutno spěchat, zkusím použít Haru.