返回 ppt-master
__init__.py
1 #!/usr/bin/env python3
2 """
3 PPT Master - DrawingML Preset Shapes
4
5 Shared full-catalog loader, registry, and formula evaluator for PPTX shapes.
6
7 Usage:
8 Import get_preset_registry from pptx_shapes.
9
10 Examples:
11 from pptx_shapes import get_preset_registry
12 arrow = get_preset_registry().evaluate("rightArrow", 320, 160)
13
14 Dependencies:
15 None (only uses standard library)
16 """
17
18 from .errors import (
19 FormulaEvaluationError,
20 FormulaSyntaxError,
21 PresetShapeDataError,
22 PresetShapeError,
23 UnknownGuideError,
24 UnknownPresetShapeError,
25 )
26 from .formula import (
27 FULL_CIRCLE,
28 OOXML_COORDINATE_MAX,
29 OOXML_COORDINATE_MIN,
30 OOXML_DEGREE,
31 OOXML_LINE_WIDTH_MAX,
32 SUPPORTED_OPERATORS,
33 FormulaEvaluator,
34 build_builtin_guides,
35 evaluate_formula,
36 validate_ooxml_line_width,
37 validate_ooxml_xfrm,
38 )
39 from .loader import (
40 BUNDLED_DEFINITIONS_PATH,
41 BUNDLED_DEFINITIONS_SHA256,
42 BUNDLED_SHAPE_TYPES_PATH,
43 BUNDLED_SHAPE_TYPES_SHA256,
44 DRAWINGML_NS,
45 EXPECTED_SHAPE_COUNT,
46 load_preset_shape_definitions,
47 load_shape_type_values,
48 )
49 from .models import (
50 EvaluatedPresetGeometry,
51 PresetShapeDefinition,
52 )
53 from .registry import (
54 CONNECTOR_PRESET_TYPES,
55 PresetShapeRegistry,
56 get_preset_registry,
57 )
58 from .semantic_hash import (
59 NATIVE_FALLBACK_SHA256_ATTR,
60 resolve_preset_preview_hash,
61 svg_native_fallback_fingerprint,
62 svg_native_fallback_markup_fingerprint,
63 svg_preset_preview_fingerprint,
64 svg_text_fingerprint,
65 )
66 from .xml_safety import RELATIONSHIPS_NS, has_relationship_attributes
67
68
69 __all__ = [
70 "BUNDLED_DEFINITIONS_PATH",
71 "BUNDLED_DEFINITIONS_SHA256",
72 "BUNDLED_SHAPE_TYPES_PATH",
73 "BUNDLED_SHAPE_TYPES_SHA256",
74 "CONNECTOR_PRESET_TYPES",
75 "DRAWINGML_NS",
76 "EXPECTED_SHAPE_COUNT",
77 "FULL_CIRCLE",
78 "OOXML_COORDINATE_MAX",
79 "OOXML_COORDINATE_MIN",
80 "OOXML_DEGREE",
81 "OOXML_LINE_WIDTH_MAX",
82 "NATIVE_FALLBACK_SHA256_ATTR",
83 "SUPPORTED_OPERATORS",
84 "EvaluatedPresetGeometry",
85 "FormulaEvaluationError",
86 "FormulaEvaluator",
87 "FormulaSyntaxError",
88 "PresetShapeDataError",
89 "PresetShapeDefinition",
90 "PresetShapeError",
91 "PresetShapeRegistry",
92 "RELATIONSHIPS_NS",
93 "UnknownGuideError",
94 "UnknownPresetShapeError",
95 "build_builtin_guides",
96 "evaluate_formula",
97 "get_preset_registry",
98 "has_relationship_attributes",
99 "load_preset_shape_definitions",
100 "load_shape_type_values",
101 "resolve_preset_preview_hash",
102 "svg_native_fallback_fingerprint",
103 "svg_native_fallback_markup_fingerprint",
104 "svg_text_fingerprint",
105 "svg_preset_preview_fingerprint",
106 "validate_ooxml_line_width",
107 "validate_ooxml_xfrm",
108 ]
109
109 lines PYTHON