Веб—страницы для печатных СМИ - решения?
Вопрос
Я был большим поклонником MediaWiki и подобных текстовых редакторов на основе wiki.Мне нравится возможность быстро добавлять текст, сотрудничать и делиться.Тем не менее, всегда остается потребность в красиво отформатированном выводе на печать.Такие вещи, как верхние и нижние колонтитулы (которые говорят то, что я хочу, чтобы они сказали), разрывы страниц, поля и т.д.
Большинство решений, которые я видел, включают в себя какое-то преобразование в промежуточный формат печатного носителя (возможно, MediaWiki в Microsoft Word или, возможно, какой-то пользовательский скрипт, который генерирует PDF из содержимого веб-страницы (с большим количеством жестко закодированных ссылок).
Существует ли какое-либо более общее решение для этой проблемы?Любой фреймворк, который стремится объединить HTML и веб-контент в целом в формат вывода на печатный носитель?
Любые решения, обсуждение "за" или "против", или что угодно еще приветствуется.
Спасибо!
Обновить: Хотя я думаю, что CSS поможет мне продвинуться только так далеко...Я использовал CSS для вывода аналогичного типа (MediaWiki по умолчанию имеет формат печати, который скрывает большую часть содержимого навигационной панели).Хотя подумайте о статье в MediaWiki - представьте, что я могу настроить тег в контенте или что-то подобное, и теперь мое поле составляет 1 дюйм вместо 0,5 дюймов.Это больше соответствует тому, к чему я стремлюсь.
Решение
Возможно, вы слышали о ПедиаПресс, компания, которая сделала "вики для печати" (то есть PDF, но также и ODF), сотрудничает с Фондом Викимедиа.(См. "Вики доступны для печати".) Их код предназначен для работы с MediaWiki и является открытый исходный код.
Но!Это даже лучше, чем это.Посмотри на это букмарклет.Вы можете использовать его для создания PDF-файлов или ODF-файлов любой общедоступной страницы MediaWiki (возможно, для этого тоже нужно включить API ...).И вы можете объединить несколько страниц из одной MediaWiki или нескольких MediaWikis в один документ.В моей книге это чертовски круто.:)
ETA:PediaPress вложили значительную работу в создание чего-то, что выглядит действительно приятно читать.Это не просто эквивалент печатной версии MediaWiki, преобразованной в PDF.
Другие советы
могло бы быть что-то для тебя.Он преобразует xml- и html-страницы в PDF-документы.
Используя печать CSS-файлов это действительно отличный подход к переформатированию страниц для печати.
Многие люди возвращаются к PDF, потому что это может будьте мощнее и проще.
Однако для большинства вещей я думаю, что CSS-разметка проще и понятнее.
Посмотрите на исходный код страниц в StackOverflow, и вы увидите ссылки на media="print"
(print.css) - набор стилей, применяемых только тогда, когда браузер печатает страницу.
<link href="/Content/print.css" rel="stylesheet" media="print" type="text/css" />
Вы можете использовать их, чтобы скрыть панели навигации, рекламу (или показывать другую рекламу).Выполните некоторую базовую разбивку на страницы и т.д.
Если вам нужно больше контроля над такими вещами, как поля, вам придется выйти за пределы браузера (PDF, Word, XPS и т.д.).
Я написал Конвертер MediaWiki в LaTeX это пытается сохранить структуру документа исходного текста.Затем документ набирается с помощью pdflatex для получения документа очень высокого качества с разбиением на страницы.Математическая разметка напрямую визуализируется LaTeX, поэтому уравнения выглядят великолепно.LaTeX documentclass / stylesheet настраивается с помощью специализированных команд в wiki для непосредственного управления полями, макетом страницы, шрифтами, дополнительными пакетами и так далее.Это относится ко второй категории пользовательских скриптов, а не к универсальному фреймворку.
Есть много других, таких как Расширение:Pdf_Export который использует htmldoc ( htmldoc ).Хотя он более общий, он очень плохо разбивает страницы на страницы и создает множество вдов и сирот, не обеспечивает оптимального выравнивания текста и не содержит индексов, рисунков, ссылок на себя и т.д.Кроме того, если вы используете <math> разметку в MediaWiki, она включает только файлы PNG с низким разрешением.
princexml - принцессаml специализирован для MediaWiki и создает красивые документы, но недоступен по свободной лицензии.Поскольку это продукт с закрытым исходным кодом, ваша способность контролировать выходные данные ограничена.
В общем, используйте стили печати CSS + какой-нибудь инструмент для преобразования веб-страницы в PDF (безголовый Хром, Электрон, wkhtmltopdf wkhtmltopdf, Принц XML, или просто функция печати в PDF вашего веб-браузера, если вам не нужно ее автоматизировать).
Специально для MediaWiki, the Расширение ElectronPdfService делает это для тебя.(Кроме того, стили печати являются переписывается прямо сейчас;проверьте еще раз через месяц или два, чтобы улучшить презентацию.)
<style type="text/css">
@media print {
/***css rules for print mode ***/
aside#sidebar, header[role="banner"], footer, #comments, #respond, #header-v1, .breadcrumbs, #footer-v1,.topbar-v1,.header-v1,.fcbtnremove {
display: none;
}
.container.content-xs {
width: 98%;
margin: 0px;
padding: 0px;
}
}
@media screen {
/***css rules for screen , it is sometiems opposite of print mode ***/
#header-v1, .breadcrumbs, #footer-v1,.topbar-v1,.header-v1 {
display: block;
}
}
table td , table th{text-align:center;vertical-align:middle}
</style>