Giter Club home page Giter Club logo

forum's Introduction

CTeX 临时论坛

由于 原 CTeX 论坛 因故无限期关闭,我们在此建立临时论坛,通过 GitHub Issues 进行提问、回答与讨论。

此外,临时论坛的管理员会对在临时论坛上发生的讨论进行筛选,择其善者列在此 README.md 文件当中,以便后来者索引。这些问题在被充分讨论的基础之上,至少具有以下一个特征:

  • 问题本身具有代表性;
  • 问题本身不具有特别强的代表性,但是具有一定的技术深度;
  • 问题本身不具有代表性,技术上也不会特别深入,但涉及某个宏包、工具等的特定 bug,在一定时期内可能引起大量同质讨论。

在此处提问、讨论请遵循 GitHub 社区规范

善问目录

文档版式

中文支持

字体

参考文献

图片

浮动体

宏包使用

algorithm

beamer

listings

PGF/TikZ

宏编程

格式转换

编辑器

TeXStudio

Sublime Text

杂项

forum's People

Contributors

alphaztx avatar harry-chen avatar liam0205 avatar stone-zeng avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

forum's Issues

Sublime3无法实时显示公式

检查

  • 已在 issues 中进行搜索(包括已关闭的问题)

编译环境

  • 操作系统

    • --> Windows 7/8/10
    • macOS
    • Linux
  • TeX 发行版

    • --> TeX Live
    • MiKTeX
    • CTeX

描述问题

Sublime的LaTexTools无法实时显示公式
我正确安装了所需的两个额外的软件
LaTexTools的user设置里windows下的参数也设置好了
下面是check system的截图

最小工作示例(MWE)

下面是一个范例,请提问时修改为自己的代码:
-->

\documentclass{article}
\begin{document}
\[
	\alpha
\]
\end{figure}	
\end{document}

为什么调用openany选项之后还有额外的空白页?

检查

  • 已在 issues 中进行搜索(包括已关闭的问题)

编译环境

  • 操作系统

    • Windows 7/8/10
    • macOS
    • Linux
  • TeX 发行版

    • TeX Live 2017
    • MiKTeX
    • CTeX

描述问题

在MWE中,为什么调用openany选项之后还有额外的空白页(PDF第4、6页)?

最小工作示例(MWE)

\documentclass[UTF8, openany]{ctexbook}

\usepackage{blindtext}
\usepackage{fancyhdr}
\fancypagestyle{mystyle}{\fancyhf{}\fancyhead[C]{Test}\fancyfoot[C]{\thepage}}

\makeatletter
\def\test{%
	\blindtext
	\if@openright
		\cleardoublepage
	\else
		\clearpage
	\fi}
\let\test@frontmatter\frontmatter
\def\frontmatter{\pagestyle{mystyle}\test@frontmatter\renewcommand\thepage{\Roman{page}}}
\makeatother

\AtBeginDocument{\pagestyle{empty}}
\ctexset{chapter = {pagestyle = mystyle}}

\begin{document}

\test
\test
\test
% 注释第三个\test不会有多余的PDF第4页

\frontmatter
\blindtext

\mainmatter
\blindtext

\backmatter
\blindtext
	
\end{document}

(用 XeLaTeX 编译后)输出

编译正常,注释第三个\test不会有多余的PDF第4页。

链接

  • TeX.SX:
  • GitHub:

中文版心设计的疑难与最佳实践?

问题疑难

ctexbook 默认设置并没有实现正确密排;手动重设行长可以补救吗?

参考资料

样例

\documentclass[UTF8,zihao=5]{ctexbook} % 五号字
\usepackage{zhlipsum}
\begin{document}

\zhlipsum[3][name=zhufu]

\end{document}

issue-ctex-geometry-problem-1-before

此处尾行并未对齐。

分析与尝试补救

ctexbook 文档类保留 book 文档类的默认行距,其并非是正文字号的整数倍。

根据 layout 宏包给出的参数,它是 345pt。

此时如果以五号字体每行 33 个字,根据 layout 宏包给出的参数,它是 347pt。

这样来看差不多。

需要将行距强制设定成正文字号的整数倍。

\documentclass[UTF8,zihao=5]{ctexbook} % 五号字

% \zijianju 每个字的间距
\newlength{\zijianju}
\setlength{\zijianju}{10.5bp} % 五号字 10.5 bp

\setlength{\textwidth}{33\zijianju} % 每行 33 个字

\usepackage{zhlipsum}
\begin{document}

\zhlipsum[3][name=zhufu]

\end{document}

issue-ctex-geometry-problem-1-after

此处尾行对齐。

然而在这里并没有解决行数与行距的问题。

所以应该推倒重新设计符合中文的版心?

双面文档的习惯做法?

lshort-zh-cn 中 5.3.1 节有一句话:

对于书籍等双面文档,习惯上奇数页右边、偶数页左边留出较多的页边距,而书脊一侧的奇数页左边、偶数页右边页边距较少。

这个难道不是因为需要「边注」,所以在朝向书口的一侧比朝向书脊一侧的距离留得多吗?

所以,如果不需要「边注」,那么不应该把版心延伸到边注区域上吗?

