如何在 RShiny 应用程序中使用自定义字体

mat*_*sho 5 css fonts r font-family shiny

我想在我的 Rshiny 应用程序中加入自定义字体。我有预感代码会放在tags$style 中,但没有实际的代码来包含它。

示例代码:

ui <- fluidPage(
        tags$style(  ),
        column(12,
                dataTableOutput("testtab")
              ) # close column
) #close fluidpage

server <- function(input, output, session) {
  output$testtab <- 
        DT::renderDataTable({
                               tab <- data.frame(a = 1:10, b = 11:20, c = 21:30)
                               dat.tab <- datatable(tab) %>% formatPercentage('a', 0) %>% 
                                                          formatCurrency(1:ncol(tab), '$')
                              return(dat.tab)
                            }) # close renderDataTable
} # close server

shinyApp(ui=ui, server=server)
Run Code Online (Sandbox Code Playgroud)

例如,假设我想使用网络上的任何自定义字体。

Mik*_*ise 4

这应该有帮助。

首先,您需要从http://www.fontspace.com/gunarta/surabanglus下载字体,然后单击带有ttf扩展名的文件并单击安装来安装它。这里我添加了控制默认正文字体的标签,以及使用“id标签”控制特定控件中的字体和背景颜色的标签。

还有其他方法可以使用单独的 CSS 文件等来做到这一点。但这既快速又简单,而且不太脏。

library(shiny)
library(dplyr)
library(DT)

ui <- fluidPage(
  tags$style(HTML('body {font-family:"Times New Roman",Georgia,Serif; background-color:orange}')),
  tags$style(HTML('#testtab {font-family:"surabanglus",Georgia,Serif; background-color:lightblue}')),
  tags$style(HTML('#hello2 {font-family:"Courier",Georgia,Serif; background-color:pink}')),
  column(12,
         dataTableOutput("testtab"),
         actionButton("hello1","Hello There (uses font inherited from body)"),
         actionButton("hello2","Hello There again (uses Courier)")

  ) # close column,
) #close fluidpage

server <- function(input, output, session) {
  output$testtab <- DT::renderDataTable({
    tab <- data.frame(a = 1:10, b = 11:20, c = 21:30)
    dat.tab <- datatable(tab) %>% formatPercentage('a', 0) %>% 
      formatCurrency(1:ncol(tab), '$')
    return(dat.tab)
  }) # close renderDataTable
} # close server

shinyApp(ui=ui, server=server)
Run Code Online (Sandbox Code Playgroud)

产生这个:

在此输入图像描述