Изменить шрифт одного слова / подстроки в строке текста в Shiny - PullRequest
0 голосов
/ 09 марта 2019

В моем блестящем приложении у меня есть файл CSS, чтобы разобраться со стилем для большинства вещей. Тем не менее, я борюсь с одним элементом, который заключается в том, что я хочу, чтобы шрифт одного слова был изменен в строке текста.

Я знаю, как изменить некоторые элементы, такие как выделение жирным шрифтом или другим цветом, но я бы хотел, чтобы это был другой шрифт, и это не так очевидно. Если я попробую что-то подобное только для одного слова, я получу напечатанный HTML, так как он ничего не делает. Я не очень знаком с HTML или CSS, поэтому я могу что-то упустить, но не могу найти здесь вопрос с той же конкретной проблемой.

Вот пример кода:

UI

htmlOutput("example_text)

Сервер

function(input, output, session) {
output$example_text <- renderUI({
                                paste0("I want to make ", "this", " a different font")
                               })
}

Сервер v2 (выделяет слово жирным шрифтом, но не меняет семейство шрифтов)

function(input, output, session) {
output$example_text <- renderUI({
         HTML(paste0("I want to make ", 
              "<font-family=\"Courier New\"><b>", "this", "</font></b>",
              " a different font")
              )
                               })
}

1 Ответ

2 голосов
/ 09 марта 2019

Из того, что я вижу, вы можете попробовать использовать HTML(), но вы столкнетесь с проблемой удержания текста в одной строке.Вы могли бы получить некоторую помощь здесь: как разместить текст двух размеров шрифта в одной строке в HTML? .

CSS, который вы можете добавить с помощью tags$style():

  tags$style('
    #mydiv{font-family:"Arial";}
    #mydiv b{font-family:"Courier New";}
  '),

Полный код будет выглядеть так:

ui <- fluidPage(
  tags$style('
    #mydiv{font-family:"Arial";}
    #mydiv b{font-family:"Courier New";}'),
  htmlOutput("example_text")
)

server <- function(input, output) {
  output$example_text <- renderUI({
    HTML("<div id='mydiv'>I want to make <b>this</b> a new font.</div>")
  })
}

shinyApp(ui, server)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...