【问题标题】:Changing CTRL+P of a web page using R shiny使用 R Shiny 更改网页的 CTRL+P
【发布时间】:2022-01-01 22:50:06
【问题描述】:

我目前正在寻找一种方法来更改普通网页的打印功能的参数。事实上,当您按下 CTRL+P 时,它会打开一个小窗口,您可以在其中将文件打印为 PDF,我正在尝试更改其中的一些信息。例如,第一页的标题和 PDF 文件的名称。如果有人知道如何在我的 R 闪亮代码中做到这一点,请尽快告诉我。谢谢你:)

【问题讨论】:

    标签: r shiny shinydashboard


    【解决方案1】:

    将网页打印为 pdf 文件的对话框是浏览器的一项功能,无法使用 shiny 直接操作。然而,浏览器使用来自 head 标签的 HTML 元数据,例如打印标题。您可以将这些标签添加到闪亮的网页中:

    library(shiny)
    
    ui <- fluidPage(
      tags$head(
        # Define the title in both the browser tab name and pdf print header
        tags$title("My fancy shiny title")
      ),
      titlePanel("Hello Shiny!"),
      sidebarLayout(
        sidebarPanel(
          sliderInput(
            inputId = "bins",
            label = "Number of bins:",
            min = 1,
            max = 50,
            value = 30
          )
        ),
        mainPanel(
          plotOutput(outputId = "distPlot")
        )
      )
    )
    
    server <- server <- function(input, output) {
      output$distPlot <- renderPlot({
        x <- faithful$waiting
        bins <- seq(min(x), max(x), length.out = input$bins + 1)
    
        hist(x,
          breaks = bins, col = "#75AADB", border = "white",
          xlab = "Waiting time to next eruption (in mins)",
          main = "Histogram of waiting times"
        )
      })
    }
    
    
    shinyApp(ui, server)
    

    您可能还想添加shiny::tags$style 标签,例如添加@media 规则以自定义打印布局,例如删除侧边栏或按钮。

    【讨论】:

    • 非常感谢您的回答,这非常有帮助,它解决了我的代码的一些问题。现在,我正在尝试给 PDF 取一个不同于页面的名称...
    • 我认为标题标签用于标题和建议的文件名,因此无法单独更改它们。
    • 好的,谢谢@danlooo的帮助,我会继续找问题的!
    • 更新:我使用非反应值命名我的网页,并在启动应用程序后立即更改了此值,因此我的网页名称是我想要的,我可以根据需要更改我的 PDF 文件名它被称为
    猜你喜欢
    • 2020-04-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-03-29
    • 2021-01-13
    相关资源
    最近更新 更多