Как отобразить изображение в документах Sphinx из строки документов Python? - PullRequest
2 голосов
/ 27 апреля 2020

Python Вставить изображение Docstring

В * Docstring Python у меня есть директива reStructuredText для отображения изображения:

.. image:: ./images/code_quality.png

Вместо изображения я получаю маленький значок и путь:

_images/code_quality.png

Показан скриншот ссылки вместо изображения, которое я хочу показать.

Я также пробовал:

.. image:: images/code_quality.png

И это:

.. image:: https://imgs.xkcd.com/comics/code_quality.png
   :alt: code_quality

Использование рисунка вместо изображения просто центрирует один и тот же вывод.

.. figure:: images/code_quality.png

Это также не сработает, если я вытащу его из строки документации и поместите его в файл .rst.

Изображение копируется в каталог _stati c, как и должно быть в Sphinx. Любое другое формирование ссылки выдает ошибку. У меня есть две пустые строки до и после директивы.

Все остальные строки документов отображаются правильно, включая остальную часть строки документации, которая содержит ссылку на изображение. У меня нет других изображений для рендеринга, но я пробовал это однажды в другом модуле, и это тоже не сработало.

Я использую autodo c для сканирования строк документации модулей Python. Я на Windows 10 и Chrome мой основной браузер. Он не работает ни в одном другом браузере, который я пробовал.


Есть предложения посмотреть на этот ответ: Возможно ли встраивать изображения в строку документации в Python?

  • Я использую директиву image.
  • Мой путь правильный.
  • Ни относительный путь, ни полный путь не приводят к отображаемому изображению.
  • Я не использую PyCharm для этого проекта, я использую VS Code.
  • Моя документация хорошо отрисовывается, кроме проблемы с изображением.

Оболочка вывод на make:

\docs>make html
Running Sphinx v2.4.4
loading translations [en]... done
making output directory... done
building [mo]: targets for 0 po files that are out of date
building [html]: targets for 11 source files that are out of date
updating environment: [new config] 11 added, 0 changed, 0 removed
reading sources... [100%] user_guide
looking for now-outdated files... none found
pickling environment... done
checking consistency... done
preparing documents... done
writing output... [100%] user_guide
generating indices...  genindex py-modindexdone
writing additional pages...  searchdone
copying images... [100%] images/code_quality.png
copying static files... ... done
copying extra files... done
dumping search index in English (code: en)... done
dumping object inventory... done
build succeeded.

The HTML pages are in build\html.

Часть изображения на выходе HTML:

<img alt="_images/code_quality.png" tedc="_images/code_quality.png" />

('ted c' is имя приложения, как я определил его в root модуле setup.py проекта.)


GitHub Repo

Это моя попытка воссоздать проблему неправильной работы директив изображения в Sphinx, создав проект, который структурирован так же, как и мой производственный проект. tructured.

Мой рабочий код вызывается из root, с модулями, живущими в пакетах.

Моя документация находится в каталоге документов, так же, как здесь.

Я использую виртуальную среду, как здесь.

Я использую гораздо больше библиотек, чем здесь.

Я использую Python 3.8.2

В упражнении я не нашел ничего, что помогло бы объяснить, почему директивы с изображениями не работают в моем производственном коде. Мой производственный код использует те же директивы.

1 Ответ

1 голос
/ 05 мая 2020

После того, как я попытался воспроизвести эту проблему и не смог сделать этого, я предложил, чтобы OP попытался удалить виртуальную среду и каталог сборки документов, а также воссоздать их виртуальную среду, установить требования и заново собрать документы. Это решило проблему.

...