Spaces:
Runtime error
Runtime error
| import streamlit as st | |
| from text_annotation_utils import * | |
| def annotated_text(*args, type=None): | |
| """Writes text with annotations into your Streamlit app. | |
| Parameters | |
| ---------- | |
| *args : str, tuple or htbuilder.HtmlElement | |
| Arguments can be: | |
| - strings, to draw the string as-is on the screen. | |
| - tuples of the form (main_text, annotation_text, background, color) where | |
| background and foreground colors are optional and should be an CSS-valid string such as | |
| "#aabbcc" or "rgb(10, 20, 30)" | |
| - HtmlElement objects in case you want to customize the annotations further. In particular, | |
| you can import the `annotation()` function from this module to easily produce annotations | |
| whose CSS you can customize via keyword arguments. | |
| Examples | |
| -------- | |
| # >>> annotated_text( | |
| # ... "This ", | |
| # ... ("is", "verb", "#8ef"), | |
| # ... " some ", | |
| # ... ("annotated", "adj", "#faa"), | |
| # ... ("text", "noun", "#afa"), | |
| # ... " for those of ", | |
| # ... ("you", "pronoun", "#fea"), | |
| # ... " who ", | |
| # ... ("like", "verb", "#8ef"), | |
| # ... " this sort of ", | |
| # ... ("thing", "noun", "#afa"), | |
| # ... ) | |
| # >>> annotated_text( | |
| # ... "Hello ", | |
| # ... annotation("world!", "noun", color="#8ef", border="1px dashed red"), | |
| # ... ) | |
| """ | |
| if type == 'title': | |
| st.markdown( | |
| '<p class="big-font">' + get_annotated_html(*args)+ '</p>', | |
| unsafe_allow_html=True, | |
| ) | |
| if type == 'description': | |
| st.markdown( | |
| '<p class="medium-font">' + get_annotated_html(*args) + '</p>', | |
| unsafe_allow_html=True, | |
| ) | |
| else: | |
| st.markdown( | |
| get_annotated_html(*args), | |
| unsafe_allow_html=True, | |
| ) |