Комментарии 32
Не проще поставить PDF-принтер бесплатный?
Если речь не идёт о массовых преобразованиях, то удобнее пользоваться виртуальными принтерами.
Из любого, самого экзотического формата, из программы, где есть печать на принтер, можно сделать отличный PDF.
Из любого, самого экзотического формата, из программы, где есть печать на принтер, можно сделать отличный PDF.
P.S. OpenOffice, возможно, будет «кривить» документы, созданные в других программах, т.к. имеет другой набор шрифтов. Документы, созданные через виртуальный принтер будут практически на 100% совпадать с тем, что выводится на бумагу с вашего компьютера.
P.S. OpenOffice, возможно, будет «кривить» документы, созданные в других программах, т.к. имеет другой набор шрифтов.
Не совсем так. Набор шрифтов — свойства системы (в случае Linux ещё и пользовательских настроек). И искажения разметки и отображения MS документов в OO не на 100% связаны со шрифтами.
Документы, созданные через виртуальный принтер будут практически на 100% совпадать с тем, что выводится на бумагу с вашего компьютера.Опять же — если вы будете печатать документ на виртуальный принтер не из того приложения, в котором документ создан (в основном касается офисных пакетов) — гарантировать 100% соответствие оригиналу невозможно.
Причём ещё можно порекомендовать скрипт unoconv, который также умеет запускать OpenOffice/LibreOffice как tcp-сервер. В итоге для конвертации массы файлов не требуется каждый раз запускать офисный пакет.
>Из любого, самого экзотического формата, из программы, где есть печать на принтер, можно сделать отличный PDF.
Есть только одна проблема — а какая программа будет печатать excel файлы, лежащие в какой-то директории? Варианта два — OpenOffice и MsWord, оба умеют делать PDF без виртуальных принтеров, но запускать-то их должен робот, автор примерно это и реализовал.
Есть только одна проблема — а какая программа будет печатать excel файлы, лежащие в какой-то директории? Варианта два — OpenOffice и MsWord, оба умеют делать PDF без виртуальных принтеров, но запускать-то их должен робот, автор примерно это и реализовал.
я за pdfcreator sourceforge.net/projects/pdfcreator/
бухи пользуются и не гундят
бухи пользуются и не гундят
Соглашусь со всеми комментариями написанные выше.И хочу посоветовать небольшую программку под это дело.
Google Docs?
Взято отсюда: askubuntu.com/questions/27097/how-to-print-a-regular-file-to-pdf-from-command-line
THE SIMPLE ENSCRIPT WAY
sudo apt-get install cups-pdf enscript
Then run enscript on your file with the -P switch and the printer description PDF in this case.
enscript -B -PPDF test.txt
A printer with description PDF was created when you installed cups-pdf, when you use enscript with that printer your document will be sent to the PDF printer and will be printed to file, created as .pdf in your /home/PDF directory, the command above will print the text file test.txt as a pdf in the PDF directory.
USING UNOCONV
sudo apt-get install unoconv
You can use unoconv in standalone mode, this means that in absence of an OpenOffice listener, it will start its own:
In the directory where your file is located run:
unoconv -f pdf test.txt
this will create a nice looking pdf of test.txt. in the current directory
THE SIMPLE ENSCRIPT WAY
sudo apt-get install cups-pdf enscript
Then run enscript on your file with the -P switch and the printer description PDF in this case.
enscript -B -PPDF test.txt
A printer with description PDF was created when you installed cups-pdf, when you use enscript with that printer your document will be sent to the PDF printer and will be printed to file, created as .pdf in your /home/PDF directory, the command above will print the text file test.txt as a pdf in the PDF directory.
USING UNOCONV
sudo apt-get install unoconv
You can use unoconv in standalone mode, this means that in absence of an OpenOffice listener, it will start its own:
In the directory where your file is located run:
unoconv -f pdf test.txt
this will create a nice looking pdf of test.txt. in the current directory
OpenOffice насмерть зависает на некоторых файлах, имейте ввиду. В интернете есть конвертор, написанный на Джаве, который умеет запускать сразу пачку этих офисов, печатая через них в PDF, «пристреливая» зависшие. Кроме того, он не просто запускает ОО, а общается с ним по АПИ специальному.
Возьмите лучше этот конвертор.
Возьмите лучше этот конвертор.
Как раз ищу такой. Не подкинете ссылочку/название?
Так. А где написано, что JODConverter контролирует процессы и убивает зависшие?
И еще у него есть проблема — он более не поддерживается.
И еще у него есть проблема — он более не поддерживается.
Не знаю где написано, наверное в документации, но по факту он это делает. Что такое «не поддерживается»? Вам его функционала нехватает для чего-то?
Ну как вам сказать… Хочется, чтобы если в нем найдется баг был шанс, что его исправят.
Можно подумать, если есть поддержка, то баг обязательно исправят. Это некомерческий проект. В некоторых из них годами баги не исправляют. Зато это проект с открытым исходным кодом, можно самому его исправить или заплатить кому-нибудь, чтобы исправили.
Согласен. Как я вижу, у него теперь (уже месяц как) лицензия апаче, что особенно хорошо.
Тем не менее когда мне говорят, что проект не поддерживается, это меня несколько напрягает.
Тем не менее когда мне говорят, что проект не поддерживается, это меня несколько напрягает.
Я когда решал подобную задачу выяснил что:
— OO кушает много ресурсов, даже когда запущен без GUI
— он действительно может подвиснуть
— у OO есть интерфейс UNО который в теории очень хорош, ОО на одном сервере твой клиент на другом и с помощью UNO можно проводить любые манипуляции с документом. Но для php есть одно расширение, заставить все это вместе работать это просто подвиг :), документация по всему этому очень не простая мягко говоря.
Все это привело меня к тому что данное решение если и имеет право на жизнь то ни как для массовой обработки постоянных запросов.
Но я согласен с автором что наиболее верный способ (с наименьшим кол-вом притензий к полученному документу это виртуальный принтер). Поставить таковой под линукс нечего делать. Вот только найти нормальный софт который может открыть и отправить на печать желаемый файл без ГУЯ, да и с ним тоже, это проблема :(
— OO кушает много ресурсов, даже когда запущен без GUI
— он действительно может подвиснуть
— у OO есть интерфейс UNО который в теории очень хорош, ОО на одном сервере твой клиент на другом и с помощью UNO можно проводить любые манипуляции с документом. Но для php есть одно расширение, заставить все это вместе работать это просто подвиг :), документация по всему этому очень не простая мягко говоря.
Все это привело меня к тому что данное решение если и имеет право на жизнь то ни как для массовой обработки постоянных запросов.
Но я согласен с автором что наиболее верный способ (с наименьшим кол-вом притензий к полученному документу это виртуальный принтер). Поставить таковой под линукс нечего делать. Вот только найти нормальный софт который может открыть и отправить на печать желаемый файл без ГУЯ, да и с ним тоже, это проблема :(
Как постоянный пользователь OO, могу сказать, что хотя он и передает внешний вид документов близко к оригиналу, но не более. А в отдельных случаях от оригинала он оказывается существенно далеко (хотя документ и читается).
По поводу использования виртуального принтера — тут есть определенная проблема. Принтер — это, обычно, не просто конвертер. Это именно принтер, у которого есть такая штука, как размер бумаги и ориентация страницы. Кто пытался просто печатать в немалом количестве те «простыни», которые иногда порождает бухгалтерия, знает, сколько возни с подбором масштаба и прочим это иногда требует. Автоматическое масштабирование в случае векторного PDF (который можно увеличивать сколько угодно) — законно, но выглядеть результат может, мягко говоря, не очень, например — широченная таблица из трех десятков столбцов и всего пяти-семи строк, ужатая в ширину вертикально расположенного листа, на котором внизу остается еще дофига пустого места.
По поводу использования виртуального принтера — тут есть определенная проблема. Принтер — это, обычно, не просто конвертер. Это именно принтер, у которого есть такая штука, как размер бумаги и ориентация страницы. Кто пытался просто печатать в немалом количестве те «простыни», которые иногда порождает бухгалтерия, знает, сколько возни с подбором масштаба и прочим это иногда требует. Автоматическое масштабирование в случае векторного PDF (который можно увеличивать сколько угодно) — законно, но выглядеть результат может, мягко говоря, не очень, например — широченная таблица из трех десятков столбцов и всего пяти-семи строк, ужатая в ширину вертикально расположенного листа, на котором внизу остается еще дофига пустого места.
Сохранять табличные данные в табличном формате — не дурацкая идея.
В этом виде с ними можно работать: скопировать, выделить, отредактировать.
Я могу в полученном счёте поправить циферки, прикинуть сумму. Накладную я могу загрузить в электронном виде. Договор заполнить/подредактировать. Мне кажется, именно для этого существует электронный формат выгрузки. От pdf'а чаще никакой пользы.
В этом виде с ними можно работать: скопировать, выделить, отредактировать.
Я могу в полученном счёте поправить циферки, прикинуть сумму. Накладную я могу загрузить в электронном виде. Договор заполнить/подредактировать. Мне кажется, именно для этого существует электронный формат выгрузки. От pdf'а чаще никакой пользы.
Политика безопасности чаще склоняется к тому, что все документы должны редактироваться в единой контролируемой среде — 1С, где есть логирование действий. А во всех экспортированных документах не должно быть возможности что-либо поменять.
Во-первых, в случае проблем не найдем крайнего, который это все поменял, что дает бухгалтерам возможность по-тихому воровать. Во-вторых, получим расхождение с 1С, а в конце года получим либо адов ад из-за несовпадения данных (это если сами заметим), либо вопросы от налоговой.
Во-первых, в случае проблем не найдем крайнего, который это все поменял, что дает бухгалтерам возможность по-тихому воровать. Во-вторых, получим расхождение с 1С, а в конце года получим либо адов ад из-за несовпадения данных (это если сами заметим), либо вопросы от налоговой.
Зачем вообще что-либо в таком случае экспортировать?!
PDF максимум что сможет — это защитить от человеческой ошибки, а если кто-либо задастся целью, он что в pdf, что в jpeg циферки поменяет, реквизиты не те продиктует и т.д. Это должно контролироваться другими методами, а ограничение формата экспорта ничего не решает.
PDF максимум что сможет — это защитить от человеческой ошибки, а если кто-либо задастся целью, он что в pdf, что в jpeg циферки поменяет, реквизиты не те продиктует и т.д. Это должно контролироваться другими методами, а ограничение формата экспорта ничего не решает.
Экспортируют, чтобы отправить электронную версию контрагентам. PDFник, чтобы не давать такую очевидную возможность что-то исправить. Конечно же способ всегда найдется, но хватит ли у рядового бухгалтера или менеджера квалификации, чтобы найти нужный редактор, скачать его портабельную версию и обойти запрет на запуск экзешников с флэшки, а также «белый список» прог (настраивается в родительском контроле винды)?
Отвечу на вопрос, почему же бухгалтера не используют формат PDF. Потому что они про него никогда не слышали. Я выписываю счета через онлайн-сервис, они все идут в PDF, так вот по 9 счетам из 10 выписанных мне перезванивают и говорят, что не могут их ничем открыть.
Даже Яндекс, когда присылает бухгалтерские документы, в конце письма пишет пояснение, чем их следует открывать и прикладывает ссылочку на сайт adobe.
Даже Яндекс, когда присылает бухгалтерские документы, в конце письма пишет пояснение, чем их следует открывать и прикладывает ссылочку на сайт adobe.
Вопрос к знатокам — а есть ли решения для сайта на PHP для преобразования загруженных на него документов MS Word/Excel в PDF?
Зарегистрируйтесь на Хабре, чтобы оставить комментарий
Как сделать веб-сервис для конвертации файлов Excel, Word, TXT и других в PDF в режиме «как вижу»