用 R 生成日历
楚新元 / 2021-09-23
2021 年就这么晃晃悠悠快过去了,有点发慌,不管怎样,我得抓紧时间干点什么,三个月时间说长不长,说短也不短。为自己做个日历吧,拖延症是病,得治,虽然拖延症患者需要管理的不是时间而是情绪。
library(calendR)
library(showtext)
# 定义年份
year = 2021
# 判断文件是否存在,如果存在先删除
cal_file = paste0("calendar", year, ".pdf")
if (file.exists(cal_file)) file.remove(cal_file)
# 载入中文字体
font_add("kaishu", "simkai.ttf")
showtext_auto()
# 生成日历
calendR(
# 定义年份(标题)
# title 如果缺失,则以年或年月替代
year = year,
# 标题设置
title.size = 45,
title.col = "#1E323D", # 更深邃的墨色,提升质感
# 副标题设置
subtitle = "每天好心情",
subtitle.size = 11,
subtitle.col = "#5A6B73", # 柔和的烟灰色
# 月份方块设置
mbg.col = "#2A4B59", # 莫兰迪深蓝绿背景
months.col = "#FFFFFF", # 纯白月份字,对比鲜明
months.size = 11,
months.pos = 0.5, # 水平居中
# 星期设置
weeknames = c("Mo", "Tu", "We", "Th", "Fr", "Sa", "Su"),
weeknames.col = "#4A5568", # 优雅的深灰
weeknames.size = 4.5,
start = "M", # 从周一开始
# 日期方块设置
days.col = "#2D3748", # 日期数字颜色接近黑,易读
day.size = 3,
special.days = "weekend", # 周末特殊标记
special.col = "#E8D3D1", # 温柔的淡茱萸粉高亮周末
gradient = FALSE,
low.col = "#FFFFFF", # 工作日背景为纯白,形成网格感
lty = 1, # 开启轻微的边框线
lwd = 0.2, # 极细线
col = "#E2E8F0", # 淡淡的浅灰格子线,让日子错落有致
# 月历设置(可选)
# text = "",
# text.pos = NULL,
# text.size = 4,
# text.col = "gray30",
# lunar = FALSE,
# lunar.col = "gray60",
# lunar.size = 7,
# 全局页面设置
font.family = "kaishu",
font.style = "plain",
orientation = "landscape",
papersize = "A4",
margin = 0.8, # 略微收紧页边距,让日历区域更大
bg.col = "#FAF9F5", # 全局背景:温暖的米杏色
# bg.img = "./img.jpg", # 背景图片可选设置
legend.pos = "none",
pdf = TRUE,
doc_name = paste0("calendar", year)
)
showtext_end()
