Я хочу конвертировать .txt
файлы в .pdf
. Я использую это:
ls | while read ONELINE; do convert -density 400 "$ONELINE" "$(echo "$ONELINE" | sed 's/.txt/.pdf/g')"; done
Но это приводит к одной «ошибке» - если в текстовом файле есть очень длинная строка, она не переносится.
Введите текст
Выходной PDF
-
Также было бы хорошо, если бы выходной PDF мог содержать текст вместо изображений текста.
У меня есть много-много-много TXT-файлов. Так что не хочу делать это вручную. Мне нужно автоматическое решение, подобное тому, которое я упомянул выше.
text-processing
pdf
imagemagick
conversion
LanceBaynes
источник
источник
for ONELINE in *
вместоls | while read ONELINE
. Прочитайте это .Ответы:
Одним из способов является использование CUPS и psuedo-принтера PDF для «печати» текста в файл PDF.
Другой способ - использовать enscript для кодирования в postscript, а затем конвертировать из postscript в PDF с помощью файла ps2pdf из пакета ghostscript.
источник
Пандок может сделать это. Он больше ориентирован на преобразование размеченного текста в различные форматы, но у него не должно быть проблем с простым открытым текстом.
источник
LibreOffice / OpenOffice, как и большинство других текстовых процессоров (Abiword), могут сделать это довольно легко.
Существует небольшая утилита,
unoconv
которая использует базу кода LibreOffice для преобразования форматов файлов в командной строке. Она может читать и писать любую комбинацию форматов , которые LibreOffice может и делает его очень легко сделать такие вещи , какdoc
дляpdf
преобразования в командной строке. Простойtxt
вpdf
будет легко для него.источник
unoconv
и даже не знал, что у ОО были API.unoconv --listener &
команду.Вы можете распечатать текст в файл PostScript с помощью Vim, а затем преобразовать его в PDF, если Vim был скомпилирован с этой
+postscript
функцией.Для этого вы используете
:hardcopy > {filename}
команду. Например, вы можете открытьexample.txt
и выполнитькоторый создаст файл,
example.ps
содержащий весь текст вexample.txt
. Заголовок каждой страницы в файле PostScript будет содержать исходное имя файла и номер страницы.Затем вы можете преобразовать файл PostScript в PDF, используя следующую команду
который создаст
example.pdf
.Вы можете сделать то же самое прямо из терминала (без взаимодействия с Vim), используя следующую команду
Это открывает
example.txt
в Vim и выполняет команду, переданную-c
опции, которая в этом случае являетсяhardcopy
командой, сопровождаемой командой quit (q
). Затем он выполняетps2pdf
для создания окончательного файла.Дополнительные параметры см. В файлах справки с
:help :hardcopy
.источник
:hardcopy
создает файл PostScript независимо от того, добавляю ли я расширения .pdf или .ps. Я сделал:hardcpy > example.pdf
и сless example.pdf
в оболочке я мог видеть, что заголовок файла был%!PS-Adobe-3.0
.Просто используйте text2pdf , который бесплатный и с открытым исходным кодом. По ссылке вы можете скачать исходный код или предварительно скомпилированный бинарный файл для windows, solaris, dos.
Я могу использовать его в ОС AIX без проблем. Очень просто скомпилировать, просто сохраните text2pdf.c и Makefile в одном каталоге и введите
make
. (здесь я установил переменную CC = gcc в AIX, в Linux это не будет проблемой)источник
Существует также конвертер UTF-8 в PostScript
paps
.источник
Используйте enscript для создания файла .ps, а затем ps2pdf (или ps2pdfwr) для преобразования в формат .pdf.
Следующий скрипт создает файл .pdf с полями по 10 пунктов слева и справа и использует курьерский шрифт шириной 7,3 пункта и высотой 10 пунктов, поэтому распечатка размером в 132 столбца помещается на странице размером 8 1/2 X 11. Используйте enscript для настройки вашей страницы, шрифтов и т. Д.
источник
LibreOffice работает для этого. Использование:
libreoffice --convert-to "pdf" file.txt
Вывод будет вызван
file.pdf
.источник