Requirements for Chinese Text Layout 中文排版需求 中,并没有给出关于双面文档的说明。(W3C Editor's Draft 04 July 2019)

而说明了

  1. 将版心置于印刷版面的正**,天地等高、左右等宽。
  2. 横排时指定天的留白量、直排时则指定地的留白量,左右等宽。
  3. 天地等高,指定装订线的留白量。
  4. 指定装订线的留白量,横排时指定天的留白量、直排时则指定地的留白量。

NOTE: 一般而言,版心多置于印刷版面的的正**,后依照版心尺寸不同,向上下、左右调整。这种设计方式主要承袭自活字印刷,但在桌面排版中,则多以印刷版面计算与版心尺寸四方边界之差为之。

所以,在这里的意思是,双面文档是「后依照版心尺寸不同,向上下、左右调整」而定出的?

不需要「边注」的书籍(接上一问题)

一般社科文方面书籍通常没有「边注」(尤其是文学刊物),所以要把它所占的区域去掉。

那么是否应该把版心延伸到边注区域上呢?

以及如何实现?

如何自动拉出一个符合中文排版的文本框?如何自动设置正确的行长?

只能提供思路如下:

  1. 获取正文字号(设宽度为 $a$
  2. \textwidth 设定为其整数倍(假设此处为 $k$ 倍)
  3. 只修改 $k$ 的值

$$ \mathrm{textwidth} = k \cdot a $$

那么应该如何实现?

Ubuntu 18.04 更换清华源无法安装 texstudio

检查

  • 已在 issues 中进行搜索(包括已关闭的问题)

编译环境

  • 操作系统

    • Windows 7/8/10
    • macOS
    • Linux
  • TeX 发行版

    • TeX Live 2019
    • MiKTeX
    • CTeX

描述问题

我在使用 ubuntu 18.04 时,更换了清华源,即将 /etc/apt/sources.list 替换为 清华镜像网站 提供的内容。
然后执行 sudo apt install texstudio 系统提示 Unable to locate package texstudio.
这是因为清华源没有包含它吗?

最小工作示例(MWE)

链接

希伯来文与符号反转

检查

  • 已在 issues 中进行搜索(包括已关闭的问题)

编译环境

  • TeX 发行版
    • TeX Live 2019

复现条件

  • 希伯来文

这似乎是希伯来文从右往左的书写方式,产生的?(我猜的)

这是 bug 还是 feature?

样例

样例1

% ! xelatex
\documentclass{article}

\begin{document}

 י  % U+05D9

(

\end{document}

issue-hebrew-1

样例2

% ! xelatex
\documentclass{article}

\begin{document}

 י  % U+05D9

`'

\end{document}

issue-hebrew-2

如果有英文字母在这些符号前面,就不会有这个问题。

还有,单个引号似乎没有这个问题,而成对引号有问题。

如果用 fontspec 宏包加载字体,把希伯来文显示出来,就没有这个问题了。

TikZ-Feynman package didn't complied properly

Dear All,
I met a problem when compiling codes with TikZ-Feynman package, my codes is shown below

\documentclass{article}
\usepackage{tikz-feynman}
\begin{document}
The quick brown fox jumps over the lazy dog. The quick brown fox jumps over the lazy dog.
The quick brown fox jumps over the lazy dog. The quick brown fox jumps over the lazy dog. 
The quick brown fox jumps over the lazy dog.

\begin{figure}[hbt]
  \centering
  \begin{tikzpicture}
    \begin{feynman}
      \diagram [vertical'=a to b] {
        i1 [particle=\(e^{-}\)]
           -- [fermion] a
           -- [draw=none] f1 [particle=\(e^{+}\)],
        a -- [photon, edge label'=\(p\)] b,
        i2 [particle=\(e^{+}\)]
           -- [anti fermion] b
           -- [draw=none] f2 [particle=\(e^{-}\)],
      };
      \diagram* {
        (a) -- [fermion] (f2),
        (b) -- [anti fermion] (f1),
      };
    \end{feynman}
  \end{tikzpicture}
\end{figure}

\end{document}
 

When I compile this with LuaTeX in TeXPad, the diagram shown is not the same as the example from document:

Mine:
1_mine

Document example
2_example

How can I compile this file properly?

参数中用换行符进行换行

检查

  • 已在 issues 中进行搜索(包括已关闭的问题)

描述问题

\begingroup
  \catcode`\^^M=13% 
  \def^^M{\par\leavevmode}%
  A
  B
  C
\endgroup

可以打印出

A
B
C

那么,可否定义一个命令 \test,使得

\test{%
  A
  B
  C
}

也实现这一效果?

pgfpages 缩印功能造成超链接失效

检查

  • 已在 issues 中进行搜索(包括已关闭的问题)

编译环境

  • 操作系统

    • Windows 7/8/10
    • macOS
    • Linux
  • TeX 发行版

    • TeX Live 2019
    • MiKTeX
    • CTeX

描述问题

在使用 pgfpages 包的 \pgfpagesuselayout 功能进行缩印,发现原本在页眉处的超链接失效。页眉用 fancyhdr 设置。

最小工作示例(MWE)

\documentclass{ctexart}
\usepackage{pgfpages}
\usepackage{fancyhdr}
\usepackage{hyperref}
\usepackage{zhlipsum}
\pagestyle{fancy}
\fancyhf{}
\rhead{--\thepage/\pageref{LastPage}--}
\lhead{\href{github.com}{github}}
\pgfpagesuselayout{2 on 1}  % 注释掉这里,页眉处可显示超链接
\begin{document}
\zhlipsum[-]
\label{LastPage}
\end{document}

链接

  • TeX.SX:
  • GitHub:

[灌水]大家有没有「知道各种排版技巧但不知道到底用哪种排版风格」的问题

类似的问题很多,比如

  • 知道Photoshop的各种用法但是不知道该把照片P成什么样
  • 知道DIV+CSS的各种操作但是不知道该做成什么风格的网页
  • 知道各种女生的风格、喜好,但是不知道该和谁终此一生

简言之,就是想讨chuī论shuǐ下大家的审美偏好都是怎么培养起来的?

对于LaTeX而言大多数地方都是模板所限定的,但不少地方是模板所没有覆盖到的,比如TikZ图形中文本和边框的间距、复杂公式的具体处理方式等等,这些问题不仅有不少不同的处理风格和流派,而且更为关键的是,有时候我觉得这些主流的方案都不能让我满意,但却不能提出一种让自己满意的,这

才是坠痛苦的

闲来吹水,如有打扰,烦请谅解🤣

Color error of paper template of IEEE transaction.

When I use the IEEE Transaction paper template, the color of the text behind the title will change to blue whenever the title is linked to the image.
image
I have uploaded a project file, which contains the code I made a mistake. Can someone try to modify it for me?
MWE.zip

插入图片时出现 Dimension too large 错误

检查

  • 已在 issues 中进行搜索(包括已关闭的问题)

编译环境

  • 操作系统

    • Windows 7/8/10
    • macOS
    • Linux
  • TeX 发行版

    • TeX Live 2018
    • MiKTeX
    • CTeX

描述问题

图片本身没有问题,但加上 width=0.75\textwidth 之后数字溢出。并不是十分理解这个图片的尺寸是如何确定的。

最小工作示例(MWE)

\documentclass{article}
\usepackage{graphicx}

\begin{document}
\includegraphics{QQ20190224-0.jpg}

\includegraphics[width=0.75\textwidth]{QQ20190224-0.jpg}
\end{document}

图片链接:QQ20190224-0.jpg
完整测试文件打包:test.zip

用 pdfLaTeX 编译后输出

pdfTeX warning: pdflatex: arithmetic: number too big
[1{/usr/local/texlive/2018/texmf-var/fonts/map/pdftex/updmap/pdftex.map}]
Overfull \vbox (10796.3625pt too high) has occurred while \output is active
[2 <./QQ20190224-0.jpg>]
! Dimension too large.
<to be read again> 
                   b
l.7 ...ics[width=0.75\textwidth]{QQ20190224-0.jpg}
                                                  
? 

用 XeLaTeX 编译后输出

Overfull \vbox (10796.36215pt too high) has occurred while \output is active
[2]
! Dimension too large.
<to be read again> 
                   b
l.7 ...ics[width=0.75\textwidth]{QQ20190224-0.jpg}
                                                  
? 

链接

为什么\cleardoublepage之后\hypersetup失效

检查

  • 已在 issues 中进行搜索(包括已关闭的问题)

编译环境

  • 操作系统

    • Windows 7/8/10
    • macOS
    • Linux
  • TeX 发行版

    • TeX Live 2017
    • MiKTeX
    • CTeX

描述问题

最小工作示例(MWE)

文档结构比较特殊,需要在\cleardoublepage之后调用\hypersetup,但是为什么\cleardoublepage之后\hypersetup失效?

\documentclass[UTF8]{ctexbook}

\usepackage{hyperref}
\usepackage{blindtext}

\begin{document}
	
\blindtext

\cleardoublepage

\blindtext

\hypersetup{pdftitle={test}}

\end{document}

(用 XeLaTeX 编译后)输出

编译正常,但是查看PDF Metadata没变化。

链接

  • TeX.SX:
  • GitHub:

siunitx 宏包无法自动在两侧插入空白

检查

  • 已在 issues 中进行搜索(包括已关闭的问题)

编译环境

  • 操作系统

    • Windows 7/8/10
    • macOS
    • Linux
  • TeX 发行版

    • TeX Live 2018
    • MiKTeX
    • CTeX

描述问题

讲道理啊,CTeX会在中英文之间插入空白的,打比方说第1页渲染出来应该是第␣1␣页的效果,但是加上\SI{20}{\volt}电压渲染出来是加上20␣V␣电压的效果而不是加上␣20␣V␣电压的效果,看上去贼丑了。我记得在哪篇文档讲过这应该是一个Known issue,但我忘了具体是啥。

最小工作示例(MWE)

\documentclass{ctexart}
\usepackage{siunitx}
\begin{document}
加上\SI{20}{\volt}电压
\end{document}

包含浮动体和 longtable 环境的页面,内容从底部溢出

ctexbook文类,没有自动换页,是否是bug?

image

以下是代码

\documentclass[fancyhdr,bookmark]{ctexbook}
\setmainfont{DejaVu Sans} 	% 設定英文字型
\setromanfont{DejaVu Sans} 	% 字型
\setmonofont{DejaVu Sans Mono}

\usepackage{ifxetex,ifluatex}
\providecommand{\tightlist}{%
  \setlength{\itemsep}{0pt}\setlength{\parskip}{0pt}}

\usepackage{tikz} % Required for drawing custom shapes
\usepackage[yyyymmdd,hhmmss]{datetime}
\ctexset{today=small}

\usepackage{listings}
\newcommand{\passthrough}[1]{\colorbox{lightgray}{#1}}

\ifxetex
  \usepackage[setpagesize=false, % page size defined by xetex
              unicode=false, % unicode breaks when used with xetex
              xetex]{hyperref}
\else
  \usepackage[unicode=true]{hyperref}
\fi
\hypersetup{breaklinks=true,
            bookmarks=true,
            pdfauthor={John Mike},
            pdftitle={PanBook使用手册},
            colorlinks=true,
            urlcolor=blue,
            linkcolor=magenta,
            pdfborder={0 0 0}}
\urlstyle{same}  % don't use monospace font for urls

\usepackage{longtable,booktabs}
\usepackage{graphicx,grffile}
\makeatletter
\def\maxwidth{\ifdim\Gin@nat@width>\linewidth\linewidth\else\Gin@nat@width\fi}
\def\maxheight{\ifdim\Gin@nat@height>\textheight\textheight\else\Gin@nat@height\fi}
\makeatother


\title{PanBook使用手册\\\vspace{0.5em}{\large 用Markdown和Pandoc写作}}
\author{John Mike}
\date{\today}

\usepackage{geometry}
\newcommand{\devicepc}{
	\geometry{
		top=1in,
		inner=1in,
		outer=1in,
		bottom=1in,
		headheight=3ex,
		headsep=2ex
	}
}
\devicepc

\definecolor{ocre}{RGB}{243,102,25} % Define the orange color used for highlighting throughout the book
\definecolor{lightgray}{rgb}{0.97,0.97,1}
\renewcommand{\passthrough}[1]{\colorbox{lightgray}{#1}}
\newfontfamily\code{Courier New}

\lstset{
	basicstyle=\small\linespread{1}\code,
	keywordstyle=\color[rgb]{0.13,0.29,0.53}\textbf,
	commentstyle=\color{gray},
	identifierstyle=\color[rgb]{0.00,0.00,0.00},
	stringstyle=\color[rgb]{0.31,0.60,0.02},
	rulesepcolor=\color{red!20!green!20!blue!20},
	backgroundcolor=\color[rgb]{0.97,0.97,0.97},
	tabsize=4,
	breaklines=tr,
	showstringspaces=false,
}
\renewcommand{\lstlistingname}{代码}
\usepackage{keyval}
\newlength\Colsep
\setlength\Colsep{10pt}
\usepackage{fancyhdr}
\pagestyle{fancy}

\begin{document}
\frontmatter
\setkeys{Gin}{width=\maxwidth,height=\maxheight,keepaspectratio}
\mainmatter
    % 在此命令之后的页码为阿拉伯数字
    % 以下为正文
\hypertarget{panbookux624bux518c}{%
\chapter{PanBook手册}\label{panbookux624bux518c}}

\passthrough{\lstinline!PanBook!}是基于\passthrough{\lstinline!Pandoc!}和\passthrough{\lstinline!LaTeX!}开发的一个工具,提供了一些开箱即用的书籍,论文,幻灯片及简历模板,以及一些\passthrough{\lstinline!lua filter!}扩展。用来更方便的使用\passthrough{\lstinline!Pandoc!}将\passthrough{\lstinline!Markdown!}转换为\passthrough{\lstinline!PDF!}或\passthrough{\lstinline!epub!}格式。

\hypertarget{ux5febux901fux5f00ux59cb}{%
\section{快速开始}\label{ux5febux901fux5f00ux59cb}}

以\passthrough{\lstinline!Windows 10!}为例,演示如何使用。

\hypertarget{ux5b89ux88c5ux4f9dux8d56ux8f6fux4ef6}{%
\subsection{安装依赖软件}\label{ux5b89ux88c5ux4f9dux8d56ux8f6fux4ef6}}

\begin{itemize}
\tightlist
\item
  安装\href{https://www.msys2.org/}{msys2}
  (\passthrough{\lstinline!Linux!}及\passthrough{\lstinline!OS X!}请忽略此步骤)
\item
  安装\href{http://mirror.ctan.org/systems/texlive/Images/}{texlive}
  2018或以上版本
\item
  安装\href{https://pandoc.org/installing.html}{Pandoc} 2.7.1或以上版本
\item
  下载\href{https://github.com/lierdakil/pandoc-crossref/releases}{pandoc-crossref}
  对应版本安装到\passthrough{\lstinline!path!}目录下(建议和\passthrough{\lstinline!Pandoc!}放同一目录)
\end{itemize}

\hypertarget{ux5b89ux88c5panbook}{%
\subsubsection{安装PanBook}\label{ux5b89ux88c5panbook}}

\passthrough{\lstinline!PanBook!}是一组\passthrough{\lstinline!Shell!}脚本,直接下载到任意目录即可。打开终端(\passthrough{\lstinline!msys2!}),假设工作目录为\passthrough{\lstinline!/d/!},执行代码~\ref{lst:gitclone}。

\begin{lstlisting}[language=bash, caption=安装PanBook, label=lst:gitclone, float=htbp]
$ cd /d/
$ git clone https://github.com/annProg/PanBook
\end{lstlisting}

\hypertarget{ux8bbeux7f6eux73afux5883ux53d8ux91cf}{%
\subsubsection{设置环境变量}\label{ux8bbeux7f6eux73afux5883ux53d8ux91cf}}

需要将本项目,\passthrough{\lstinline!texlive!}及\passthrough{\lstinline!Pandoc!}加入环境变量,如代码~\ref{lst:setpath}所示。

\begin{lstlisting}[language=bash, caption=设置环境变量, label=lst:setpath, float=htbp]
$ tail -n 1 ~/.bashrc
export PATH=$PATH:/d/texlive/2018/bin/win32:/d/dev/PanBook:/c/Users/myname/AppData/Local/Pandoc
\end{lstlisting}

\hypertarget{ux5f00ux59cbux4f7fux7528}{%
\subsection{开始使用}\label{ux5f00ux59cbux4f7fux7528}}

在任意空目录下执行\passthrough{\lstinline!panbook <command>!},会自动初始化写作环境,生成示例源码。然后在\passthrough{\lstinline!src!}目录下开始写作。\passthrough{\lstinline!<command>!}可以是\passthrough{\lstinline!book!},\passthrough{\lstinline!thesis!},\passthrough{\lstinline!slide!},\passthrough{\lstinline!cv!}。详细帮助信息执行\passthrough{\lstinline!panbook -h!}查看。目录规范见代码~\ref{lst:panbookdirs}。

\begin{lstlisting}[language=bash, caption=目录规范, label=lst:panbookdirs, float=htbp]
.
├── templates                               # 自定义模板
├── styles                                  # 自定义风格
├── extensions                              # 自定义扩展
├── fonts                                   # 自定义字体
├── build                                   # 电子书构建目录
├── src                                     # Markdown源码目录
│   └── images                              # 源码涉及插图目录
│   └── metadata.yaml                       # 书籍元数据文件
│   └── frontmatter.md                      # 前言文件
│   └── backmatter.md                       # 后记文件
│   └── 100-chapter1.md                     # 正文,命名须保证能按正确章节顺序列出
│   └── 200-chapter2.md            
\end{lstlisting}

\hypertarget{sec:note}{%
\subsubsection{注意事项}\label{sec:note}}

\begin{itemize}
\tightlist
\item
  Markdown源码文件需要使用\passthrough{\lstinline!UTF-8!}编码
\item
  Pandoc扩展的Markdown语法要求在标题前留出一个空行,因此按章节拆分的多个Markdown文件,开头需要空一行,否则pandoc不能正确识别标题
\item
  请勿将正文文件命名为
  \passthrough{\lstinline!*frontmatter.md!}或者\passthrough{\lstinline!*backmatter.md!},这2个文件有特殊用途
\end{itemize}

\hypertarget{ux4e66ux7c4dux5143ux6570ux636e}{%
\section{书籍元数据}\label{ux4e66ux7c4dux5143ux6570ux636e}}

在\passthrough{\lstinline!src/metadata.yaml!}中使用\href{http://www.ruanyifeng.com/blog/2016/07/yaml.html}{Yaml语言}
定义书籍的数据及可用的模板变量,示例见代码~\ref{lst:metayaml}。

\begin{lstlisting}[caption=Metadata, label=lst:metayaml, float=htbp]
---
title: PanBook使用手册
subtitle: 用Pandoc和Markdown写作
author:          # 作者(数组)
  - John Mike
homepage: https://github.com/annProg/PanBook
header-includes:
  - \usepackage{cleveref}
  - \usepackage{float}
...
\end{lstlisting}


查看模板文件,可以获取模板支持的所有变量(形如\passthrough{\lstinline!$var$!})。也可以通过修改模板来添加自定义的变量。


\hypertarget{ux5199ux4f5cux5de5ux5177}{%
\section{写作工具}\label{ux5199ux4f5cux5de5ux5177}}

推荐使用 \href{https://code.visualstudio.com/}{Visual Studio
Code}。一些有用的插件见表~\ref{tbl:vscodeplugin}。

\hypertarget{tbl:vscodeplugin}{}
\begin{longtable}[]{@{}lc@{}}
\caption{\label{tbl:vscodeplugin}推荐插件}\tabularnewline
\toprule
插件 & 功能\tabularnewline
\midrule
\endfirsthead
\toprule
插件 & 功能\tabularnewline
\midrule
\endhead
Markdown Preview & Markdown实时预览\tabularnewline
\LaTeX~language support & \LaTeX 语言高亮\tabularnewline
All Autocomplete & 自动补全(支持单词补全)\tabularnewline
\bottomrule
\end{longtable}

使用代码~\ref{lst:vscodeMsys}
将终端改为\passthrough{\lstinline!msys2!}的\passthrough{\lstinline!bash!}。

\begin{lstlisting}[caption={VS Code使用msys2}, label=lst:vscodeMsys, float=htbp]
{
    "terminal.integrated.shell.windows": "D:\\msys64\\usr\\bin\\bash.exe",
    "terminal.integrated.shellArgs.windows": ["-l"],
    "terminal.integrated.env.windows": {
        "CHERE_INVOKING": "1",
        "MSYSTEM": "MINGW64",
    },
    "git.postCommitCommand": "push",
    "git.path": "D:\\msys64\\git-vscode.bat",
    "editor.insertSpaces": false,
    "editor.detectIndentation": false,
}  
\end{lstlisting}

%\begin{help}

通过 VS Code
Tasks,使用\passthrough{\lstinline!PanBook!}部分编译参数\passthrough{\lstinline!--part=md文件名!},可用快捷键(ctrl+shift+b)编译当前Markdown源文件。

通过 VS Code
Tasks,使用\passthrough{\lstinline!PanBook!}部分编译参数\passthrough{\lstinline!--part=md文件名!},可用快捷键(ctrl+shift+b)编译当前Markdown源文件。

通过 VS Code
Tasks,使用\passthrough{\lstinline!PanBook!}部分编译参数\passthrough{\lstinline!--part=md文件名!},可用快捷键(ctrl+shift+b)编译当前Markdown源文件。

通过 VS Code
Tasks,使用\passthrough{\lstinline!PanBook!}部分编译参数\passthrough{\lstinline!--part=md文件名!},可用快捷键(ctrl+shift+b)编译当前Markdown源文件。

通过 VS Code
Tasks,使用\passthrough{\lstinline!PanBook!}部分编译参数\passthrough{\lstinline!--part=md文件名!},可用快捷键(ctrl+shift+b)编译当前Markdown源文件。

通过 VS Code
Tasks,使用\passthrough{\lstinline!PanBook!}部分编译参数\passthrough{\lstinline!--part=md文件名!},可用快捷键(ctrl+shift+b)编译当前Markdown源文件。

通过 VS Code
Tasks,使用\passthrough{\lstinline!PanBook!}部分编译参数\passthrough{\lstinline!--part=md文件名!},可用快捷键(ctrl+shift+b)编译当前Markdown源文件。

通过 VS Code
Tasks,使用\passthrough{\lstinline!PanBook!}部分编译参数\passthrough{\lstinline!--part=md文件名!},可用快捷键(ctrl+shift+b)编译当前Markdown源文件。

通过 VS Code
Tasks,使用\passthrough{\lstinline!PanBook!}部分编译参数\passthrough{\lstinline!--part=md文件名!},可用快捷键(ctrl+shift+b)编译当前Markdown源文件。

通过 VS Code
Tasks,使用\passthrough{\lstinline!PanBook!}部分编译参数\passthrough{\lstinline!--part=md文件名!},可用快捷键(ctrl+shift+b)编译当前Markdown源文件。

%\end{help}

\backmatter

\end{document}

以 em、mu 为单位的宽度有哪些,如何修改它们以中文字号为单位

背景

中、英、数学混排,这三个「文种」可能各自需要挑选一套字体。通常,为了排版好看,要适当地放大英文字体、放大数学字体。LaTeX 可选的数学字体很少,但是我们可以用风格相似的英文字体来搭配,于是,英、数两套字体就可能需要不同的放大倍数。这样一来,很多以 em、mu 为单位的「宽度」就会在文本模式与数学模式中有不相同的值。

\, 为例:

  • 没有 amsmath 时,文本模式中为 0.16667em 宽,数学模式中为 3mu 宽;
  • 载入 amsmath 时,文本模式中为 0.1667em 宽,数学模式中为 3mu 宽。

又以 \quad 为例,它是以英文字号为准的「全角空」,即 1em 宽。

值得注意的是,数学单位换算公式 18mu = 1em 里的 em 是取自数学字体 family 2 的,因此「六分空」的 \, 能根据一二级角标变小。相反地,「全角空」的 \quad 取自当前的西文字体,它不会在角标里变小。

问题与目标

LaTeX 常用的以 em、mu 为单位的宽度有哪些?我想将它们全部修改成以中文字号为单位,这样的话 \, 就能是真正的「六分空」而 \quad 就能是真正的「全角空」。

例子

\documentclass{article}
\usepackage{xeCJK}
\usepackage{unicode-math}
% 放缩比例纯属示意
\setmainfont{Latin Modern Roman}[Scale=1.1]
\setmathfont{Latin Modern Math}[Scale=1.2]% 1.2 = 6/5
\makeatletter
% 改 \,
\thinmuskip=\muexpr\thinmuskip*5/6\relax
\def\thinspace{\kern\dimexpr\f@size\p@/6\relax}
% 改 \quad
\def\quad{\hskip\dimexpr\f@size\p@\relax\relax}
\makeatother
\begin{document}
\fontsize{1000000sp}{1200000sp}\selectfont
\setbox0\hbox{字} \edef\ccwd{\the\numexpr\wd0}%
\setbox0\hbox{\,}\the\numexpr\wd0\relax/\ccwd\par
\setbox0\hbox{$\,$}\the\numexpr\wd0\relax/\ccwd\par
\setbox0\hbox{\quad}\the\numexpr\wd0\relax/\ccwd\par
\end{document}

如何在宏两侧自动插入CJKecglue

检查

  • 已在 issues 中进行搜索(包括已关闭的问题)

描述问题

在中文段落中插入宏展开之后,若展开为英文,则此英文片段和两侧的中文文本之间将没有空白,需要手动插入空格。

现在已知在某文档内特定的宏展开一定是英文,有没有什么办法可以在这些宏展开时自带空格呢?

一种刀耕火种的思路是

\let\origeqref\eqref
\renewcommand{\eqref}[1]{ \origeqref{#1} }
\let\origref\ref
\renewcommand{\ref}[1]{~\origref{#1} } % \ref 前面一定是“图”或者“表”
\let\origSI\SI
\renewcommand{\SI}[2]{ \origSI{#1}{#2} }

但有个问题,即在宏展开之后跟一个逗号或者句号时,依然会有空格(没试过,我猜的)。请问下大家对于这个场景有没有更好的解决方案呢?多谢!

TeX Live 2019 中 xdvipdfmx 出现 typecheck: Invalid object type 问题

检查

  • 已在 issues 中进行搜索(包括已关闭的问题)

编译环境

  • 操作系统

    • Windows 7/8/10
    • macOS
    • Linux
  • TeX 发行版

    • TeX Live 2019
    • MiKTeX
    • CTeX

描述问题

% test.tex
\documentclass{article}
\usepackage{pdfpages}
\begin{document}
\includepdf[pages={4}]{cover.pdf} 
\end{document}

使用 xelatex -no-pdf test && xdvipdfmx -vv test 编译,结果如下:

xdvipdfmx:warning: Trying to include PDF file with version (1.7), which is newer than current output PDF setting (1.5).
xdvipdfmx:warning: PDF file is tagged... Ignoring tags.
xdvipdfmx:fatal: typecheck: Invalid object type: -1 7 (line 2161)

No output PDF file written.

原来的 cover.pdf 使用 pdfinfo 查看信息,结果为

Title:          
Author:         hitgs
Creator:        Microsoft� Word 2016
Producer:       Microsoft� Word 2016
CreationDate:   Sat Apr 27 20:51:31 2019
ModDate:        Sat Apr 27 20:51:31 2019
Tagged:         yes
Form:           none
Pages:          6
Encrypted:      no
Page size:      595.32 x 841.92 pts (A4) (rotated 0 degrees)
File size:      301533 bytes
Optimized:      no
PDF version:    1.7

使用 pdflatex 会有警告(版本号 1.7 高于当前版本号 1.5),而 lualatex 可正常编译。在 TeX Live 2018 中,据原提问者称虽有类似的警告但可编译通过。

注意该 PDF 中 2、4、6 页为空白,而只在插入页数包含 2、4 时会无法编译。

如何在 XeTeX 中使用 CID 调用字符

检查

  • 已在 issues 中进行搜索(包括已关闭的问题)

描述

在 LuaTeX 中,利用 luatexja 附带的 luatexja-otf 宏包可以使用 \CID\UTF 命令:

% lualatex 编译
\documentclass{ctexart}
\usepackage{luatexja-otf}
\setCJKmainfont{KozMinPr6N-Regular.otf}

\begin{document}
森\UTF{9DD7}外と内田百\UTF{9592}とが\UTF{9AD9}島屋に行く。

\CID{7652}飾区の\CID{13706}野家,\CID{1481}城市,葛西駅,高崎と\CID{8705}\UTF{FA11}
\end{document}

这几个命令继承自 upTeX。那么,在 XeTeX 中是否有方法直接根据 CID 调用某个 glyph 呢?

链接

如何使 figure 的 caption 置顶的同时使 subfigure 的 caption 置底?

检查

  • 已在 issues 中进行搜索(包括已关闭的问题)

编译环境

  • 操作系统

    • Windows 7/8/10
    • macOS
    • Linux
  • TeX 发行版

    • TeX Live 2018
    • MiKTeX
    • CTeX

描述问题

floatrow 包可以使两者同时置顶。

\usepackage{floatrow}
\floatsetup[figure]{capposition=top}

\begin{figure}[htbp]
    \centering
    \subfloat[subfig caption a]{
        \includegraphics[width=100px]{...}
    }
    \subfloat[subfig caption b]{
        \includegraphics[width=100px]{...}
    }
    \caption{main caption}\label{fig:padding_demo}
\end{figure}

但是不能分别设置 subfig 的 caption 位置。

\usepackage{floatrow}
\floatsetup[figure]{capposition=top}
\floatsetup[subfigure]{capposition=bottom}

以上设置无效。

请问如何使 figure 的 caption 置顶的同时使 subfigure 的 caption 置底?

如何优雅地修改 xeCJK 在边缘处的标点挤压规则?

描述问题

强迫症一下,xeCJK 宏包对边缘处(例如:行首,行末)的标点挤压算法过于「激进」。例如,若句号出现在行末而后面仍有文本,那么这个句号字形右侧的空白将全部被挤压掉。我在想能不能保留半角宽,类似于《日本工业标准》,好处是密排汉字不至于错位太严重,要错位也是错位半个字。

最小工作示例(MWE)

% !TeX program = XeLaTeX
\documentclass[linespread=1.25]{ctexart}
\usepackage{xcolor}
\setmainfont{SourceHanSerifSC-Regular.otf}[
  Script   = CJK Ideographic,
  Language = Chinese Simplified
]
\setCJKmainfont{SourceHanSerifSC-Regular.otf}[
  Script   = CJK Ideographic,
  Language = Chinese Simplified
]
\newcommand*\ideographicbaseline{-0.12}
\newcommand*\cbox[1]{\fbox{\rule[\ideographicbaseline\ccwd]{0pt}{\ccwd}\rule{#1\ccwd}{0pt}}}
\newcommand\drawgrid{%
  \setbox0\vbox{%
    \fboxrule0.05pt\fboxsep-\fboxrule
    \color{red}%
    \hbox{\cbox{1}\cbox{1}\cbox{0.5}\cbox{0.5}\cbox{1}\cbox{1}\cbox{1}\cbox{1}\cbox{1}\cbox{1}\cbox{1}\cbox{0.5}\cbox{0.5}}%
    \hbox{\cbox{1}\cbox{1}\cbox{1}\cbox{1}\cbox{1}\cbox{1}\cbox{1}\cbox{1}\cbox{1}\cbox{1}\cbox{0.5}\cbox{0.5}}%
    \hbox{\cbox{1}\cbox{1}\cbox{1}\cbox{1}\cbox{1}\cbox{1}\cbox{1}\cbox{1}\cbox{1}\cbox{1}\cbox{1}}%
    \hbox{\cbox{1}\cbox{1}\cbox{1}\cbox{1}\cbox{1}\cbox{1}\cbox{1}\cbox{1}\cbox{1}\cbox{1}\cbox{1}}%
    \hbox{\cbox{1}\cbox{1}\cbox{1}\cbox{1}\cbox{1}\cbox{1}\cbox{1}\cbox{1}\cbox{1}\cbox{1}\cbox{1}}%
    \hbox{\cbox{1}\cbox{1}\cbox{1}\cbox{1}\cbox{1}\cbox{1}\cbox{1}\cbox{1}\cbox{1}\cbox{1}\cbox{1}}%
    \color{blue}%
    \hbox{\cbox{1}\cbox{1}\cbox{0.5}\cbox{0.5}\cbox{1}\cbox{1}\cbox{1}\cbox{1}\cbox{1}\cbox{1}\cbox{1}\cbox{0.5}\cbox{0.5}}%
    \hbox{\cbox{1}\cbox{1}\cbox{1}\cbox{1}\cbox{1}\cbox{1}\cbox{1}\cbox{1}\cbox{1}\cbox{1}\cbox{0.5}\cbox{0.5}}%
    \hbox{\cbox{1}\cbox{1}\cbox{1}\cbox{1}\cbox{1}\cbox{1}\cbox{1}\cbox{1}\cbox{1}\cbox{1}\cbox{1}}%
    \hbox{\cbox{1}\cbox{1}\cbox{1}\cbox{1}\cbox{1}\cbox{1}\cbox{1}\cbox{1}\cbox{1}\cbox{1}\cbox{1}}%
  }%
  \leavevmode\smash{\copy0}%
}
\usepackage[width=115.5bp]{geometry}
\begin{document}
“《千字文》第一句?”\par
该句号「挤压太多」。注意前两行都错位了!\par
……这个……还行?\par
……这个就不了……尴尬。

\xeCJKsetup{xeCJKactive=false}

\hskip-5.25bp\relax\hskip-5.25bp\relax 《千字文》第一句?\hskip-5.25bp\relax\hskip-5.25bp\relax \par
该句号「挤压太多」\hskip-5.25bp\relax\hskip-5.25bp\relax 这样做得到吗?

\parindent0pt\relax
\drawgrid
\end{document}

(用 XeLaTeX 编译后)输出

grid

其实……非常希望蓝色网络的那个效果是 xeCJK 的缺省设置……

texlive 2019 升级后 ctex 手册提供的章节设定例子出现异常

检查

  • 已在 issues 中进行搜索(包括已关闭的问题)

编译环境

  • 操作系统

    • Windows 7/8/10
    • macOS
    • Linux
  • TeX 发行版

    • TeX Live 2019
    • MiKTeX
    • CTeX

描述问题

ctex 手册中提供了一个章节设定的例子:

\newcommand{\chapternamebox}[1]{%
  \parbox{\ccwd}{\linespread{1}\selectfont\centering #1}%
}
\ctexset{
  part/pagestyle = empty,
  chapter = {
    beforeskip = 0pt,
    fixskip = true,
    format = \huge\bfseries,
    nameformat = \rule{\linewidth}{1bp}\par\bigskip\hfill\chapternamebox,
    number = \arabic{chapter},
    aftername = \par\medskip,
    aftertitle = \par\bigskip\nointerlineskip\rule{\linewidth}{1bp}\par,
    pagestyle = empty,
  },
  section = {
    format = \Large\bfseries\raggedright
  }
}

如今使用它编译出来的内容,上下两条直线是无法对齐的了。

最小工作示例(MWE)

\documentclass[UTF8]{ctexbook}
\newcommand{\chapternamebox}[1]{%
  \parbox{\ccwd}{\linespread{1}\selectfont\centering #1}%
}
\ctexset{
  part/pagestyle = empty,
  chapter = {
    beforeskip = 0pt,
    fixskip = true,
    format = \huge\bfseries,
    nameformat = \rule{\linewidth}{1bp}\par\bigskip\hfill\chapternamebox,
    number = \arabic{chapter},
    aftername = \par\medskip,
    aftertitle = \par\bigskip\nointerlineskip\rule{\linewidth}{1bp}\par,
    pagestyle = empty,
  },
  section = {
    format = \Large\bfseries\raggedright
  }
}

\begin{document}
\chapter{章标题}
\end{document}

链接

  • TeX.SX:
  • GitHub:

有关浮动体过多产生的不良后果

编译环境:Windows10+texlive2018+xelatex

文档类:ctexart。

问题描述:
原谅我此时可能提供不了MWE,十分抱歉。但是可否讨论一下下?

在一页中使用了较多的浮动体的情况下(4,5个左右),为什么有的图片没显示出来,没有报错但是就是不显示。

我在那堆浮动体**强行\newpage了一下,那个不显示的图片在新的一页才重新显示出来。

当时在比赛,时间紧迫也没来得及问,后来代码也被修改了,实在提供不了MWE,抱歉。可否讨论下这种现象出现的原因?

obeylines实现在参数中换行导致tabular环境中\hline出错

\documentclass{article}
\usepackage{amsfonts}
\usepackage{amssymb}
\usepackage{amsmath}
\usepackage{ifthen}
\newif\ifteacher    
\usepackage{ctex}
\usepackage{color}

\makeatletter
\begingroup
\catcode\active\active
\protected\gdef\mathobeylines{%
  \catcode\active\active \let^^M\math@obeylines}
\endgroup
\protected\def\math@obeylines{%
  \unless\ifmmode\expandafter\par\fi}

\newcommand\testE[2]{\item[5.]#1\par#2\par
	\ifteacher\begingroup\mathobeylines\expandafter\testEaux
	\else\expandafter\@gobble\fi}
\newcommand\testEaux[1]{\indent\color{red}#1\par\endgroup}
\makeatother
%当答案中tabular环境中使用\hline时出现错误
\begin{document}
	\teachertrue
	\begin{itemize}
		\testE{ID}{题干.}%
		{解:由于更改了行结束符号的catcode,导致tabula环境中使用\hline出错
         解:由约束条件$\begin{cases}%
		x\geqslant 0\
		x\leqslant y\
		x+y\geqslant 2
		\end{cases}$作出可行域如图,
		化$z=2x+y$$y=-2x+z$,由图可知,当直线$y=-2x+z$$A$时,直线在$y$轴上的截距最小,$z$有最小值为$2$${\therefore}z=2x+y$的取值范围为$[2$$+\infty)$\color{blue}故答案为:$[2$$+\infty)$\begin{tabular}{|c|c|c|c|}%\hline
		$x$ & $(0$$\ln (2k))$ & $\ln (2k)$ & $(\ln (2k)$$k) $\
		%\hline
		$f'(x)$ & $-$ & $0$ & $+ $\
		%\hline
		$f(x)$ & ${\searrow}$ & 极小值 & ${\nearrow} $\
		%\hline
		\end{tabular}
		}
	\end{itemize}
\end{document}

实际使用情况是 tabular 被我定义到了一个宏里面,不知道对解决办法是否有影响

尝试使用 \@currenvir 去做判定,水平有限,没成功。
尝试类似下面去构造一个 catcode=5 的宏命令去做补丁,也没有成功。

\catcode`|=2 % make the bar an end of group
\let\b=| % make \b a bar character

希望能够得到帮助,在此先谢过!!

\pdfmarkupcomment 不支持中文

一个例子:

% !TeX program = LuaLaTeX
% !TeX encoding = UTF-8

\documentclass{article}

\pagestyle{empty}

\usepackage{luatexja-fontspec}
\usepackage{luatexja-ruby}
\usepackage[rgb]{xcolor}
\usepackage[author={taroxd}]{pdfcomment}

\begin{document}

\section{标题}

\pdfmarkupcomment[markup=Squiggly,color=red]{中文}{中文}

\end{document}

使用 lualatex 编译,会得到如下错误。

Package soul Error: Reconstruction failed. [...t[markup=Squiggly,color=red]{中文}{中文}]

类似的,用 xelatex 也是得到同样的错误。这段代码将“中文”两次改为英文不会有问题。

让title的underline长度随着最长断行的长度而变化

检查

  • 已在 issues 中进行搜索(包括已关闭的问题)

编译环境

  • 操作系统

    • Windows 7/8/10
    • macOS
    • Linux
  • TeX 发行版

    • TeX Live 2017
    • MiKTeX
    • CTeX

描述问题

让title的underline长度随着最长断行的长度而变化。MWE是我目前的实现方法,此方法面临两个问题:
问题 1:当title出现\LaTeX时,编译不通过。
问题 2:将MWE移植到模板的cls时,编译不通过。

最小工作示例(MWE)

\documentclass{article}
\usepackage{xstring}
\usepackage{forloop}
\usepackage[comparenum]{arraysort}
\usepackage[UTF8]{ctex}
\usepackage{keyval}

\makeatletter
\def\BUPTthesiscntitlepage#1{\setkeys{cntitle}{#1}}
\define@key{cntitle}{title}{\long\def\BUPT@value@title{#1}}
\makeatother

\def\BUPTunderline#1#2{\underline{\hbox to #1{\hss #2\hss}}}

\def\IsPositive#1{%
	TT\fi
	\ifcat_\ifnum0<0#1 _\else A\fi}

\newsavebox\mybox

\newcommand{\cmpLen}[2]{%
	\sbox\mybox{#1}\edef\cmpA{\number\wd\mybox}%
	\sbox\mybox{#2}\edef\cmpB{\number\wd\mybox}%
	\if\IsPositive{\cmpA}%
		\if\IsPositive{\cmpB}%
			\arraysortcomparenum{\cmpA}{\cmpB}%
		\else
			\togglefalse {arraysortresequal}%
			\toggletrue  {arraysortresult}%
		\fi
	\else
		\if\IsPositive{\cmpB}%
			\togglefalse {arraysortresequal}%
			\togglefalse {arraysortresult}%
		\else
			\arraysortcomparenum{\cmpA}{\cmpB}%
		\fi
	\fi}

\BUPTthesiscntitlepage{%
	title = {北京邮电大学\&博士论文模板模板模板}}

%\BUPTthesiscntitlepage{%
	title = {北京邮电大学\&博士论文\LaTeX 模板模板模板}}
%编译不通过,对应问题 1。

\begin{document}

\makeatletter
\long\def\BUPTtitletemp{\&\BUPT@value@title\&}
\makeatother

\long\def\eng{\&AAAAAAA\&BBBB\&}

\long\def\testt{\BUPTtitletemp}

\BUPTtitletemp
	
\testt

\StrCount{\testt}{\&}[\tempnum]
\newcounter{NumofAnd}
\setcounter{NumofAnd}{\tempnum}
\newcounter{NumofRow}
\setcounter{NumofRow}{\the\numexpr\value{NumofAnd}-1\relax}

\newcounter{BUPTLoop}
\newcounter{BUPTLoopp}

\forloop{BUPTLoop}{1}{\value{BUPTLoop} < \value{NumofAnd}}{\arabic{BUPTLoop}}

\def\BUPTctrset{\setcounter{BUPTLoopp}{\theBUPTLoop}\stepcounter{BUPTLoopp}}

\newarray{BUPTtitle}
\expandarrayelementtrue

\forloop{BUPTLoop}{1}{\value{BUPTLoop} < \value{NumofAnd}}{\BUPTctrset
	\StrBetween[\value{BUPTLoop},\value{BUPTLoopp}]{\testt}{\&}{\&}[\tempstr]
	\BUPTtitle(\value{BUPTLoop})={\tempstr}}

\sortArray[cmpLen]{\theNumofRow}{BUPTtitle}

\BUPTtitle(\theNumofRow)

\newlength{\BUPTtitlelen}
\settowidth{\BUPTtitlelen}{\BUPTtitle(\theNumofRow)}
\addtolength{\BUPTtitlelen}{5pt}
\the\BUPTtitlelen

\begin{tabular}{rc}
题目: & \BUPTunderline{\BUPTtitlelen}{\StrBetween[1,2]{\testt}{\&}{\&}} \\
\forloop{BUPTLoop}{2}{\value{BUPTLoop} < \value{NumofAnd}}{ & \BUPTctrset\BUPTunderline{\BUPTtitlelen}{\StrBetween[\value{BUPTLoop},\value{BUPTLoopp}]{\testt}{\&}{\&}} \\}
\end{tabular}
	
\end{document}

(用 XeLaTeX 编译后)输出

问题 1 的输出:
Incomplete \iffalse; all text was ignored after line 58

问题 2 的输出:
Undefined control sequence. \StrCount{\BUPTtitletemp}{\&}

链接

beamer 与 wrapfig 合用的问题

beamer(以及 ctexbeamer)与 wrapfig 宏包联合使用时会出现一些不可预料的后果,具体有:

  1. 标点禁则失效,出现诡异断行:

image

\documentclass{ctexbeamer}
\usepackage{wrapfig,zhlipsum}

\begin{document}
\begin{frame}{Title}
  \begin{wrapfigure}{r}{4cm}
    \rule{4cm}{4cm}
  \end{wrapfigure}
  向量 $a$$b$ 的点积 $a\cdot b=|a||b|\cos\theta$ ,其中 $\theta=\langle a,\,b\rangle$ 表示 $a$$b$ 的夹角。
  \zhlipsum[9-11][name=zhufu]
\end{frame}
\end{document}
  1. 诡异断行在 beamer 中也会出现:

image

\documentclass{beamer}
\usepackage{wrapfig}

\begin{document}
\begin{frame}{Title}
  \begin{wrapfigure}{r}{4cm}
    \rule{4cm}{4cm}
  \end{wrapfigure}
  Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Ut purus elit,
  vestibulum ut, placerat ac, adipiscing vitae, felis. Curabitur dictum
  gravida mauris. Nam arcu libero, nonummy eget, consectetuer id,
  vulputate a, magna. Donec vehicula augue eu neque. Pellentesque
  habitant morbi tristique senectus et netus et malesuada fames ac turpis
  egestas. Mauris ut leo. Cras viverra metus rhoncus sem. Nulla et lectus
  vestibulum urna fringilla ultrices. Phasellus eu tellus sit amet tortor
  gravida placerat. Integer sapien est, iaculis in, pretium quis, viverra ac,
  nunc. Praesent eget sem vel leo ultrices bibendum.
\end{frame}
\end{document}
  1. 使用 lipsum 时文字会被覆盖,没有出现图文混排的效果:

image

\documentclass{beamer}
\usepackage{wrapfig,lipsum}

\begin{document}
\begin{frame}{Title}
  \begin{wrapfigure}{r}{4cm}
    \rule{4cm}{4cm}
  \end{wrapfigure}
  \lipsum[1]
\end{frame}
\end{document}

为什么公式前后的空白不对称?(非中文环境独有)

检查

  • 已在 issues 中进行搜索(包括已关闭的问题)

编译环境

  • 操作系统

    • Windows 7/8/10
    • macOS
    • Linux
  • TeX 发行版

    • TeX Live 2018
    • MiKTeX
    • CTeX

描述问题

\begin{equation}\end{equation}和两侧文本没有空行时,公式和上下文本间的间距是一样的,但为了代码可读性一般会留上空行,这样公式上方的空白会比下方空白更大。在article+xeCJKctexartarticle下测试均是如此,XeLaTeX和pdfLaTeX没有区别。显示\the\abovedisplayskip\the\belowdisplayskip是一样的。

最小工作示例(MWE)

% \documentclass{ctexart}
\documentclass{article}
% \usepackage{xeCJK}

\begin{document}
[1] The quick brown fox jumps over a lazy dog.
% 这个软件包提供了一个中文虚拟文本的接口。

\begin{equation}
    a+b=c
\end{equation}

[2] The quick brown fox jumps over a lazy dog.
% 这个软件包提供了一个中文虚拟文本的接口。(注意这里没有空行)
\begin{equation}
    a+b=c
\end{equation}

[3] The quick brown fox jumps over a lazy dog.
% 这个软件包提供了一个中文虚拟文本的接口。

\the\abovedisplayskip

\the\belowdisplayskip

\the\abovedisplayshortskip

\the\belowdisplayshortskip

\end{document}

公式(1)和段落[1]、公式(2)和段落[2]、公式(2)和段落[3]的间距都是一样的,但公式(1)和段落[2]的间距更小。

链接

抱歉,没有搜索到相关内容(捂脸

xetex 中 fandol 字体 script 的问题

检查

  • 已在 issues 中进行搜索(包括已关闭的问题)

编译环境

  • 操作系统

    • Windows 7/8/10
    • macOS
    • Linux
  • TeX 发行版

    • TeX Live 2019
    • MiKTeX
    • CTeX

描述问题

用 xetex 编译如下代码:

\documentclass{article}
\usepackage{xeCJK}
\begin{document}
你好
\end{document}

会得到警告信息

Package fontspec Warning: Font "FandolSong-Regular" does not contain requested
(fontspec)                Script "CJK".

检查后发现问题来自于 xetex 本身:

\font\1="[FandolSong-Regular.otf]/OT" at 10pt
% \font\1="[XITS-Regular.otf]/OT" at 10pt
\showthe\XeTeXOTcountscripts\1
\bye

得到的结果是 0,显然是不应该的。其他字体:中易宋体=1,思源=7,苹方=6。不知道这是字体的问题,还是 xetex 引擎的问题?@clerkma

链接

  • TeX.SX:
  • GitHub:

"hello world" of the alternate forum to `bbs.ctex.org`.

Due to the reason mentioned by @wulingyun in CTeX-org/ctex-kit#393, http://bbs.ctex.org was shut down, and will not be reopen in near future. Hence, this repository is created as a temporarily alternative, driven by CTeX-org/tex-by-topic-cn#9 and this chat.

  • For anyone prefers forum-like discussion, issue-tracking of this repository could be used.
  • For anyone loves IM group chat more, joining the group and interacting with the @GitHubBot which is connected to this repository is equivalent to discussing on issues.

Liam
2018-12-17

使用 listings 宏包,如何设置代码的字体

  1. 设置的代码字体为Courier New,插入代码的宏包为\usepackage{listings}。
    代码的字体设置形式为
\lstset{
	basicstyle=\setmainfont{Courier New}
}

我曾经还采用了另一种形式,在插入代码的前面设置:\setmainfont{Courier New}
但是两种形式都会有BUG,之后描述。
2. 正文的字体为Palatino,设置页眉的方式为

\usepackage{fancyhdr}
\fancyhead[R]{test}
\fancyhead[L]{test}
\fancyfoot[C]{test}
  1. 问题描述:在论文最后几页中插入代码,上述所说的两种设置代码字体的方法都会影响页眉的字体,但是不影响正文字体,即页眉的字体发生了改变。我尝试过清空此页的页眉页脚重新设置,但是没有效果。
    比如
\setmainfont{TeX Gyre Pagella}
\fancyhead[L]{Team \# 86765}
\fancyfoot[C]{\bfseries\thepage}
\fancyhead[R]{Page \thepage\ of \pageref{LastPage}}
\lstinputlisting[language=python]{data_process.py}

这样没有效果,插入代码的字体会影响页眉,但是不影响正文。
4. 请问如何单独设置代码的字体,而且代码块的字体不影响论文其他位置的字体。我在Stackoverflow,tex.stackchange和overleaf上查询了许久,没有得到较好的解决方案。他们提供的解决方案是basicstyle=\ttfamily,但是这样代码的字体很丑,巨丑。

有办法使 xCJKecglue 随着字体而变化吗?

检查

  • 已在 issues 中进行搜索(包括已关闭的问题)

描述问题

通过 xeCJK 宏包提供的 xCJKecglue 选项,我们可以调整中西文之间空格的大小。美中不足的是,这个值通用于罗马(衬线)字族与无衬线字族的全部字体。我希望能够调整 xCJKecglue 的值,使得 xCJKecglue + 数字宽 + xCJKecglue 占一个汉字宽,这样 第一章第 1 章 就可以占据同样多的位置(不论是正体、意大利斜体,还是衬线、无衬线)。或许可以通过 NFSS 的某个钩子执行自定义的 \xeCJKsetup{ xCJKecglue = <glue> }

最小工作示例(MWE)

\documentclass{article}
\usepackage{xeCJK} % loads fontspec internally

\setmainfont{TeX Gyre Schola} % Latin fonts specification

% Regular and italic faces have digit width 556/1000
\xeCJKsetup{ xCJKecglue = {\hskip 0.222em plus 0.05em minus 0.05em\relax} }

% Bold and bold italic faces have digit width 574/1000
%\xeCJKsetup{ xCJKecglue = {\hskip 0.213em plus 0.05em minus 0.05em\relax} }

\begin{document}
\huge
\begin{tabular}{ll}
第一章\rule[-0.2em]{0.4pt}{1em} & \bfseries 第一章\rule[-0.2em]{0.4pt}{1em} \\
第1章\rule[-0.2em]{0.4pt}{1em} & \bfseries 第1章\rule[-0.2em]{0.4pt}{1em} \\
\end{tabular}
\end{document}

(用 XeLaTeX 编译后)输出

misaligned

链接

有关插入eps文件的问题

操作系统: windows10
编译方式:xelatex
发行版:texlive2018
其实一直想问这个问题(莫笑,可能有点low,但困扰了我很久),latex如何插入eps文件,一直插入一直错,曾经也去搜索过,但一直没有好的解决方案。

问题描述如下:
在Lshort中,对插入eps文件描述如下:
default

MWE如下:

\documentclass{ctexart}

\usepackage{graphicx}

\begin{document}
	\includegraphics[width=8cm, height=10cm]{1.eps}
\end{document}

命令行编译 出错信息如下:

xdvipdfmx:fatal: pdf_ref_obj(): passed invalid object.

Output file removed.

Error 1 (driver return code) generating output;
file test.pdf may not be valid.
Transcript written on test.log.

在 LaTeX 中如何实现「页尾注」?

想写一个宏包,其实是很早之前的想法,最近准备开始实施了。
目的是实现一个版心内的注。即把注不放到页脚,也不放到页边,而是放到版心内,(严格说脚注也在版心内,但它已经不属于正文那部分了)。
比如当前页正文行文中插入\textnote{《春晓》,唐诗,作者孟浩然},然后在当前页面版心右下角占据一半行宽的栏内放入这一注的内容。

布局形式上这可以称为文注混排,有点像图文混排,可以把放注的盒子看做混排的图。又有点像局部的双栏,或双栏语言对照或者代码效果对照,这里可以参考wrapfig,multicol,paralist等。如果放注的盒子的位置没有强制要求,比如直接在注所在段落旁边,那么这种形式,参考上述宏包,利用tex的段落形状的机制应该就可以实现。

但如果要强制要求盒子的位置,比如一定要放到页面版心底部,那么就需要考虑实现的机制。首先想到的是类似浮动体的机制,利用insertion,可以向脚注或者浮动体的一样,在版心底部插入,但这个时候插入的盒子是完全占满整个行空间的,也就是无法体现出文注混排的形式。难点在这里。

要求将放注的盒子在版心底部一侧占据一定的空间,而正文在其左侧正常排,这种情况还可以用另外一种思路来实现,就是利用页面布局,如果存在非矩形的版心布局,而是矩形缺一角(这一角在底部是一个小矩形)的布局,那么正文正常排版,而把注独立出来,利用页面的定位,把它放入小矩形所在位置即可,但是目前还没有缺一角这种页面布局的方法。而且每一页注的大小可能不一样,所以全局的设置页面布局也存在问题。

页面布局不容易实现,那么只能考虑用类似浮动体的方法,而且需要改进。想象一下,把注的内容作为一个插入项,计算其盒子的尺寸并记录。如果这个盒子占据一半的行宽,假设盒子的宽为w,高为h,那么插入页面后,实际影响页面的高度为h,但是影响正文排版的高度为0,只是影响了正文h高度的行宽。如果这是一个浮动体,那么将影响h高度的内容即影响h2w的文字内容,将这一部分内容移除,留出高度h的空间插入即可。但现在仅需要移除一半,因为剩下的一半还需要排h/2高的页面空间(需要排成hw)。现在的思路是把h/2的内容取出来,做一半行宽段落形状,然后在其旁边插入放注的盒子。所以这里涉及到分页的机制,插入的机制,以及tex的逻辑,不知道能否实现,如果有些机制利用不起来,估计都实现不了。所以我想顺便放出来讨论一下。

如何使得参考文献中的标题大写

编译环境

xelatex + bibtex

  • 操作系统:Windows10

  • TeX 发行版 : TeX Live2018

描述问题

  1. 问题描述
    参考文献使用的bibtex,从网上export出来题目是大写的,.bib文件也是大写的。插进文章就变成小写了。
    截图如下:

文中代码:
image

bib文件中:
image

pdf中结果:
image

最小工作示例(MWE)

\documentclass{ctexart}
\begin{document}
\bibliography{books}
\bibliographystyle{IEEEtran}
\end{document}

obeylines实现在参数中换行导致cases,aligned等环境出错

\documentclass{article}
\usepackage{amsfonts}
\usepackage{amssymb}
\usepackage{amsmath}
\usepackage{ifthen}
\newif\ifteacher    
\usepackage{ctex}
\usepackage{color}

\makeatletter
\newcommand\testE[2]{\item[5.]#1\par#2\par
	\ifteacher\begingroup\obeylines\expandafter\testEaux
	\else\expandafter\@gobble\fi}
\newcommand\testEaux[1]{\indent\color{red}#1\par\endgroup}
\makeatother
%这里进行了全局修改,修补了cases环境的断行问题,
%修改"的类别码存在隐患,
%有没有别的方法解决这个问题,
%能定义一个宏代替实现换行也行,
%最好是能够通过重定义cases环境实现
\catcode`\"=5
\begin{document}
	\teachertrue

	\begin{itemize}%\cprotect[mmm]
		\testE{ID}{题干.}{解:由于更改了行结束符号的catcode,导致数学环境出错
			$\begin{cases}"
			\log _{a}4<3\\"
			\log _{a}8>3"
			\end{cases}$
		}
	\end{itemize}
\end{document}

xelatex 编译使用了 libertine 字体的文档时出现的奇怪错误

检查

  • 已在 issues 中进行搜索(包括已关闭的问题)

编译环境

  • 操作系统

    • Windows 10
    • macOS
    • Linux
  • TeX 发行版

    • TeX Live 2019
    • MiKTeX
    • CTeX

描述问题

  1. 描述出现的情况:
    在使用 xelatex 编译使用了 libertine 字体的文档时,发现 pdfTeX 这样的文字不能编译通过。
    然而,pdf TeX 即 f 和 T 之间添加空格,编译就能够通过。

  2. 给出复现步骤
    可以参考以下 MWE,使用 xelatex 编译文档即可。单位电脑和个人电脑均出现了以上问题。

  3. 给出您解决问题所进行的尝试
    无。

最小工作示例(MWE)

\documentclass{article}
\usepackage{libertine}
\begin{document}
  pdfTeX
\end{document}

(用 XeLaTeX 编译后)输出

This is XeTeX, Version 3.14159265-2.6-0.999991 (TeX Live 2019/W32TeX) (preloaded format=xelatex)
 restricted \write18 enabled.
entering extended mode
(./main.tex
LaTeX2e <2018-12-01>
(d:/texlive/2019/texmf-dist/tex/latex/base/article.cls
Document Class: article 2018/09/03 v1.4i Standard LaTeX document class
(d:/texlive/2019/texmf-dist/tex/latex/base/size10.clo))
(d:/texlive/2019/texmf-dist/tex/latex/libertine/libertine.sty
(d:/texlive/2019/texmf-dist/tex/generic/ifxetex/ifxetex.sty)
(d:/texlive/2019/texmf-dist/tex/generic/oberdiek/ifluatex.sty)
(d:/texlive/2019/texmf-dist/tex/latex/xkeyval/xkeyval.sty
(d:/texlive/2019/texmf-dist/tex/generic/xkeyval/xkeyval.tex
(d:/texlive/2019/texmf-dist/tex/generic/xkeyval/xkvutils.tex
(d:/texlive/2019/texmf-dist/tex/generic/xkeyval/keyval.tex))))
(d:/texlive/2019/texmf-dist/tex/latex/base/textcomp.sty
(d:/texlive/2019/texmf-dist/tex/latex/base/ts1enc.def))
(d:/texlive/2019/texmf-dist/tex/latex/fontspec/fontspec.sty
(d:/texlive/2019/texmf-dist/tex/latex/l3packages/xparse/xparse.sty
(d:/texlive/2019/texmf-dist/tex/latex/l3kernel/expl3.sty
(d:/texlive/2019/texmf-dist/tex/latex/l3kernel/expl3-code.tex)
(d:/texlive/2019/texmf-dist/tex/latex/l3kernel/l3xdvipdfmx.def)))
(d:/texlive/2019/texmf-dist/tex/latex/fontspec/fontspec-xetex.sty
(d:/texlive/2019/texmf-dist/tex/latex/base/fontenc.sty
(d:/texlive/2019/texmf-dist/tex/latex/base/tuenc.def))
(d:/texlive/2019/texmf-dist/tex/latex/fontspec/fontspec.cfg)))
(d:/texlive/2019/texmf-dist/tex/latex/libertine/LinLibertine_R.tex)
(d:/texlive/2019/texmf-dist/tex/latex/libertine/LinBiolinum_R.tex)
(d:/texlive/2019/texmf-dist/tex/latex/libertine/LinBiolinum_K.tex)
(d:/texlive/2019/texmf-dist/tex/latex/libertine/LinLibertine_I.tex)
(d:/texlive/2019/texmf-dist/tex/latex/libertine/LKey.tex)) (./main.aux)
(d:/texlive/2019/texmf-dist/tex/latex/base/ts1cmr.fd) [1] (./main.aux) )
(see the transcript file for additional information)
xdvipdfmx:fatal: Charsets data not available

No output PDF file written.

Error 1 (driver return code) generating output;
file main.pdf may not be valid.
Transcript written on main.log.

链接

  • TeX.SX:
  • GitHub:

从版心设计到实物之前的工作流程与一些疑问 - 个人非商业用途的一个实践

背景

#47 转移过来。

最近,帮了个忙,义务排书。项目地址:https://github.com/Ranqumn/FoE_pink_eyes_publish

有两种版本,一种是中译版的,一种是中英双语版的。

这仅作为个人用途,而非商业用途。虽然如此,我依然希望,书籍可以有印刷级别的品质。

书籍排版要素:文学类(含有略微的数学公式)、中文与中英双语、横排、密排、无边注。

本书特殊涉及:中英双语排版(苦海无涯,随缘是岸苦海无涯,放弃是岸


问:为何不使用 Adobe InDesign 等排版软件?

  1. 我不相信开源不能做到工业级别;
  2. LaTeX 更加优雅,可以构建很多工具链;
  3. 没钱买正版。

问:你的 LaTeX 水平如何?

  1. 一个相当辣鸡的水平;
  2. lshort-zh-cn 很早看完了;
  3. Tikz 开始上手没多久;
  4. 没读过 The TeXbook,不了解 TeX 底层命令;
  5. 没写过宏包,没读过 documentclass 的代码。

一些参考

中文版心设计

一般性资料与讨论可见:

LaTeX 相关的一般性讨论:

涉及宏包:

  • ctex
    • xeCJK
    • zhlineskip
  • geometry
  • layout
  • layouts
  • showframe
  • fancyhdr

装订相关

一些中文的,并非专业的资料(我找不到专业的……):

英文资料:

TeXStudio 无法启动 build

最近经常遇到类似问题:TeXStudio 无法启动 Build & View,如下图所示

image

出现的原因五花八门,新手们又只知道截个图过来问,根本无法排查。有点什么头绪就列出来吧。

ctex + lwarp 生成的 html 出现文字顺序颠倒

检查

  • 已在 issues 中进行搜索(包括已关闭的问题)

编译环境

  • 操作系统

    • Windows 7/8/10
  • TeX 发行版

    • TeX Live 2019 pretest

描述问题

ctex + lwarp 生成的 html 出现文字顺序颠倒(见最小例子第 11 个脚注),改成 article 文档类设置对应中文顺序正常。

最小工作示例(MWE)

\documentclass[a4paper,10pt]{article}
\usepackage{ctex}
% \usepackage{fontspec} %% 换成 fontspec 直接设置字体生成的文档正常
% \setmainfont{SimSun}
\usepackage[
mathjax
]{lwarp}
\begin{document}
可见\footnote{ Igor R. Shafarevich, Basic Notions of Algebra(p.108), Springer, 2005.  有中译本,《代数基本概念》, 李福安译, 高等教育出版社, 2014年。}。

可见\footnote{ Igor R. Shafarevich, Basic Notions of Algebra(p.108), Springer, 2005.  有中译本,《代数基本概念》, 李福安译, 高等教育出版社, 2014年。}。

可见\footnote{ Igor R. Shafarevich, Basic Notions of Algebra(p.108), Springer, 2005.  有中译本,《代数基本概念》, 李福安译, 高等教育出版社, 2014年。}。

可见\footnote{ Igor R. Shafarevich, Basic Notions of Algebra(p.108), Springer, 2005.  有中译本,《代数基本概念》, 李福安译, 高等教育出版社, 2014年。}。

可见\footnote{ Igor R. Shafarevich, Basic Notions of Algebra(p.108), Springer, 2005.  有中译本,《代数基本概念》, 李福安译, 高等教育出版社, 2014年。}。

可见\footnote{ Igor R. Shafarevich, Basic Notions of Algebra(p.108), Springer, 2005.  有中译本,《代数基本概念》, 李福安译, 高等教育出版社, 2014年。}。

可见\footnote{ Igor R. Shafarevich, Basic Notions of Algebra(p.108), Springer, 2005.  有中译本,《代数基本概念》, 李福安译, 高等教育出版社, 2014年。}。

可见\footnote{ Igor R. Shafarevich, Basic Notions of Algebra(p.108), Springer, 2005.  有中译本,《代数基本概念》, 李福安译, 高等教育出版社, 2014年。}。

可见\footnote{ Igor R. Shafarevich, Basic Notions of Algebra(p.108), Springer, 2005.  有中译本,《代数基本概念》, 李福安译, 高等教育出版社, 2014年。}。

可见\footnote{ Igor R. Shafarevich, Basic Notions of Algebra(p.108), Springer, 2005.  有中译本,《代数基本概念》, 李福安译, 高等教育出版社, 2014年。}。

可见\footnote{ Igor R. Shafarevich, Basic Notions of Algebra(p.108), Springer, 2005.  有中译本,《代数基本概念》, 李福安译, 高等教育出版社, 2014年。}。
\end{document}

(用 XeLaTeX 编译后)输出
图片

如何在word插入latex编写的伪代码算法

检查

  • 已在 issues 中进行搜索(包括已关闭的问题)

编译环境

  • 操作系统

    • Windows 7/8/10
    • macOS
    • Linux
  • TeX 发行版

    • TeX Live
    • CTeX
    • MiKTeX

描述问题

最小工作示例(MWE)

\documentclass{ctexart}
\begin{document}
Hello, \LaTex!
\end{document}

(用 XeLaTeX 编译后)输出

! Undefined control sequence.
l.3 Hello, \LaTex
                 !
?

链接

  • TeX.SX:
  • GitHub:

Roboto 字体在 xdvipdfmx 中调用时出现 null character 的警告信息

检查

  • 已在 issues 中进行搜索(包括已关闭的问题)

编译环境

  • 操作系统

    • Windows 7/8/10
    • macOS
    • Linux
  • TeX 发行版

    • TeX Live 2018, 2109
    • MiKTeX
    • CTeX

描述问题

Roboto 字体在 xdvipdfmx 中调用时会出现 null character 的警告信息。XeTeX 在调用 xdvipdfmx 时默认开启了 -q 选项,所以不出现。这一警告似乎对输出的 PDF 没有影响,不清楚是字体问题还是 xdvipdfmx 的问题。

@clerkma

最小工作示例(MWE)

\documentclass{article}
\usepackage{fontspec}
\setmainfont{Roboto-Regulat.ttf}
\begin{document}
Hello world!
\end{document}

(用 XeLaTeX 编译后)输出

xdvipdfmx:warning: Removed 14 null character(s) from fontname --> Roboto-Regular

Roboto 字体的版本为 2.001101; 2014

链接

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.