附录

附录

我怎样才能生成点划线.-.-.-.-?我试图在手册中查找一些东西tikz,但没有找到任何东西。

答案1

各种预定义的虚线图案记录在15.3.2 图形参数:虚线图案手册(适用于 2015 年 8 月 29 日的 3.0.1.a 版)。它们是、 和dotteddashed其中每个都有更密集和更松散的变体,例如和。其他的也同样如此。dash dotdash dot dotdensely dashedloosely dotted

此外,您还可以使用例如指定自定义模式dash pattern={on 4pt off 1pt on 2pt off 3pt},我想这是不言自明的。

\documentclass{article}
\usepackage{tikz}

\begin{document}
\begin{tikzpicture}
\draw [thick,dash dot] (0,1) -- (5,1);
\draw [thick,dash pattern={on 7pt off 2pt on 1pt off 3pt}] (0,0) -- (5,0);
\end{tikzpicture}

\end{document}

在此处输入图片描述

附录

如果您想在文本中放置这样的线条,并与周围文本更好地对齐,那么您可以将选项添加baseline=<length>tikzpicture。默认情况下, 的底端tikzpicture位于周围文本的基线上。如果您添加baseline=10pt,则tikzpicture将被放置在其内部坐标系中的 y=10pt 位于周围文本的基线上。

这是一个例子。\tikz是环境的一个简短形式tikzpicture,用于放置在文本中的简单图片。

\documentclass{article}
\usepackage{tikz}

\begin{document}
Lorem ipsum \tikz\draw [thick,dash dot] (0,0) -- (3,0); dolor sit amet

Lorem ipsum \tikz[baseline=-0.5ex]\draw [thick,dash dot] (0,0) -- (3,0); dolor sit amet
\end{document}

在此处输入图片描述

答案2

这是使用引线的版本。虽然所有参数都可以更改,但主要参数是\dashdotline{<length>}绘制线,其配置如下:\dashfrac{<percent of repetition used by dash>}; \replength=<repetition-length>\relax

\documentclass[10pt]{article}
\newlength\replength
\newcommand\repfrac{.40}% PERCENT OF REPETITION USED BY DASH
\newcommand\dashfrac[1]{\renewcommand\repfrac{#1}}% MACRO TO ALTER \repfrac
\setlength\replength{8.5pt}% REPITITION LENGTH
\newcommand\rulewidth{.6pt}% DASH WIDTH
\def\dashht{.5\dimexpr\ht\strutbox-\dp\strutbox\relax}
\newcommand\tdashfill[1][\repfrac]{\cleaders\hbox to \replength{%
  \smash{\rule[\dashht]{\repfrac\replength}{\rulewidth}%
  \kern.5\dimexpr\replength-\repfrac\replength-2.5pt\relax%
  \raisebox{\dimexpr\dashht-.3pt}{.}}}\hfill}
\newcommand\dashdotline[1]{%
  \makebox[#1][l]{\tdashfill\hfil}}
\begin{document}
x\dashdotline{2in}y\par
\replength 17.5pt
x\dashdotline{1in}y\par
\dashfrac{.66}
x\dashdotline{1in}y
\end{document}

在此处输入图片描述

答案3

领导者还有另一个解决方案,虽然不完美,但尽可能简单:

\xleaders\hbox to 1em{$- \cdot$}\hfill $-$

如果您经常使用它,请定义一些宏作为\dashdotted,如果您想要特定的长度而不是填充行,只需将其括在\makebox(例如\makebox[2cm]{\dashdotted})中。MWE:

姆韦

\documentclass[a5paper,twocolumn]{article}
\def\dashdotted{\xleaders\hbox to 1em{$- \cdot$}\hfill $-$}
\begin{document}
x\dashdotted 1\par 
x\makebox[2cm]{\dashdotted}1\par
xxxxx\dashdotted 1\par 
xxxxxxxxxx\dashdotted 1\par 
xxxxxxxxxxxxxxx\dashdotted 1
\end{document}

相关内容