Spaces:
Sleeping
Sleeping
File size: 1,924 Bytes
ad8cacf |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 |
"""
Processing-related UI components.
"""
import gradio as gr
from app.ui.components_common import EMOJI
def create_svg_components():
"""Create SVG conversion components."""
with gr.Group():
gr.Markdown(f"## {EMOJI['settings']} SVG変換設定")
with gr.Accordion(f"{EMOJI['settings']} 詳細設定", open=False):
color_mode = gr.Radio(
choices=["color", "binary"],
value="color",
label="カラーモード"
)
hierarchical = gr.Radio(
choices=["stacked", "cutout"],
value="stacked",
label="階層モード"
)
mode = gr.Radio(
choices=["spline", "polygon", "none"],
value="spline",
label="トレースモード"
)
filter_speckle = gr.Slider(
minimum=0, maximum=128, value=10, step=1,
label="ノイズフィルタ (0-128)"
)
color_precision = gr.Slider(
minimum=1, maximum=8, value=6, step=1,
label="色精度 (1-8)"
)
corner_threshold = gr.Slider(
minimum=0, maximum=180, value=60, step=1,
label="角度閾値 (0-180)"
)
return (
color_mode, hierarchical, mode,
filter_speckle, color_precision, corner_threshold
)
def create_process_button():
"""Create process button component."""
return gr.Button(
f"{EMOJI['magic']} 処理開始",
variant="primary"
)
def create_grid_display_option():
"""Create grid display option component."""
return gr.Checkbox(
label=f"{EMOJI['grid']} グリッド表示",
value=True,
info="SVGをグリッド状に配置して表示"
)
|