Definir margens verticais e horizontais simultaneamente no YAML do officedown do RMarkdown

library(officedown)
library(officer)
library(knitr)

Estou elaborando um documento no RMarkdown e estou usando o template Advanced Word document do officedown.

Preciso configurar as margens do documento word com 1 polegada para páginas na orientação vertical e 0.5 polegada para páginas que estejam na orientação horizontal.

Eu consigo configurar as margens com 1 polegada para páginas na orientação vertical adicionando o seguinte trecho ao YAML:

output:
  officedown::rdocx_document:
    page_margins:
      bottom: 1
      top: 1
      right: 1
      left: 1
      orient: "portrait"

Também consigo configurar as margens com 0.5 polegada para páginas na orientação horizontal adicionando o seguinte trecho ao YAML:

output:
  officedown::rdocx_document:
    page_margins:
      bottom: 0.5
      top: 0.5
      right: 0.5
      left: 0.5
      orient: "landscape"

No entanto, não consigo fazer ambas as configurações ao mesmo tempo. Até onde pude perceber, a documentação não explica se isso é possível. Então fiz os seguintes testes (nenhum com sucesso):

tentativa 1:

output:
  officedown::rdocx_document:
    page_margins:
      bottom: 0.5
      top: 0.5
      right: 0.5
      left: 0.5
      orient: "landscape"
      bottom: 1
      top: 1
      right: 1
      left: 1
      orient: "portrait"

Recebi a seguinte mensagem:

Error in yaml::yaml.load(..., eval.expr = TRUE) : 
  Duplicate map key: 'bottom'
Calls: <Anonymous> ... parse_yaml_front_matter -> yaml_load -> <Anonymous>
Execução interrompida

tentativa 2:

output:
  officedown::rdocx_document:
    page_margins:
      bottom: 0.5
      top: 0.5
      right: 0.5
      left: 0.5
      orient: "landscape"
    page_margins:
      bottom: 1
      top: 1
      right: 1
      left: 1
      orient: "portrait"

O resultado foi:

Error in yaml::yaml.load(..., eval.expr = TRUE) : 
  Duplicate map key: 'page_margins'

Ainda imaginei que pudesse tentar na forma de vetor:

output:
  officedown::rdocx_document:
    page_margins:
      bottom: '`r c(0.5, 1)`'
      top: '`r c(0.5, 1)`'
      right: '`r c(0.5, 1)`'
      left: '`r c(0.5, 1)`'
      orient: '`r c("landscape", "portrait")`'

No entanto, após fazer o knit, o documento não é gerado e surge a seguinte mensagem:

Error in x * 72 : argumento não-numérico para operador binário
Calls: <Anonymous> ... to_wml -> to_wml.page_mar -> sprintf -> inch_to_tweep
Execução interrompida

Itamar,

Não sou especialista no officedown, mas parece ser possível criar estilos locais para certas páginas. Acho que não há uma forma de especificar duas margens diferentes no YAML global.

Veja mais em 8.3 Style individual elements | R Markdown Cookbook.