svg-ultralight 0.45.4__tar.gz → 0.45.6__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of svg-ultralight might be problematic. Click here for more details.
- {svg_ultralight-0.45.4/src/svg_ultralight.egg-info → svg_ultralight-0.45.6}/PKG-INFO +1 -1
- {svg_ultralight-0.45.4 → svg_ultralight-0.45.6}/pyproject.toml +2 -2
- {svg_ultralight-0.45.4 → svg_ultralight-0.45.6}/src/svg_ultralight/image_ops.py +7 -5
- {svg_ultralight-0.45.4 → svg_ultralight-0.45.6/src/svg_ultralight.egg-info}/PKG-INFO +1 -1
- {svg_ultralight-0.45.4 → svg_ultralight-0.45.6}/.gitignore +0 -0
- {svg_ultralight-0.45.4 → svg_ultralight-0.45.6}/.pre-commit-config.yaml +0 -0
- {svg_ultralight-0.45.4 → svg_ultralight-0.45.6}/README.md +0 -0
- {svg_ultralight-0.45.4 → svg_ultralight-0.45.6}/dev-requirements.txt +0 -0
- {svg_ultralight-0.45.4 → svg_ultralight-0.45.6}/experiments/encode_fonts3.txt +0 -0
- {svg_ultralight-0.45.4 → svg_ultralight-0.45.6}/experiments/font_css.py +0 -0
- {svg_ultralight-0.45.4 → svg_ultralight-0.45.6}/setup.cfg +0 -0
- {svg_ultralight-0.45.4 → svg_ultralight-0.45.6}/src/svg_ultralight/__init__.py +0 -0
- {svg_ultralight-0.45.4 → svg_ultralight-0.45.6}/src/svg_ultralight/animate.py +0 -0
- {svg_ultralight-0.45.4 → svg_ultralight-0.45.6}/src/svg_ultralight/attrib_hints.py +0 -0
- {svg_ultralight-0.45.4 → svg_ultralight-0.45.6}/src/svg_ultralight/bounding_boxes/__init__.py +0 -0
- {svg_ultralight-0.45.4 → svg_ultralight-0.45.6}/src/svg_ultralight/bounding_boxes/bound_helpers.py +0 -0
- {svg_ultralight-0.45.4 → svg_ultralight-0.45.6}/src/svg_ultralight/bounding_boxes/padded_text_initializers.py +0 -0
- {svg_ultralight-0.45.4 → svg_ultralight-0.45.6}/src/svg_ultralight/bounding_boxes/supports_bounds.py +0 -0
- {svg_ultralight-0.45.4 → svg_ultralight-0.45.6}/src/svg_ultralight/bounding_boxes/type_bound_collection.py +0 -0
- {svg_ultralight-0.45.4 → svg_ultralight-0.45.6}/src/svg_ultralight/bounding_boxes/type_bound_element.py +0 -0
- {svg_ultralight-0.45.4 → svg_ultralight-0.45.6}/src/svg_ultralight/bounding_boxes/type_bounding_box.py +0 -0
- {svg_ultralight-0.45.4 → svg_ultralight-0.45.6}/src/svg_ultralight/bounding_boxes/type_padded_text.py +0 -0
- {svg_ultralight-0.45.4 → svg_ultralight-0.45.6}/src/svg_ultralight/constructors/__init__.py +0 -0
- {svg_ultralight-0.45.4 → svg_ultralight-0.45.6}/src/svg_ultralight/constructors/new_element.py +0 -0
- {svg_ultralight-0.45.4 → svg_ultralight-0.45.6}/src/svg_ultralight/font_tools/__init__.py +0 -0
- {svg_ultralight-0.45.4 → svg_ultralight-0.45.6}/src/svg_ultralight/font_tools/comp_results.py +0 -0
- {svg_ultralight-0.45.4 → svg_ultralight-0.45.6}/src/svg_ultralight/font_tools/font_info.py +0 -0
- {svg_ultralight-0.45.4 → svg_ultralight-0.45.6}/src/svg_ultralight/font_tools/globs.py +0 -0
- {svg_ultralight-0.45.4 → svg_ultralight-0.45.6}/src/svg_ultralight/inkscape.py +0 -0
- {svg_ultralight-0.45.4 → svg_ultralight-0.45.6}/src/svg_ultralight/layout.py +0 -0
- {svg_ultralight-0.45.4 → svg_ultralight-0.45.6}/src/svg_ultralight/main.py +0 -0
- {svg_ultralight-0.45.4 → svg_ultralight-0.45.6}/src/svg_ultralight/metadata.py +0 -0
- {svg_ultralight-0.45.4 → svg_ultralight-0.45.6}/src/svg_ultralight/nsmap.py +0 -0
- {svg_ultralight-0.45.4 → svg_ultralight-0.45.6}/src/svg_ultralight/py.typed +0 -0
- {svg_ultralight-0.45.4 → svg_ultralight-0.45.6}/src/svg_ultralight/query.py +0 -0
- {svg_ultralight-0.45.4 → svg_ultralight-0.45.6}/src/svg_ultralight/root_elements.py +0 -0
- {svg_ultralight-0.45.4 → svg_ultralight-0.45.6}/src/svg_ultralight/string_conversion.py +0 -0
- {svg_ultralight-0.45.4 → svg_ultralight-0.45.6}/src/svg_ultralight/strings/__init__.py +0 -0
- {svg_ultralight-0.45.4 → svg_ultralight-0.45.6}/src/svg_ultralight/strings/svg_strings.py +0 -0
- {svg_ultralight-0.45.4 → svg_ultralight-0.45.6}/src/svg_ultralight/transformations.py +0 -0
- {svg_ultralight-0.45.4 → svg_ultralight-0.45.6}/src/svg_ultralight/unit_conversion.py +0 -0
- {svg_ultralight-0.45.4 → svg_ultralight-0.45.6}/src/svg_ultralight.egg-info/SOURCES.txt +0 -0
- {svg_ultralight-0.45.4 → svg_ultralight-0.45.6}/src/svg_ultralight.egg-info/dependency_links.txt +0 -0
- {svg_ultralight-0.45.4 → svg_ultralight-0.45.6}/src/svg_ultralight.egg-info/requires.txt +0 -0
- {svg_ultralight-0.45.4 → svg_ultralight-0.45.6}/src/svg_ultralight.egg-info/top_level.txt +0 -0
- {svg_ultralight-0.45.4 → svg_ultralight-0.45.6}/tests/__init__.py +0 -0
- {svg_ultralight-0.45.4 → svg_ultralight-0.45.6}/tests/conftest.py +0 -0
- {svg_ultralight-0.45.4 → svg_ultralight-0.45.6}/tests/resources/arrow.svg +0 -0
- {svg_ultralight-0.45.4 → svg_ultralight-0.45.6}/tests/test_bound_element.py +0 -0
- {svg_ultralight-0.45.4 → svg_ultralight-0.45.6}/tests/test_bounding.py +0 -0
- {svg_ultralight-0.45.4 → svg_ultralight-0.45.6}/tests/test_inkscape.py +0 -0
- {svg_ultralight-0.45.4 → svg_ultralight-0.45.6}/tests/test_layout.py +0 -0
- {svg_ultralight-0.45.4 → svg_ultralight-0.45.6}/tests/test_matrices.py +0 -0
- {svg_ultralight-0.45.4 → svg_ultralight-0.45.6}/tests/test_metadata.py +0 -0
- {svg_ultralight-0.45.4 → svg_ultralight-0.45.6}/tests/test_new_element.py +0 -0
- {svg_ultralight-0.45.4 → svg_ultralight-0.45.6}/tests/test_padded_text_initializers.py +0 -0
- {svg_ultralight-0.45.4 → svg_ultralight-0.45.6}/tests/test_padding.py +0 -0
- {svg_ultralight-0.45.4 → svg_ultralight-0.45.6}/tests/test_queries.py +0 -0
- {svg_ultralight-0.45.4 → svg_ultralight-0.45.6}/tests/test_root_elements.py +0 -0
- {svg_ultralight-0.45.4 → svg_ultralight-0.45.6}/tests/test_string_conversion.py +0 -0
- {svg_ultralight-0.45.4 → svg_ultralight-0.45.6}/tests/test_svg_ultralight.py +0 -0
- {svg_ultralight-0.45.4 → svg_ultralight-0.45.6}/tox.ini +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
[project]
|
|
2
2
|
name = "svg-ultralight"
|
|
3
|
-
version = "0.45.
|
|
3
|
+
version = "0.45.6"
|
|
4
4
|
description = "a sensible way to create svg files with Python"
|
|
5
5
|
authors = [{ name = "Shay Hill", email = "shay_public@hotmail.com" }]
|
|
6
6
|
license = { text = "MIT" }
|
|
@@ -53,7 +53,7 @@ convention = "pep257"
|
|
|
53
53
|
|
|
54
54
|
[tool.commitizen]
|
|
55
55
|
name = "cz_conventional_commits"
|
|
56
|
-
version = "0.45.
|
|
56
|
+
version = "0.45.6"
|
|
57
57
|
tag_format = "$version"
|
|
58
58
|
version_files = ["pyproject.toml:^version"]
|
|
59
59
|
annotated_tag = true
|
|
@@ -32,6 +32,7 @@ from lxml import etree
|
|
|
32
32
|
|
|
33
33
|
from svg_ultralight import NSMAP
|
|
34
34
|
from svg_ultralight.bounding_boxes.bound_helpers import bbox_dict
|
|
35
|
+
from svg_ultralight.bounding_boxes.type_bounding_box import BoundingBox
|
|
35
36
|
from svg_ultralight.constructors import new_element
|
|
36
37
|
|
|
37
38
|
if TYPE_CHECKING:
|
|
@@ -41,8 +42,6 @@ if TYPE_CHECKING:
|
|
|
41
42
|
_Element as EtreeElement, # pyright: ignore [reportPrivateUsage]
|
|
42
43
|
)
|
|
43
44
|
|
|
44
|
-
from svg_ultralight.bounding_boxes.type_bounding_box import BoundingBox
|
|
45
|
-
|
|
46
45
|
|
|
47
46
|
def _symmetric_crop(
|
|
48
47
|
image: ImageType, center: tuple[float, float] | None = None
|
|
@@ -70,7 +69,7 @@ def _symmetric_crop(
|
|
|
70
69
|
|
|
71
70
|
|
|
72
71
|
def _crop_image_to_bbox_ratio(
|
|
73
|
-
image: ImageType, bbox: BoundingBox, center: tuple[float, float] | None
|
|
72
|
+
image: ImageType, bbox: BoundingBox, center: tuple[float, float] | None
|
|
74
73
|
) -> ImageType:
|
|
75
74
|
"""Crop an image to the ratio of a bounding box.
|
|
76
75
|
|
|
@@ -116,8 +115,8 @@ def _get_svg_embedded_image_str(image: ImageType) -> str:
|
|
|
116
115
|
|
|
117
116
|
def new_image_elem_in_bbox(
|
|
118
117
|
filename: str | os.PathLike[str],
|
|
119
|
-
bbox: BoundingBox,
|
|
120
|
-
center: tuple[float, float] | None,
|
|
118
|
+
bbox: BoundingBox | None = None,
|
|
119
|
+
center: tuple[float, float] | None = None,
|
|
121
120
|
) -> EtreeElement:
|
|
122
121
|
"""Create a new svg image element inside a bounding box.
|
|
123
122
|
|
|
@@ -128,6 +127,9 @@ def new_image_elem_in_bbox(
|
|
|
128
127
|
(0.4, 0.5) would crop 20% off the right side of the image.
|
|
129
128
|
:return: an etree image element with the cropped image embedded
|
|
130
129
|
"""
|
|
130
|
+
image = Image.open(filename)
|
|
131
|
+
if bbox is None:
|
|
132
|
+
bbox = BoundingBox(0, 0, image.width, image.height)
|
|
131
133
|
image = _crop_image_to_bbox_ratio(Image.open(filename), bbox, center)
|
|
132
134
|
svg_image = new_element("image", **bbox_dict(bbox))
|
|
133
135
|
svg_image.set(
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{svg_ultralight-0.45.4 → svg_ultralight-0.45.6}/src/svg_ultralight/bounding_boxes/__init__.py
RENAMED
|
File without changes
|
{svg_ultralight-0.45.4 → svg_ultralight-0.45.6}/src/svg_ultralight/bounding_boxes/bound_helpers.py
RENAMED
|
File without changes
|
|
File without changes
|
{svg_ultralight-0.45.4 → svg_ultralight-0.45.6}/src/svg_ultralight/bounding_boxes/supports_bounds.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{svg_ultralight-0.45.4 → svg_ultralight-0.45.6}/src/svg_ultralight/constructors/new_element.py
RENAMED
|
File without changes
|
|
File without changes
|
{svg_ultralight-0.45.4 → svg_ultralight-0.45.6}/src/svg_ultralight/font_tools/comp_results.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{svg_ultralight-0.45.4 → svg_ultralight-0.45.6}/src/svg_ultralight.egg-info/dependency_links.txt
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|