2017-01-18 24 views
-2

Я хочу преобразовать страницу разметки Jekyll в PDF, но она не работает с Pandoc, потому что я использовал плагин Jekyll-scientar для компиляции цитат из bibtex. Использование браузера для преобразования из html в pdf тоже не выглядит хорошо. Исходный код находится на my github repo. Вы можете найти viat.md для страницы, которую я хочу преобразовать в pdf. Дайте мне знать, есть ли способ сделать конверсию. Заранее спасибо!Могу ли я конвертировать страницу разметки Jekyll с включенными плагинами в PDF?

Обновление на 2017-1-19: Вот некоторые проблемы, если вы думаете, этот вопрос тривиален. Поскольку я использовал плагин Jekyll-scientar, все мои списки публикаций вызываются в методе уценки на {% bibliography --file PublicationsFile --query @article %}, который не может быть распознан Pandoc для компиляции уценки; Если я использую браузер для сохранения HTML-страницы в формате pdf, то такие кнопки, как «Загрузка» и «Ссылка», будут отображаться как Download (https://downloadlinke.com), где я даже не хочу иметь бессмысленные кнопки загрузки, чтобы отображаться в формате pdf, и Я хочу, чтобы ссылки отображались для заголовков статей; наконец, я, конечно, хочу отфильтровать заголовок, нижний колонтитул и боковую панель со страницы HTML для pdf-файла. Вы можете просмотреть страницу vita here и попробовать самостоятельно для рабочих решений. В идеале я надеюсь, что все работы могут быть сделаны автоматически в Travis-CI для моего текущего HTML и PDF-версии для загрузки. Надеюсь, вы можете указать, каким образом решить эти проблемы.

+0

Есть ли причина, по которой вы не можете использовать Pandoc для преобразования (сгенерированного Jekyll) HTML в PDF? – Waylan

+0

Кроме того, что конкретно представляет собой проблема с созданным браузером PDF? Как вы ожидаете, что какой-либо другой инструмент обеспечит лучший результат? – Waylan

+0

@Waylan, так как я использовал плагин Jekyll-academer, все мои списки публикаций вызывают в методе уценки с помощью формата '{% file = xx.bib --all%}', который не может быть распознан Pandoc для уценки; если я использую браузер для сохранения страницы в формате pdf, тогда такие кнопки, как «загрузка», будут отображаться как «Download (https://downloadlinke.com)», где я даже не хочу иметь бессмысленные кнопки «Загрузить», чтобы показать в pdf. Я действительно не знаю, как с этим справиться. Вы можете попробовать самостоятельно на [моей странице vita] (https://www.qixiaodong.tk/en/pubs/) для рабочих параметров. Я очень ценю ваши идеи. –

ответ

1

Из-за вашего конкретного контента Jekyll вам нужно будет использовать Jekyll для преобразования из Markdown в HTML. Оттуда вы можете конвертировать из HTML в PDF. У вас есть несколько вариантов того, как это сделать.

  1. Вы можете создать пользовательскую тему Jekyll, которая не включает верхний/нижний колонтитул страницы и другие элементы, которые вы не хотите. Затем скажите Jekyll, чтобы использовать эту настраиваемую тему перед преобразованием в PDF. Для получения дополнительной информации о темах Jekyll см. here.

  2. Вы можете использовать существующую тему и определить таблицу стилей print, которая скрывает элементы, которые вы не хотите при печати. Таким образом, когда вы используете функцию печати в браузерах, страница будет отображаться по вашему желанию. Вы можете найти несколько статей об этом here и here.

  3. Объедините оба вышеперечисленных для полностью настраиваемого выхода.

Лично я бы начал с варианта 2 и работал оттуда. Обратите внимание, что Pandoc имеет опцию --css, где вы можете указать ее как таблицу стилей CSS, которая будет использоваться для стилизации HTML-ввода по вашему желанию.

+0

Кажется, что требуется дублировать вторую страницу разметки с другим фронтом, который вызывает определенные файлы шаблонов и CSS-файлов под Jekyll. Можно ли это сделать без дублирования страницы уценки каким-то автоматическим способом? –

+0

Pandoc может конвертировать напрямую из HTML в PDF. Нет необходимости дублировать ваш Markdown. Markdown to HTML с Jekyll и HTML в PDF с Pandoc. Если у Jekyll нет плагина PDF (который пропускает шаг HTML), это единственный способ использования Jekyll в вашем контенте. – Waylan

+0

Я имею в виду, чтобы сгенерировать HTML-страницу с целью создания PDF-файла из уценки, мне нужно написать страницу уценки, определяющую новый шаблон в переднем вопросе (макет, включая определения css), используя ваш метод, который является дополнительную страницу уценки, кроме той, которая использует мой текущий макет для создания HTML-страницы, а не для создания PDF-файла, который мне нужно сохранить. Я считаю, что это избыточно, и может быть способ генерировать два разных типа HTML-страниц с общим файлом разметки. Но я не уверен, как это сделать. Цените свое понимание! –