Skip to main content

Module svg

Module svg 

Source

Structs§

PathParser 🔒
バイト列から数値トークンを読み取るシンプルなイテレータ
Point 🔒
Segment 🔒
SvgCache
SVGラスタライズ結果のキャッシュ
SvgShape 🔒
1 つの塗りつぶし図形(フラット化済みセグメント + fill 色 ARGB)

Statics§

SVG_CACHE

Functions§

attr_num 🔒
close_segments 🔒
パスの始点と終点が開いていれば閉じる(fill 用)
collect_svg_shapes 🔒
SVG 本文から塗りつぶし図形を収集する
decode_svg_image
SVG バイト列を target_w × target_h の RGBA8888 にラスタライズする。 viewBox に従ってアスペクトを保ちつつスケールする。
ellipse_segments 🔒
楕円を多角形近似してセグメント化
extract_attr_f32 🔒
タグの属性値を数値で取得(“<svg … width="NN"” の最初の出現)
extract_path_d 🔒
SVG XML から <path d="..."> の d 属性値を抽出する
extract_viewbox_rect 🔒
viewBox を (x, y, w, h) で返す。無ければ width/height、それも無ければ 100x100。
extract_viewbox_size 🔒
viewBox の幅を取得する(正方形アイコン前提)
find_char 🔒
find_substr 🔒
flatten_cubic 🔒
3次ベジェ曲線を直線セグメント列に展開する(de Casteljau 法)
get_or_rasterize
SVGバイト列を指定サイズにラスタライズしてアルファマスクを返す(キャッシュ付き) 戻り値は size×size の A8 バッファ(0-255)
init_cache
natural_size
SVG の自然サイズ(w,h)を返す(ラスタライズ目標解像度の決定用)。
parse_f32 🔒
no_std 環境向けの簡易 f32 パーサ
parse_path_d 🔒
SVG の d 属性文字列をパースして線分リストに変換する
parse_points 🔒
poly_segments 🔒
点列を閉路セグメントに変換
rasterize 🔒
パスセグメント群を指定サイズにラスタライズしてアルファマスク(A8)を返す
resolve_fill 🔒
fill 色を決定(fill 属性 + style 内の fill)。無指定は黒。none は透明。
tag_attr 🔒
1 つの開始タグ(“<tag …>”)から属性値文字列を取得