sphinx_revealjs.ext.screenshot¶
- Added:
v2.5.0
Overview¶
Generate screenshot first section of presentations by Playwright. Screenshots can use as OGP Image contents.
Note
This extension generates screenshots only when your running builder is revealjs or dirrevealjs.
Even if you run other builder with this in extensions, any screenshot are not generated.
Installation¶
This extension need Playwright and browser component.
pip install 'sphinx-revealjs[screenshot]'
playwright install chromium
Usage¶
When adding extension into your conf.py, this generates screenshots per pages.
You can set image path into :og:image: field of sphinxext-opengraph in advance.
Example¶
extensions = [
"sphinx_revealjs",
"sphinx_revealjs.ext.screenshot",
"sphinxext.opengraph",
]
:og:image: ./_images/ogp/sample-slide.png
Sample title
============
Configuration¶
All Configuration names are prefixed revealjs_screenshot_.
- revealjs_screenshot_outdir¶
- Type:
str- Default:
"_images/ogp"- Example:
"_static/images"
Output directory for generated screenshots. This must be relative path for outdir of Sphinx.
- revealjs_screenshot_excludes¶
- Type:
List[str]- Default:
[](empty)- Example:
["index"]
List of docnames to exclude for target of screenshots. Values must be docname format that does not need extension of files.
Works¶
After build all documents, launch headless-browser by Playwright.
Browser captures screenshots any document pages for these rule.
Targets are generating files. If it runs incremental build and document is not changed, document is not target.
If docname contains are
revealjs_screenshot_excludes, document is not target.
When browser capture screenshots, this sets image size from Reveal config (with and height).
This values are used viewport of presentation.
If you want to change all sizes, you can set
revealjs_script_conf.If you want to change per docs, you can set
revealjs-slidedirective.
Note¶
Currently, I recommend using sphinxext-opengraph to add ogp metatags (it is useful).
I delegate behavior about opengraph, and sphinx-revealjs does not have feature to generate ogp tags.