0

こんにちは、オフィサーから生成している画像/テーブルのサイズと中央を自動的に調整する独自の関数を作成しようとしています。add_image と add_table の top/left 関数は、各テーブルを手動で追加する場合に適しています。異なるテーブルはサイズが異なりますが、異なる形状の画像とテーブルに対して自動的に行う方法がわかりませんでした。画像用に次のコードがあります。

Image <- function(PP,title,footer,pageNO,path){
  im <- load.image(path)
  width <- imager::width(im)
  height <- imager::height(im)
  ratio <- width/height
  if(ratio < 9.15 / 3.6){
    y <- 3.6
    x <- 3.6 * ratio
  }
  if(ratio >= 9.15 / 3.6){
    y <- 9.15 / ratio
    x <- 9.15
  }
  PP <- PP %>% 
    add_slide(layout = "Title and Content", master = "Office Theme") %>%
    ph_with_text(type = "title", str = title) %>%
    ph_with_text(type = "dt", str = format(Sys.Date())) %>%
    ph_with_img(type = "body", src = path, height = y, width = x) %>%
    ph_with_text(type = "ftr",str = footer) %>%
    ph_with_text(type = "sldNum", str = pageNO)
}

次に、この画像をスライドの中央に揃えたいのですが、どうすればよいかわかりません。

次に、テーブルについても同じですが、フレックス可能な画像の元の幅と高さに基づいて列の幅と高さを自動的に再スケーリングする必要があるため、これを行う方法がわかりません。違う方法ですか?このための現在のコードは次のとおりですが、サイズ変更は行われません:

Slide <- function(PP,title,footer,pageNO,table){
  PP <- PP %>% 
    add_slide(layout = "Title and Content", master = "Office Theme") %>%
    ph_with_text(type = "title", str = title) %>%
    ph_with_text(type = "ftr",str = footer) %>%
    ph_with_text(type = "dt", str = format(Sys.Date())) %>%
    ph_with_flextable(value = table, type = "body") %>%
    ph_with_text(type = "sldNum", str = pageNO)
}

事前に感謝します。どんな助けでも大歓迎です

4

0 に答える 0