% ============================================================
%  《细胞生物学方向 · 生物信息学课题教程》PDF 书籍排版模板
%  用法（pandoc header-includes，单文件）：
%    pandoc build/book.md -o build/book.tex \
%      -V documentclass=ctexbook -V classoption="11pt,openany" \
%      -V colorlinks=true -N --toc --toc-depth=1 \
%      -H code/preamble_cellbio.tex --syntax-highlighting=tango \
%      --metadata lang=zh-CN --resource-path=.
%    xelatex -interaction=nonstopmode build/book.tex    （两遍）
%    xelatex -interaction=nonstopmode build/book.tex
%
%  环境：XeLaTeX（MiKTeX/TeX Live），ctexbook 宏包，
%  Windows 字体：宋体 SimSun、黑体 SimHei、Consolas、微软雅黑。
% ============================================================

% ---------- 页面设置 ----------
\usepackage{geometry}
\geometry{a4paper, top=2.7cm, bottom=2.8cm, left=3.0cm, right=2.5cm}

% ---------- 颜色 ----------
\usepackage{xcolor}
\definecolor{codebg}{HTML}{F6F8FA}      % 代码块背景
\definecolor{codeframe}{HTML}{D0D7DE}   % 代码块边框
\definecolor{linkblue}{HTML}{0A5AA8}    % 链接颜色
\definecolor{rulecolor}{HTML}{404040}   % 分隔线
\definecolor{chaptercolor}{HTML}{1F4E79} % 章标题深蓝

% ---------- 行距 ----------
\usepackage{setspace}
\setstretch{1.35}

% ---------- 等宽字体 ----------
\setmonofont{Consolas}[Scale=0.90, Ligatures=TeX]
\setCJKmonofont{Microsoft YaHei}[Scale=0.86]

% ---------- 特殊符号交给中文字体渲染（拉丁字体缺失的字符） ----------
% 希腊字母 α-ω、Α-Ω
\xeCJKDeclareCharClass{CJK}{"03B1 -> "03C9, "0391 -> "03A9}
% 带圈数字 ①-⑳
\xeCJKDeclareCharClass{CJK}{"2460 -> "2473}
% 数学符号 ≠ ≤ ≥ ≈、箭头 ↔ → ←、× ÷
\xeCJKDeclareCharClass{CJK}{"2260, "2264, "2265, "2248, "2194, "2192, "2190, "00D7, "00F7}

% ---------- 代码块样式（fancyvrb + tango 高亮） ----------
\usepackage{fancyvrb}
\fvset{
  frame=single,
  framerule=0.5pt,
  rulecolor=\color{codeframe},
  fillcolor=\color{codebg},
  framesep=6pt,
  xleftmargin=8pt,
  xrightmargin=6pt,
  fontsize=\small,
  samepage=false
}

% ---------- 表格：三线表 + 长表格 ----------
\usepackage{booktabs}
\usepackage{longtable}
\usepackage{array}
\renewcommand{\arraystretch}{1.25}
\setlength{\tabcolsep}{6pt}

% ---------- 图题 ----------
\usepackage{caption}
\captionsetup{font=small, labelfont={bf,color=chaptercolor}, skip=6pt}

% ---------- 页眉页脚 ----------
\usepackage{fancyhdr}
\pagestyle{fancy}
\fancyhf{}
\fancyhead[LE]{\small\songti\leftmark}
\fancyhead[RO]{\small\songti\rightmark}
\fancyfoot[C]{\small\thepage}
\renewcommand{\headrulewidth}{0.5pt}
\fancypagestyle{plain}{%
  \fancyhf{}%
  \fancyfoot[C]{\small\thepage}%
  \renewcommand{\headrulewidth}{0pt}%
}

% ---------- 章节标题（黑体，深蓝） ----------
\ctexset{
  chapter = {
    format = {\centering\Huge\bfseries\heiti\color{chaptercolor}},
    name = {第,章},
    number = \arabic{chapter},
    beforeskip = 1.5em,
    afterskip = 1.5em,
  },
  section = {
    format = {\Large\bfseries\heiti},
    beforeskip = 1.6em,
    afterskip = 0.8em,
  },
  subsection = {
    format = {\large\bfseries\heiti},
    beforeskip = 1.2em,
    afterskip = 0.5em,
  },
}

% ---------- 超链接 ----------
\usepackage{hyperref}
\hypersetup{
  colorlinks=true,
  linkcolor=linkblue,
  urlcolor=linkblue,
  citecolor=linkblue,
  bookmarksnumbered=true,
  pdftitle={细胞生物学方向·生物信息学课题教程},
  pdfsubject={面向零基础新手的生信课题全流程：焦亡×肝癌×公共数据库},
  pdfauthor={生物信息学系列教程},
}

% ---------- 封面（单页垂直居中） ----------
\let\frontmatter\relax
\let\mainmatter\relax
\AtBeginDocument{%
\thispagestyle{empty}%
\vspace*{\fill}%
\begin{center}
{\small\songti 生物信息学系列教程\par}
\vspace{0.5cm}
{\color{rulecolor}\rule{0.86\textwidth}{1.1pt}\par}
\vspace{1.6cm}
{\Huge\bfseries\heiti\color{chaptercolor} 细胞生物学方向\par}
{\Huge\bfseries\heiti\color{chaptercolor} 生物信息学课题教程\par}
\vspace{0.9cm}
{\LARGE\songti 基于公共数据库的焦亡基因×肝细胞癌研究全流程\par}
\vspace{1.6cm}
{\large\songti 面向零基础新手 · 生信知识补充 · 图文并茂 · 可发表\par}
\vspace{0.6cm}
{\normalsize\songti 选题设计 · 数据获取 · 差异表达 · 功能富集 · PPI 网络 · 生存分析 · 论文写作\par}
\vspace{2.0cm}
{\color{rulecolor}\rule{0.86\textwidth}{1.1pt}\par}
\vspace{0.7cm}
{\large\songti 第 1 版\quad 2025 年\par}
\end{center}
\vspace*{\fill}%
\clearpage
}
