0

I am new to Trame and Vuetify. I need to show an image in the GUI. The GUI would run on a localhost. My MWE is given below:

from trame.app import get_server
from trame.widgets import html, vuetify, vtk as vtk_widgets
from trame.ui.vuetify import SinglePageLayout
import os

# -----------------------------------------------------------------------------
# Trame setup
# -----------------------------------------------------------------------------

server = get_server(client_type="vue2")
state, ctrl = server.state, server.controller

#################
state.trame__title = "Test"

with SinglePageLayout(server) as layout:
    layout.icon.click = "$refs.view.resetCamera()"
    
    with layout.content:
        with vuetify.VContainer(fluid=True, classes="pa-0 fill-height d-flex flex-row"):
            with vuetify.VCol(style="max-width: 20vw; min-width: 200px;"):
                with vuetify.VContainer():
                    print("Image exists:", os.path.exists("assets/my_test_image.png"))
                    print("Image exists:", os.path.exists("assets/my_test_image.png"))
                    html.Img(
                        src="/assets/my_test_image.png",
                        style=(
                            "max-width: 100%; "
                            "margin-top: 20px; "
                            "display: block;"
                        )
                    )
# -----------------------------------------------------------------------------
# Main
# -----------------------------------------------------------------------------

if __name__ == "__main__":
    server.start()

Question: In the program above, I want to display an image called my_test_image.png which is already present in the assets folder. The program runs but the image is not displayed (rather a borken image icon is displayed). As a sanity check, I have put the print statement to check if the image exists and I am obtained **Image exists: True**. How do I display the image in the gui?

0

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.