File size: 3,926 Bytes
743cef3
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
be24841
743cef3
 
 
 
 
 
 
 
be24841
743cef3
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
32ca67e
743cef3
32ca67e
743cef3
8319510
743cef3
 
32ca67e
743cef3
32ca67e
743cef3
a3c492d
743cef3
a3c492d
 
743cef3
 
 
 
 
 
 
 
 
2758916
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
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
import gradio as gr

import numpy as np
from interface_modules.X2Painting.template_config import style_example
from interface_modules.X2Painting.client_process import send_to_server


def on_select(evt: gr.SelectData):
    index = evt.index
    style_name = list(style_example.values())[index]
    return gr.update(value=style_name)


css = """
        .gradio-container {background-color: #F0F5FF; width: 95% !important}
        """
title = r"""
    </br>
    <h1 align="center" style="font-size: 42px;">Character2Painting</h1>
    <h2 align="center"> <span style="color: red;">Character</span> <--- <span style="color: black;">Zoom out⭐️⭐⭐⭐⭐Zoom in ---> </span> <span style="color: red;">Painting</span></h2>
    </br>

    </br>   
    <img src="https://cdn-lfs-us-1.huggingface.co/repos/08/ef/08ef1f5b2ff4e2232d2843b12c514f710b2398df7b2eb1d5af354753aef4bc97/9815b4f1ebc753dfb44ddd8f0ecf6416bd07c5136f53154051cc4b20bd8ec715?response-content-disposition=inline%3B+filename*%3DUTF-8%27%27xword_intro.png%3B+filename%3D%22xword_intro.png%22%3B&response-content-type=image%2Fpng&Expires=1712822072&Policy=eyJTdGF0ZW1lbnQiOlt7IkNvbmRpdGlvbiI6eyJEYXRlTGVzc1RoYW4iOnsiQVdTOkVwb2NoVGltZSI6MTcxMjgyMjA3Mn19LCJSZXNvdXJjZSI6Imh0dHBzOi8vY2RuLWxmcy11cy0xLmh1Z2dpbmdmYWNlLmNvL3JlcG9zLzA4L2VmLzA4ZWYxZjViMmZmNGUyMjMyZDI4NDNiMTJjNTE0ZjcxMGIyMzk4ZGY3YjJlYjFkNWFmMzU0NzUzYWVmNGJjOTcvOTgxNWI0ZjFlYmM3NTNkZmI0NGRkZDhmMGVjZjY0MTZiZDA3YzUxMzZmNTMxNTQwNTFjYzRiMjBiZDhlYzcxNT9yZXNwb25zZS1jb250ZW50LWRpc3Bvc2l0aW9uPSomcmVzcG9uc2UtY29udGVudC10eXBlPSoifV19&Signature=B7RToR-DTnf9OcWOi2spv19seYQiF8fFtxp36WZS6IPEkBdY9r-x5PAnCiZLx1imVcWuzrzabYRSyOaCQZgKqshAAlbmU-7JECvIEDFZcwOuA4-CJU7gR2v6GocVmEuAcfd8igew9gX7Uza8zAPmbdNytskCvFtSnZMdXD6fdCBrq2QHW1PSTL%7E0H5L342aVy6%7E7mfHHvaWsSEE%7EDcUjzahSX1ISlWDUl1dy66SFtfDMzc1z6sMgnzGmqWn6uMNH-3Uv%7Efk4xpLjwlmGQGO0ANE1226zXNegdWnPsjiZNRhN18OcwFy7Kv9XAUBwoePoNjec3iTRwWrqnaN4fzEnww__&Key-Pair-Id=KCD77M1F0VK2B" style="display: block; margin: 0 auto; max-height: 384px;">
    </br>
    <h2 style="text-align: center;">===================🤪🥳 Have a Try 🤩😄===================</h2>
    """

with gr.Blocks(css=css) as demo:
    # description
    gr.HTML(title)
    with gr.Row():
        with gr.Column(scale=1):
            gr.Markdown('''
                     ⭐️<b> User Tips </b>
                    - <b>step1:</b>Input a Character. Recommended Chinese Character.
                    - <b>step2:</b>Select a style in the Gallery
                    - <b>step3:</b>Click Run,Waiting for about 1 Min. Enjoy
                ''')
            word = gr.Textbox(
                label="Input Character",
                info="please type Character, such as 李. (输入中文字,例如,李)",
                value="李",
                elem_id="InputCha"
            )

            submit = gr.ClearButton(value="Run",elem_id="RunBtn")
            style_name = gr.Textbox(
                label="style_name",
                info="style_name",
                value="", visible=False,
            )

        with gr.Column(scale=6):
            gr.HTML("""
            <h1 align="center">Style Gallery</h1>
            """)
            example_gallery = gr.Gallery(label="style_type", show_label=True, elem_id="example_gallery",
                                         value=list(style_example.keys()), columns=5
                                         )
    # vis result gallery
    gr.HTML("""
    <h1 align="center">Result Gallery</h1>
    """)
    final_gallery = gr.Gallery(
        label="最终生成图",
        show_label=False,
        elem_classes="final_gallery",columns=[4], rows=[2]
    )

    submit.add([final_gallery])
    submit.click(send_to_server,
                 inputs=[word, style_name],
                 outputs=[final_gallery])
    example_gallery.select(on_select, None,
                           [style_name])

demo.queue()
demo.launch(share=True)