|
Скачивание Wiki страниц в PDFконвертация на движке MediaWiki |
|
Онлайн: РИСОВАЛКИ | ИГРЫ | РЕЛАКС программы |
Обзор PDF инструментовНа этой странице перечислены расширения, которые могут из Wiki-страниц генерить PDF: ➜ https://www.mediawiki.org/wiki/PDF_export
Mpdf - показалось самое несложное в установке расширение - тут инструкция по его установке: ➜ https://www.mediawiki.org/wiki/Extension:MpdfВ инструкции по ссылке выше, я так понял, можно взять Mpdf из MediaWiki, а можно с GitHub. Еще есть замечание по версионности MediaWiki - до версии 1.31 нужен установщик composer. У меня Wiki 1.30. Я скачал composer (https://www.mediawiki.org/wiki/Composer). Он работает. Но при установке расширений composer ориентируется на прописанные зависимости - у меня не совпала версия PHP. Может быть поэтому Mpdf у меня так и не заработал. PdfBook - испытал на локальном компе - инструкция по установке: ➜ https://www.mediawiki.org/wiki/Extension:PdfBookТакже неудача, хотя установить удалось, сохранение из Wiki в PDF происходит, но файл пустой. Зависимость HTMLDOC для этого устанавливал, он может и автономно работать, и работает, но русскоязычные страницы сохраняет с нарушением отображения русских шрифтов. Не разбирался в проблеме. ElectronPdfService - видимо, самый "крутой" вариант, т.к. используется сейчас в глобальной Википедии. ➜ https://www.mediawiki.org/wiki/Extension:ElectronPdfServiceНо для установки требуются не только права админа на Wiki, но и доступ к серверу для установки RESTBase. wkhtmltopdf - конвертор HTML в PDF, не является расширением для Wiki. Зато удалось прикрутить в мою локальную Wiki. ➜ https://wkhtmltopdf.org/Установил его локально на свою Windows в виде экзешника. Работает хорошо. Проблем с русским нет. Есть билд на GitHub. Есть версии для Linux (Debian, Ubuntu, CentOS).
Небольшая неприятность этой инструкции - потребуется право PHP на функцию exec(), которая исполняет команды на сервере, что есть некоторое нарушение безопасности, но т.к. наша Wiki внутрикорпоративная, то острота снижена.
Инструкция по внедрению wkhtmltopdf❶ Создать php-файл wkhtmltopdf.php с таким содержимым:<?php $exe = '"c:/Program Files/wkhtmltopdf/bin/wkhtmltopdf.exe" -L 0 -R 0 -T 0 -B 0'; // путь к исполняемому файлу и пар-ры $page = "http://wiki.local/index.php/".$_GET["title"]; // url печатаемой страницы $out = "c:/tmp/".$_GET["title"].".pdf"; // временный выходной файл $comm = $exe.' '.$page.' '.$out; // команда exec($comm); // исполнение команды if (file_exists($out)) { // сохранение файла силами браузера header('Content-type: application/pdf'); header('Content-Disposition: attachment; filename="'.$_GET["title"].'.pdf"'); // это будет видно в окне сохранения readfile($out); } unlink($out); // удаление временного файла ?>❷ В коде wiki cтраницы прописать путь к этому файлу с аргументом title: [http://wiki.local/wkhtmltopdf.php/?title={{PAGENAMEE}} Скачать в PDF]P.S.1. здесь {{PAGENAMEE}} - название страницы с подчеркиванием вместо пробелов (чего не дождешься от {{PAGENAME}}) P.S.2. еще лучше сделать шаблон topdf: <div style="float:right; padding:5px; margin:5px; background-color:#dde; border-radius:5px;"> [http://wiki.local/wkhtmltopdf.php/?title={{PAGENAMEE}} Скачать в PDF] </div>и вставлять его в wiki-страницы так: {{topdf}}. P.S.3. а еще лучше вставить подобную ссылку в сайдбар так: ** http://wiki.local/wkhtmltopdf.php/?title={{PAGENAMEE}}|Скачать в PDFP.S.4. Видимо, в промышленном проекте надо применять запирание файла: http://www.php.su/functions/?flock P.S.5. Видимо, в промышленном проекте надо проводить валидацию получаемого аргумента $_GET["title"] Анатолий Опарин Ещё обзоры для вебмастеров, расширяющие их технологический кругозор: • Памятка начинающему вебмастеру • Amazing Slider – программа для создания HTML5 слайдшоу, галерей, альбомов • Blumentals WeBuilder – удобнейший редактор кода с предпросмотром • Camtasia Studio – видеоредактор с экспортом в интерактивный HTML5 проигрыватель • GDevelop – игровой движок c редактором в вебе, на мобильных и ПК платформах • Google Web Designer – конструктор HTML5 баннеров и приложений • Flip PDF – конвертор PDF документов в HTML5 приложение • Hi Slider – программа для создания продвинутых jQuery слайдеров • Hippani Animator – удобная анимационная студия с экспортом в HTML, video, анимированный gif • Lunacy – для макетирования интернет-страниц • Moodle – практика администратора СДО • MediaWiki – как использовать для ведения и хранения документации • MediaWiki – как подсвечивать синтаксис программного кода • Nicepage – конструктор сайтов и тем для CMS • Pinegrow – стильный визуальны конструктор сайтов • PowerPoint в HTML5 – обзор софта конвертации • RocketCake – лаконичный визуальный конструктор сайтов • Saola Animate – программа для быстрого и удобного создания анимации в HTML5 • Scratch – визуальный язык программирования и редактор кода • Sozi – программа для создания стильных HTML5 презентаций с перелетами между слайдами • SVG – как сделать анимацию линии (имитацию рисования) • Tilda – самый удобный онлайновый конструктор сайтов, плюсы и минусы • TimelineJS – библиотека для хронологических лент • TurboSite – лаконичный конструктор многостраничных сайтов • TurboWarp – продвинутый форк Scratch для создания HTML5 игр и приложений • WOW Slider – программа для создания красивых HTML5 слайдеров • WYSIWYG Web Builder – мощный визуальный конструктор сайтов • Yonote – веб-сервис для организации базы знаний • HTTP – коротко о протоколе • OpenAPI – спецификация, визуализация, инструментарий • Визуально-блочные среды программирования и моделирования – обзор • Инструменты для создания прототипов интернет-страниц: Axure и ProtoShare • Что нужно знать об электронных платежах вебмастеру интернет-магазина • Как создать интерактивный кроссворд на сайте? • Как работать с Flash в современное время • Спецсимволы HTML – коды около 2000 дизайнерских иконок |
Вдруг
# все детские писатели и сканы их книг
Книга - источник настроения
|
|
|