code-slicer commited on
Commit
d19a2fa
·
verified ·
1 Parent(s): 90b496c

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +24 -26
app.py CHANGED
@@ -194,32 +194,30 @@ st.markdown(
194
  st.sidebar.subheader("🎨 배경 설정")
195
  st.sidebar.toggle("배경 이미지 사용", key="bg_on", value=True)
196
 
197
- # st.expander를 사용해 UI를 깔끔하게 정리
198
- with st.sidebar.expander("이미지 배경 옵션", expanded=True):
199
- st.text_input("배경 이미지 URL", key="bg_url", value="https://images.unsplash.com/photo-1506744038136-46273834b3fb")
200
- st.slider("배경 이미지 오버레이 (%)", 0, 100, 85, key="bg_overlay_pct")
201
-
202
- with st.sidebar.expander("단색 배경 옵션", expanded=True):
203
- # 라디오 버튼으로 추천 색상 팔레트 제공
204
- palette = {
205
- "Light Gray": "#F1F1F1",
206
- "Mint": "#E3E8E3",
207
- "Sky Blue": "#D9E1E2",
208
- "Beige": "#F0F0EC"
209
- }
210
- selected_color_name = st.radio(
211
- "추천 색상",
212
- options=palette.keys(),
213
- key="selected_color_name",
214
- horizontal=True # 버튼을 가로로 배열
215
- )
216
-
217
- # 선택된 라디오 버튼의 색상 코드를 color_picker의 기본값으로 사용
218
- st.color_picker(
219
- "색상 직접 선택",
220
- key="bg_color",
221
- value=palette[selected_color_name]
222
- )
223
 
224
  def apply_background():
225
  # 보호: 기존 ::before 배경이 있으면 끄기 (겹침/끊김 방지)
 
194
  st.sidebar.subheader("🎨 배경 설정")
195
  st.sidebar.toggle("배경 이미지 사용", key="bg_on", value=True)
196
 
197
+ # 1. '배경 이미지 사용'이 ON일 때만 이미지 관련 옵션 표시
198
+ if st.session_state.bg_on:
199
+ with st.sidebar.expander("이미지 배경 옵션", expanded=True):
200
+ st.text_input("배경 이미지 URL", key="bg_url", value="https://images.unsplash.com/photo-1506744038136-46273834b3fb")
201
+ st.slider("배경 이미지 오버레이 (%)", 0, 100, 85, key="bg_overlay_pct")
202
+ # 2. '배경 이미지 사용'이 OFF일 때만 단색 관련 옵션 표시
203
+ else:
204
+ with st.sidebar.expander("단색 배경 옵션", expanded=True):
205
+ st.write("🎨 원하는 색상을 골라주세요")
206
+
207
+ cols = st.columns(4)
208
+ default_colors = ["#F1F1F1", "#E3E8E3", "#D9E1E2", "#F0F0EC"] #light gray, Mint, Sky blue, Beige
209
+
210
+ # 컬러 피커를 가로로 생성
211
+ for i, col in enumerate(cols):
212
+ with col:
213
+ picked = st.color_picker(
214
+ f"색상 {i+1}",
215
+ default_colors[i],
216
+ key=f"color{i+1}"
217
+ )
218
+ # 선택 즉시 bg_color 업데이트
219
+ if picked:
220
+ st.session_state.bg_color = picked
 
 
221
 
222
  def apply_background():
223
  # 보호: 기존 ::before 배경이 있으면 끄기 (겹침/끊김 방지)