mirror of
https://github.com/googlefonts/noto-emoji.git
synced 2025-06-07 23:37:58 +00:00
Utility to confirm sizing
This commit is contained in:
parent
6c4b81abcf
commit
ec11827b63
1 changed files with 42 additions and 0 deletions
42
size_check.py
Normal file
42
size_check.py
Normal file
|
@ -0,0 +1,42 @@
|
|||
"""Sanity check image sizes and svg viewboxes."""
|
||||
from PIL import Image
|
||||
from pathlib import Path
|
||||
from lxml import etree
|
||||
|
||||
|
||||
def _check_image(base_dir, image_dir):
|
||||
assert image_dir.is_dir()
|
||||
expected_size = (int(image_dir.name), int(image_dir.name))
|
||||
|
||||
for image_file in image_dir.iterdir():
|
||||
with Image.open(image_file) as image:
|
||||
actual_size = image.size
|
||||
if expected_size != actual_size:
|
||||
print(f"bad_dim {image_file.relative_to(base_dir)} actual {actual_size} expected {expected_size}")
|
||||
|
||||
def _check_svg(base_dir, svg_dir):
|
||||
expected_viewbox = (0.0, 0.0, 128.0, 128.0)
|
||||
for svg_file in svg_dir.iterdir():
|
||||
if not svg_file.name.startswith("emoji_u"):
|
||||
continue
|
||||
assert svg_file.is_file()
|
||||
with open(svg_file) as f:
|
||||
actual_viewbox = etree.parse(f).getroot().attrib["viewBox"]
|
||||
actual_viewbox = tuple(float(s) for s in actual_viewbox.split(" "))
|
||||
if expected_viewbox != actual_viewbox:
|
||||
print(f"bad_dim {svg_file.relative_to(base_dir)} actual {actual_viewbox} expected {expected_viewbox}")
|
||||
|
||||
def main():
|
||||
base_dir = Path(__file__).parent
|
||||
image_dir = base_dir / "png"
|
||||
svg_dir = base_dir / "svg"
|
||||
|
||||
assert image_dir.is_dir()
|
||||
assert svg_dir.is_dir()
|
||||
|
||||
for size_dir in image_dir.iterdir():
|
||||
_check_image(base_dir, size_dir)
|
||||
_check_svg(base_dir, svg_dir)
|
||||
|
||||
if __name__ == "__main__":
|
||||
main()
|
Loading…
Add table
Reference in a new issue