mirror of
https://github.com/Steffo99/emblematic.git
synced 2024-11-22 06:44:19 +00:00
Make some progress
This commit is contained in:
parent
f606315eea
commit
8851e21ca3
2 changed files with 58 additions and 0 deletions
36
emblematic/compose.py
Normal file
36
emblematic/compose.py
Normal file
|
@ -0,0 +1,36 @@
|
||||||
|
import bs4
|
||||||
|
|
||||||
|
|
||||||
|
def compose_basic(bg: bs4.Tag, fg: bs4.Tag) -> bs4.Tag:
|
||||||
|
"""
|
||||||
|
Create a nice icon from the given background ``<svg>`` and the given foreground ``<svg>``.
|
||||||
|
"""
|
||||||
|
|
||||||
|
if bg.name != "svg":
|
||||||
|
raise ValueError("bg is not a <svg> tag.")
|
||||||
|
if fg.name != "svg":
|
||||||
|
raise ValueError("fg is not a <svg> tag.")
|
||||||
|
|
||||||
|
bg = bg.__copy__()
|
||||||
|
bg.attrs["id"] = "emblematic-bg"
|
||||||
|
bg.attrs["width"] = "100%"
|
||||||
|
bg.attrs["height"] = "100%"
|
||||||
|
|
||||||
|
fg = fg.__copy__()
|
||||||
|
fg.attrs["id"] = "emblematic-fg"
|
||||||
|
fg.attrs["width"] = "63%"
|
||||||
|
fg.attrs["height"] = "63%"
|
||||||
|
fg.attrs["preserveAspectRation"] = "xMidYMid meet"
|
||||||
|
fg.attrs["transform"] = "translate(185, 185)"
|
||||||
|
|
||||||
|
doc = bs4.BeautifulSoup("""
|
||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1000 1000">
|
||||||
|
</svg>
|
||||||
|
""")
|
||||||
|
container: bs4.Tag = doc.svg
|
||||||
|
container.append(bg)
|
||||||
|
container.append(fg)
|
||||||
|
|
||||||
|
return doc
|
||||||
|
|
22
emblematic/fontawesome.py
Normal file
22
emblematic/fontawesome.py
Normal file
|
@ -0,0 +1,22 @@
|
||||||
|
"""
|
||||||
|
Module containing function to process `Font Awesome <https://fontawesome.com/>`_ SVG icons.
|
||||||
|
"""
|
||||||
|
|
||||||
|
import typing as t
|
||||||
|
import bs4
|
||||||
|
import pathlib
|
||||||
|
|
||||||
|
|
||||||
|
def get_icons(path: pathlib.Path):
|
||||||
|
if not path.exists():
|
||||||
|
raise ValueError("Given path does not exist.")
|
||||||
|
if not path.is_dir():
|
||||||
|
raise ValueError("Given path is not a directory.")
|
||||||
|
|
||||||
|
svgs = path.joinpath("svgs")
|
||||||
|
return svgs.glob("**/*.svg")
|
||||||
|
|
||||||
|
|
||||||
|
__all__ = (
|
||||||
|
"get_icons",
|
||||||
|
)
|
Loading…
Reference in a new issue