Update app.py
Browse files
app.py
CHANGED
|
@@ -557,4 +557,46 @@ def create_app():
|
|
| 557 |
**❌ 상업적 라이선스 필요**
|
| 558 |
- 개인 사용: 무료
|
| 559 |
- 상업적 사용: 유료 라이선스 구매 필요
|
| 560 |
-
- 주로 전문
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 557 |
**❌ 상업적 라이선스 필요**
|
| 558 |
- 개인 사용: 무료
|
| 559 |
- 상업적 사용: 유료 라이선스 구매 필요
|
| 560 |
+
- 주로 전문 폰트 제작사 폰트들
|
| 561 |
+
|
| 562 |
+
**❓ 확인 필요**
|
| 563 |
+
- 데이터베이스에 정보가 없는 폰트
|
| 564 |
+
- 제작사 공식 사이트에서 직접 확인 필요
|
| 565 |
+
""")
|
| 566 |
+
|
| 567 |
+
gr.Markdown("### ⚠️ 안내사항")
|
| 568 |
+
gr.Markdown("- 참고용 도구입니다. 상업적 사용 전 공식 사이트에서 최종 확인하세요.")
|
| 569 |
+
gr.Markdown("- 라이선스 정보는 재검증되었으나 변경될 수 있습니다.")
|
| 570 |
+
gr.Markdown("- 총 25개 주요 한국어 폰트 정보를 제공합니다.")
|
| 571 |
+
|
| 572 |
+
def handle_analysis(file):
|
| 573 |
+
if file is None:
|
| 574 |
+
return "파일을 업로드해주세요.", None, gr.File(visible=False)
|
| 575 |
+
|
| 576 |
+
df, summary, excel_file = process_font_file(file)
|
| 577 |
+
|
| 578 |
+
if df is None:
|
| 579 |
+
return summary, None, gr.File(visible=False)
|
| 580 |
+
|
| 581 |
+
if excel_file:
|
| 582 |
+
return summary, df, gr.File(value=excel_file, visible=True)
|
| 583 |
+
else:
|
| 584 |
+
return summary, df, gr.File(visible=False)
|
| 585 |
+
|
| 586 |
+
analyze_btn.click(
|
| 587 |
+
fn=handle_analysis,
|
| 588 |
+
inputs=file_input,
|
| 589 |
+
outputs=[summary_output, result_table, excel_download]
|
| 590 |
+
)
|
| 591 |
+
|
| 592 |
+
file_input.change(
|
| 593 |
+
fn=handle_analysis,
|
| 594 |
+
inputs=file_input,
|
| 595 |
+
outputs=[summary_output, result_table, excel_download]
|
| 596 |
+
)
|
| 597 |
+
|
| 598 |
+
return app
|
| 599 |
+
|
| 600 |
+
if __name__ == "__main__":
|
| 601 |
+
app = create_app()
|
| 602 |
+
app.launch()
|