Могу ли я заставить GitHub отображать PDF-файл в браузере вместо его загрузки?

22

При просмотре PDF-файла на GitHub, кажется, нет способа заставить браузер просто отображать файл, а не загружать его.

Ни одна из этих ссылок не работает, и это единственные, которые я могу получить (или получить из поведения при работе с исходным кодом):

Шон Оллред
источник

Ответы:

20

Github использует content-disposition: attachmentдля PDF-файлов, который загружает файл автоматически на github.com. Вы можете разместить файл на статической странице, предоставленной GitHub, которая может ссылаться на этот файл и обновлять его по мере обновления PDF. Для этого вы можете увидеть страницы GitHub .

Резюме

  • Создать репо с именем USERNAME.github.io.
  • В этом репозитории нажмите «Настройки», затем «Автоматический генератор страниц» и завершите работу мастера, чтобы опубликовать страницу пользователя .
  • Вернитесь к своему репозиторию контента и нажмите «Настройки», затем «Автоматический генератор страниц», а затем завершите работу мастера, чтобы опубликовать страницу проекта . (Логически, файлы страницы проекта будут помещаться в специальный каталог, но GitHub помещает их в ветку gh-pages . Не объединяйте эту ветку с / из master.)
  • Синхронизируйте ветку gh-pages с вашим компьютером и скопируйте в ваши PDF-файлы:

    git checkout gh-pages
    git checkout master -- 'docs/*.pdf'

  • Зафиксируйте изменения и отправьте их на GitHub.
  • Теперь вернитесь к репозиторию на GitHub и с помощью автоматического генератора страниц отредактируйте страницу проекта, добавив ссылки на эти PDF-файлы в форме:

    [Intro.pdf](http://USERNAME.github.io/REPONAME/docs/Intro.pdf),

  • Переиздать страницу проекта.
Мухаммед Усман
источник
Использование страниц на самом деле довольно умный обходной путь! Если завтра к полудню другого пути не будет, этого будет достаточно. :)
Шон Оллред
Вы когда-нибудь находили способ сделать это без использования Github Pages? Проблема, с которой мы сталкиваемся, заключается в том, что страницы Github обязательно являются общедоступными, а PDF-файлы, которые мы хотим включить, являются частными.
Joost
@ Просто нет, я не пытался сделать PDF-файлы приватными. Лучше всего с github создать частное репо, которое представляет собой репозиторий github pages, а затем сделать URL-адрес трудным для обнаружения (который на самом деле не является частным, просто труднее найти).
Мухаммед Усман
3
Недавно GitHub представил Просмотр PDF .
Ионика Бизэу
1
Альтернативой является использование Google Docs, как в docs.google.com/viewer?url=https://raw.githubusercontent.com/…
Стивен Шоу
13

Используйте Google Docs Viewer с URL-адресом, например:

https://docs.google.com/viewer?url=${link_to_raw_pdf}

например

https://docs.google.com/viewer?url=https://raw.githubusercontent.com/degoes-consulting/lambdaconf-2015/master/speakers/jdegoes/intro-purescript/presentation.pdf

https://docs.google.com/viewer?url=https://raw.githubusercontent.com/degoes-consulting/lambdaconf-2015/master/speakers/jdegoes/intro-purescript/presentation.pdf

Стивен Шоу
источник
Очень полезный трюк. +1. Я хотел бы рассказать подробнее о правильной разбивке адреса GitHub (а именно, как извлечь адрес определенного PDF). Спасибо.
Рой
1
Скопируйте ссылку с кнопки «Скачать». т.е. щелкните правой кнопкой мыши, скопируйте адрес ссылки.
Стивен Шоу
7

Nbviewer Jupyter выполняет задачу. Просто вставьте URL-адрес PDF-файла, размещенного на GitHub, в http://nbviewer.jupyter.org/ .

Например, вот PDF-файл, который я размещаю на GitHub в браузере.

Даниэль Химмельштейн
источник
1
Это выглядит многообещающе, но я продолжаю получать 503 ошибки, когда пытаюсь его использовать
user5359531
3

По состоянию на 17 марта 2015 года GitHub теперь отображает PDF-документы, встроенные в веб-интерфейс.

Ссылка: Просмотр PDF

Кос
источник
2
Стивен Шоу
@StevenShaw возможно, но я не использую хром :) тот же принцип применим к сафари, я полагаю, но учитывая мой оригинальный Q, это все еще отвечает на вопрос :)
Шон Оллред