如何使用字符◌
( 25CC
):http://www.fileformat.info/info/unicode/char/25cc/index.htm?
我在 Windows 下使用 MikTex (pdflatex);我正在导入以下包:
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
将字符粘贴到我的文档中时,我收到以下错误消息:
! 包 inputenc 错误:Unicode 字符 \u8:Γùî 未设置为用于 LaTeX。
我读到过关于使用utf8x
而不是 的信息utf8
,但是这个包与 不兼容biblatex
。
我该如何解决这个问题?
编辑:感谢大家的回复和各种画圆的方法!我应该提到我需要将圆与变音符号结合起来(见http://en.wikipedia.org/wiki/Dotted_circle)——结果如下:
◌̊
因此,对我来说,XeLaTeX 似乎是最佳选择。答案1
正如评论中所建议的,您可以将字体设置为支持 Unicode 的字体(此解决方案需要 XeLaTeX):
\documentclass[12pt]{article}
\usepackage[a4paper]{geometry}
\usepackage{fontspec}
\setmainfont{Arial Unicode MS} % Other fonts that might work: Hiragino Maru Gothic Pro, Lao Sangam MN, Inaimathi, Microsoft Sans Serif
\begin{document}\huge
\noindent a b c \\
◌ \\
ä ë \\
à è \\
ç
\end{document}
答案2
您可以准备以下文件dottedcircle.tex
\documentclass[preview]{standalone}
\usepackage{fontspec}
\setmainfont{Charis SIL}
\begin{document}
^^^^25cc
\end{document}
并使用 XeLaTeX 或 LuaLaTeX 进行编译。选择系统中已有的、具有字形的字体。
pdflatex
然后,您可以按照以下策略在文档中使用 PDF :
\documentclass{article}
\usepackage[utf8]{inputenc}
\usepackage{graphicx,newunicodechar}
\newunicodechar{◌}{\includegraphics{dottedcircle}}
\begin{document}
a b c ◌ ä ë
\end{document}
如果您安装了 Stix 字体,则可以使用它们:
\documentclass{article}
\usepackage[utf8]{inputenc}
\usepackage{newunicodechar}
\DeclareFontEncoding{LS1}{}{}
\DeclareFontSubstitution{LS1}{stix}{m}{n}
\DeclareFontFamily{LS1}{stixscr}{\skewchar\font127 }
\DeclareFontShape{LS1}{stixscr}{m}{n} {<->s*[.7] stix-mathscr}{}
\newunicodechar{◌}{{\usefont{LS1}{stixscr}{m}{n}\symbol{\string"E3}}}
\begin{document}
a b c ◌ ä ë
\end{document}
答案3
这使用stackengine
包来构造字形\circ
。
\documentclass{article}
\usepackage{stackengine}
\usepackage{xcolor}
\usepackage{graphicx}
\def\dottedcirc{\color{white}%
\stackinset{c}{}{c}{-.4pt}{--}{%
\stackinset{c}{}{c}{-.5pt}{--}{%
\stackinset{c}{}{c}{.1pt}{\rotatebox{90}{$-$}}{%
\stackinset{c}{}{c}{.1pt}{\rotatebox{45}{$-$}}{%
\stackinset{c}{}{c}{.1pt}{\rotatebox{-45}{$-$}}{%
\textcolor{black}{$\circ$}%
}%
}}}}\color{black}}
\begin{document}
x\dottedcirc y
\end{document}
o
当我发现紧接在 之前的小写字母略有重叠时,我编辑了解决方案。\dottedcirc
在这里,我使用两个略有重叠的 n 破折号 ( --
) 代替$-$
水平白化笔划的减号 ( )。
如果你red
用代替white
,你就会明白堆栈是如何形成的:
根据 OP 的评论,我无法轻松地将虚线圆点化,就像使用小圆圈围绕周边一样。但是,我可以用较小的虚线更频繁地细分圆环,从而产生类似的外观:
\documentclass{article}
\usepackage{stackengine}
\usepackage{xcolor}
\usepackage{graphicx}
\def\dottedcirc{\color{white}%
\stackinset{c}{}{c}{-.4pt}{--}{%
\stackinset{c}{}{c}{-.5pt}{--}{%
\stackinset{c}{}{c}{.2pt}{\rotatebox{90}{$-$}}{%
\stackinset{c}{}{c}{.2pt}{\rotatebox{30}{$-$}}{%
\stackinset{c}{}{c}{.2pt}{\rotatebox{60}{$-$}}{%
\stackinset{c}{}{c}{.2pt}{\rotatebox{-30}{$-$}}{%
\stackinset{c}{}{c}{.2pt}{\rotatebox{-60}{$-$}}{%
\textcolor{black}{$\circ$}%
}%
}}}}}}\color{black}}
\begin{document}
x\dottedcirc y
\end{document}
放大来看,
寻找stackengine
将在未来几天内传播的 V3.21,以修复使用或水平对齐\stackinset
时与 相关的错误。l
r
答案4
这是我的第二条回答,它的方法与另一条不同,并且是应 OP 的要求使用点而不是破折号。在这里,我使用该fp
包将一系列缩放的点构建成一个圆圈。代码有四个可设置的参数,包括:单位圆周围点的度数分离、ex 中的圆半径、点相对于句点的大小以及以圆半径为单位的整体字符宽度。
\documentclass{article}
\usepackage{stackengine}
\def\usestackanchor{T}%
\usepackage{ifthen}
\usepackage{fp}
\usepackage{graphicx}
\newcounter{index}
\def\dtheta{30}% degrees per dot
\def\dR{.42}% radius of circle in ex's
\def\dotsize{.6}% size of dots relative to period
\def\charwidth{3}% overall characterwidth in circle radii
\newlength\dRlen
\setlength\dRlen{\dR ex}
\def\basechar{\strut%
\rule[.5\ht\strutbox-.5\dp\strutbox]{\charwidth\dRlen}{0ex}}
\savestack{\dotcircle}{\basechar}
\setcounter{index}{0}
\whiledo{\theindex<360}{%
\FPdiv\thetaRad{\theindex}{57.29578}%
\FPcos\dx{\thetaRad}%
\FPmul\dx{\dR}{\dx}%
\FPsin\dy{\thetaRad}%
\FPmul\dy{\dR}{\dy}%
\savestack{\dotcircle}{\stackinset{c}{}{c}{\dy ex}{%
\kern\dx ex\kern\dx ex\scalebox{\dotsize}{.}}{\dotcircle}}
\addtocounter{index}{\dtheta}%
}
\begin{document}
x\dotcircle y
\end{document}