Информация о предупреждении о выдаче офисного слова, когда открытый офицер сгенерировал docx с tiff в нем

Когда я открываю файл docx, созданный R пакетом officer, который вставлен с файлом изображения tiff, Office 2016 выдает мне сообщение об ошибке.

пример:

library(magrittr)
library(ggplot2)
library(officer)

img <- "test.tiff"
pic <- ggplot(mtcars, aes(mpg, disp)) + geom_point()
img %>% ggsave(pic, width = 6, height = 3)

read_docx() %>% 
    body_add_img(img, width = 6, height = 3) %>% 
    print(target = "test.docx")

Затем при открытии test.docx я получил сообщение об ошибке

Мы сожалеем. Мы не можем открыть test.docx, так как обнаружили проблему с его содержимым.

Подробности

Файл поврежден и не может быть открыт.

После того, как я нажму кнопку «ОК», Word спросит меня, хочу ли я восстановить содержимое документа. Выберите «да», тогда я получил Document1 с правильным изображением.

Я пробовал форматы .jpg и .png, и они оба работали правильно, так что на данный момент это может быть обходной путь. Это баг или только я ошибаюсь? В любом случае, это действительно приветствуется, чтобы просветить меня, спасибо.

sessionInfo()

R version 3.4.3 (2017-11-30)
Platform: x86_64-w64-mingw32/x64 (64-bit)
Running under: Windows 7 x64 (build 7601) Service Pack 1

Matrix products: default

locale:
[1] LC_COLLATE=Chinese (Simplified)_People's Republic of China.936 
[2] LC_CTYPE=Chinese (Simplified)_People's Republic of China.936   
[3] LC_MONETARY=Chinese (Simplified)_People's Republic of China.936
[4] LC_NUMERIC=C                                                   
[5] LC_TIME=Chinese (Simplified)_People's Republic of China.936    

attached base packages:
[1] stats     graphics  grDevices utils     datasets  methods   base     

other attached packages:
[1] officer_0.2.0 ggplot2_2.2.1 magrittr_1.5 

loaded via a namespace (and not attached):
 [1] Rcpp_0.12.14      digest_0.6.13     R.methodsS3_1.7.1 R6_2.2.2          grid_3.4.3       
 [6] plyr_1.8.4        gtable_0.2.0      scales_0.5.0      zip_1.0.0         rlang_0.1.6      
[11] uuid_0.1-2        lazyeval_0.2.1    R.oo_1.21.0       R.utils_2.6.0     xml2_1.1.1       
[16] labeling_0.3      tools_3.4.3       munsell_0.4.3     yaml_2.1.16       compiler_3.4.3   
[21] base64enc_0.1-3   colorspace_1.3-2  htmltools_0.3.6   tibble_1.3.4

person Su Na    schedule 10.01.2018    source источник


Ответы (1)


Как написано здесь, только png, jpg и emf были протестированы. Тем не менее, поддержку tiff довольно легко интегрировать, сегодня я опубликую обновление для этого на Github.

person David Gohel    schedule 10.01.2018
comment
вы можете попробовать версию github сейчас - person David Gohel; 11.01.2018
comment
Спасибо за быстрый ответ. Между прочим, у тебя отличная работа, Markdown сводит меня с ума. - person Su Na; 11.01.2018
comment
Спасибо. Это 2 разные вещи. Я использую rmarkdown ежедневно. Я использую Officer для автоматизации корпоративной отчетности, когда это должен быть pptx или docx. ++ - person David Gohel; 11.01.2018