如何去除kbl表格中多余的白色线条伪影?
kbl表格背景的白色伪影问题
- 用kbl设置单元格黑色背景时,网格线与单元格之间会出现多余的白色伪影;灰色、白色背景的单元格也存在同样问题。
- 这些伪影会随PDF缩放级别变化,有时垂直出现,有时水平出现,甚至可能完全消失。
- 补充说明:经Grzegorz提示,该问题实际是PDF查看器导致的,而非LaTeX转PDF的问题。
我尝试先给整个表格设置黑色背景,再叠加其他样式,希望能覆盖PDF产生的白色线条。
原始代码
kbl(data, align = rep("c", ncol(data))) %>% kable_styling(font_size = 4, latex_options = c("scale_down", "hold_position")) %>% column_spec(c(12,13), color = "white",background = "black", include_thead = TRUE, width = "1cm", bold = T) %>% # column_spec(c(10,11), color = "white", include_thead = TRUE, width = "1cm") %>% column_spec(c(4,6,8,10,14), background = "lightgray", include_thead = FALSE, width = ".6cm") %>% column_spec(c(5,7,9,11,15), background = "white", include_thead = FALSE, width = ".6cm")
修复尝试的最新代码
kbl(data, align = rep("c", ncol(data))) %>% kable_styling(font_size = 4, latex_options = c("scale_down", "hold_position")) %>% column_spec(c(1,2,3,4,5,6,7,8,9,10,11,12,13,14), background = "black", include_thead = FALSE) %>% column_spec(c(12,13), color = "white",background = "black", include_thead = TRUE, width = "1cm", bold = T) %>% # column_spec(c(10,11), color = "white", include_thead = TRUE, width = "1cm") %>% column_spec(c(4,6,8,10,14), background = "lightgray", include_thead = FALSE, width = ".6cm") %>% column_spec(c(5,7,9,11,15), background = "white", include_thead = FALSE, width = ".6cm") %>% column_spec(c(1,2,3), background = "white", include_thead = TRUE)
R Markdown的YAML配置
--- title: | | {width=2in} | `r unlist(strsplit(params$fullname,split = '_'))[2]` Forecast params: fullname: "placeholder" vendorNo: "placeholder" output: pdf_document: latex_engine: xelatex mainfont: Segoe UI classoption: landscape ---
使用的R库
library(tidyverse) library(tinytex) library(glue) library(knitr) library(glue) library(dplyr) library(scales) library(kableExtra) library(readxl)
内容的提问来源于stack exchange,提问作者Aaron Rose
相关产品推荐
相关产品推荐

