Skip to content

Commit

Permalink
Add script to generate the image from HTML
Browse files Browse the repository at this point in the history
  • Loading branch information
joerick committed Sep 18, 2022
1 parent 4503076 commit 728e371
Show file tree
Hide file tree
Showing 2 changed files with 52 additions and 0 deletions.
52 changes: 52 additions & 0 deletions bin/update_how_it_works_image.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
#!/usr/bin/env python3

from __future__ import annotations

import subprocess
import sys
from pathlib import Path

try:
from html2image import Html2Image # type: ignore[import]
except ImportError:
sys.exit(
"""
html2image not found. Ensure you have Chrome (on Mac/Windows) or
Chromium (on Linux) installed, and then do:
pip install html2image
"""
)


def main():
subprocess.run(["mkdocs", "build"])

hti = Html2Image(custom_flags=["--force-device-scale-factor=2"])

html_str = Path("docs/diagram.md").read_text()
css_tags = f"""
<style>{Path("site/css/theme.css").read_text()}</style>
<style>{Path("site/css/theme_extra.css").read_text()}</style>
<style>{Path("site/extra.css").read_text()}</style>
<style>
body {{
background: white;
}}
</style>
"""
html_str = css_tags + html_str

[screenshot, *_] = hti.screenshot(
html_str=html_str,
size=(830, 405),
)

dest_path = Path("docs/data/how-it-works.png")
if dest_path.exists():
dest_path.unlink()

Path(screenshot).rename(dest_path)


if __name__ == "__main__":
main()
Binary file modified docs/data/how-it-works.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.

0 comments on commit 728e371

Please sign in to comment.