PSNbst commited on
Commit
2db7422
·
verified ·
1 Parent(s): e5de369

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +9 -10
app.py CHANGED
@@ -7,7 +7,7 @@ CUSTOM_CSS = """
7
  /* 左侧面板 */
8
  #left-panel {
9
  width: 300px;
10
- height: 400px; /* 固定高度,你可根据需求调整 */
11
  overflow-y: auto; /* 超出时滚动 */
12
  border-right: 1px solid #ccc;
13
  padding: 10px;
@@ -58,7 +58,8 @@ def combine_action():
58
  def create_zip():
59
  """
60
  动态生成并返回一个 zip 文件(内存中)。
61
- Gradio 会将返回的 BytesIO 作为 File 下载。
 
62
  """
63
  buf = io.BytesIO()
64
  with zipfile.ZipFile(buf, 'w') as zf:
@@ -67,20 +68,19 @@ def create_zip():
67
  buf.seek(0)
68
  return buf # 返回内存中的 zip
69
 
 
70
  with gr.Blocks(css=CUSTOM_CSS) as demo:
71
- # 主布局
72
  with gr.Row():
73
- # 左侧面板
74
- with gr.Box(elem_id="left-panel"):
75
  gr.Markdown("**上传区域**")
76
  uploader = gr.File(label="在此处上传文件")
77
 
78
- # 右侧面板
79
- with gr.Box(elem_id="right-panel"):
80
  gr.Markdown("**结果缩略图**")
81
  gr.Markdown("这里可以放置处理后的缩略图或任何输出")
82
 
83
- # 底部按钮
84
  with gr.Row():
85
  combine_btn = gr.Button("合并", elem_id="combine-button")
86
  download_btn = gr.Button("下载 Zip", elem_id="download-zip")
@@ -88,8 +88,7 @@ with gr.Blocks(css=CUSTOM_CSS) as demo:
88
  # 点击“合并”时(这里仅做一个演示)
89
  combine_btn.click(fn=combine_action, inputs=[], outputs=[])
90
 
91
- # 准备一个隐藏的 File 组件,用来承载生成的 zip 文件
92
- # 一旦函数返回文件,该组件就会显示“下载链接”
93
  zip_file = gr.File(label="点此下载生成的 ZIP", visible=False)
94
 
95
  # 点击“下载 Zip”时,调用 create_zip,输出到 zip_file
 
7
  /* 左侧面板 */
8
  #left-panel {
9
  width: 300px;
10
+ height: 400px; /* 固定高度,可根据需要调节 */
11
  overflow-y: auto; /* 超出时滚动 */
12
  border-right: 1px solid #ccc;
13
  padding: 10px;
 
58
  def create_zip():
59
  """
60
  动态生成并返回一个 zip 文件(内存中)。
61
+ Gradio 会将返回的 BytesIO 作为 File 输出,
62
+ 用户看到下载链接后可点击保存。
63
  """
64
  buf = io.BytesIO()
65
  with zipfile.ZipFile(buf, 'w') as zf:
 
68
  buf.seek(0)
69
  return buf # 返回内存中的 zip
70
 
71
+ # 搭建Gradio界面
72
  with gr.Blocks(css=CUSTOM_CSS) as demo:
73
+ # 用 gr.Row() + gr.Column() 实现左右并排
74
  with gr.Row():
75
+ with gr.Column(elem_id="left-panel"):
 
76
  gr.Markdown("**上传区域**")
77
  uploader = gr.File(label="在此处上传文件")
78
 
79
+ with gr.Column(elem_id="right-panel"):
 
80
  gr.Markdown("**结果缩略图**")
81
  gr.Markdown("这里可以放置处理后的缩略图或任何输出")
82
 
83
+ # 底部按钮(同一行)
84
  with gr.Row():
85
  combine_btn = gr.Button("合并", elem_id="combine-button")
86
  download_btn = gr.Button("下载 Zip", elem_id="download-zip")
 
88
  # 点击“合并”时(这里仅做一个演示)
89
  combine_btn.click(fn=combine_action, inputs=[], outputs=[])
90
 
91
+ # 用一个隐藏的 File 组件承载生成的 zip 文件
 
92
  zip_file = gr.File(label="点此下载生成的 ZIP", visible=False)
93
 
94
  # 点击“下载 Zip”时,调用 create_zip,输出到 zip_file