#r #markdown #knitr #openxml #huxtable
#r #уценка #knitr #openxml #huxtable
Вопрос:
КАК отобразить фрагменты openxml внутри ячеек таблиц в RMD в DOCx? Я просто получаю тот же текст openxml (mdt) внутри таблиц вместо содержимого..
пожалуйста, какие-либо предложения?
xml_test.RMD:
Обновленный тестовый код RMD :
---
output:
word_document:
reference_docx: ./template.docx
keep_md: yes
md_extensions: raw_tex
editor_options:
chunk_output_type: console
---
```{r setup, include=FALSE}
knitr::opts_chunk$set(echo = FALSE)
```
```{r, setuplib, include=FALSE}
#library(tidyverse)
library(knitr)
#library(rmarkdown)
#library(dplyr)
#library(stringr)
library(huxtable)
library(kableExtra)
#library(ftExtra)
```
```{r, xml-test, echo=FALSE, collapse = FALSE}
# XML CONTENT
text_xml <- "<w:p><w:r><w:t>Example text.</w:t></w:r></w:p>"
sanitize(text_xml, type = "rtf")
knitr::asis_output(" n")
sanitize(text_xml, type = "html")
knitr::asis_output(" n")
#sanitize(text_xml, type = "latex")
#knitr::asis_output(" n")
#to_ht <- c(knitr::asis_output(mdt), knitr::asis_output(mdt))
to_ht <- c(text_xml)
#ht <- huxtable::as_hux(to_ht, add_colnames = TRUE, add_rownames = TRUE, escape_contents=FALSE, autoformat = FALSE)
ht <- huxtable::as_hux(text_xml, add_colnames = FALSE, add_rownames = FALSE, escape_contents=FALSE, autoformat = FALSE)
#markdown(ht) <- TRUE
#ht <- set_markdown(ht)
# BAD XML OUTPUT INSIDE CELLS
theme_grey(ht)
knitr::asis_output(" n")
#knitr::asis_output(ht)
knitr::asis_output(" n")
# NORMAL XML OUTPUT HERE:
knitr::asis_output(as.character(text_xml))
```
Я обнаружил, что as_hux() неправильно очищает текст в: » <w: p><w: r><w: t> Пример текста.</w: t></w: r></w: p></w: p>
»
вместо RAW или WORD в md:
«<w:p><w: r><w: t> Пример текста.</w: t></w: r></w:p>«
в результате у меня возникла проблема с неправильным выводом в ячейке WORD huxtable
ВОПРОС: как я могу избежать этого преобразования в MD-файле?
Комментарии:
1. Обновленный тестовый код RMD :
2. это часть результатов в файле MD: ……….
{=openxml} .................<w:rFonts w:ascii="Arial" w:hAnsi="Arial" w:eastAsia="Arial" w:cs="Arial"/><w:sz w:val="22"/><w:szCs w:val="22"/><w:color w:val="111111"/></w:rPr><w:t xml:space="preserve">amp;<w:pamp;>amp;<w:ramp;>amp;<w:tamp;>Example text.amp;</w:tamp;>amp;</w:ramp;>amp;</w:pamp;></w:t></w:r></w:p></w:tc></w:tr></w:tbl>
<w:p><w: r><w:t> Пример текста.</w:t></w: r></w:p>3. Какую библиотеку вы используете для преобразования?
4. Это просто обычный вывод PANDOC
5. Вы пробовали использовать
escape_contents()
? Это может сработать, хотя я никогда не пробовал то, что вы пытаетесь сделать.