创建带有破折号的菱形

创建带有破折号的菱形

我正在寻找如何创建一个带有水平分隔线的菱形符号。如下所示:

在此处输入图片描述

我找到了diamondminusMnSymbol,但是这个新包与我使用的其他包(例如)不兼容amssymb

你知道如何创建这样的符号吗?

答案1

我使用了amssymb您提到的包装符号并添加了破折号,使用scalebox(提供的)以及graphicx不同的值和来保持破折号的粗细。xy

\documentclass[12pt]{article}

\usepackage{amssymb}
\usepackage{graphicx}

\newcommand{\clap}[1]{\makebox[0pt]{\hss#1\hss}}
\newcommand{\mydiamond}{%
  \sbox0{$\lozenge$}%
  \usebox0\kern-.5\wd0\clap{\raisebox{.1ex}{\scalebox{.7}[1]{$-$}}}\kern.5\wd0%
}

\begin{document}
\mydiamond

\end{document}

在此处输入图片描述

答案2

两种方法:

使用现有\Diamondamssymb

\documentclass{article}
\usepackage{stackengine,amssymb,graphicx}
\newcommand\DDiamond{\ensurestackMath{%
  \stackengine{.5pt}{\Diamond}{\scalebox{.75}[1]{$-$}}{O}{c}{F}{F}{L}}}
\begin{document}
$\DDiamond$ as created\par
$\Diamond$ is the amssymb version
\end{document}

在此处输入图片描述

如果您希望十字线成为周围有空格的“虚线”,请将.75中的 值降低为\scalebox,例如.6

在此处输入图片描述

仅导入一个MnSymbol

进口只是 \DDiamond来自MnSymbol。因此,它不会破坏 的其他定义amssymb。我已将其声明为,\mathrel但您可以更改它。

我已经设置了方便的宏(在%%%%分隔符之间),用于从 导入内容MnSymbol。一旦设置了这些宏(复制/粘贴到您的序言中),导入过程如下:

\ImportFromMnSymbol{C}
\DeclareMnSymbol{\DDiamond}{\mathrel}{C}{120}
%\MnSymbolGlyphs{C}

\MnSymbolGlyphs{}显示 MnSymbolA、B、C 等的字体表,以子集作为参数。这是如何定位字形的子集和插槽号的。

\ImportFromMnSymbol{}设置从指定MnSymbol子集导入符号。

\DeclareMnSymbol{<macroname>}{<math category>}{<subset>}{<slot>}MnSymbol从给定子集中的指定插槽中抓取。

\documentclass{article}
\usepackage{amssymb}
%%%%
\def\MnSymbolGlyphs#1{% IF ONE NEEDS TO LOCATE GLYPHS
  \usepackage{MnSymbol,fonttable}%
  \AtBeginDocument{\fonttable{MnSymbol#110}}%
}
\def\ImportFromMnSymbol#1{%
  \DeclareFontFamily{U} {MnSymbol#1}{}
  \DeclareFontShape{U}{MnSymbol#1}{m}{n}{
   <-6> MnSymbol#15
   <6-7> MnSymbol#16
   <7-8> MnSymbol#17
   <8-9> MnSymbol#18
   <9-10> MnSymbol#19
   <10-12> MnSymbol#110
   <12-> MnSymbol#112}{}
  \DeclareFontShape{U}{MnSymbol#1}{b}{n}{
   <-6> MnSymbol#1-Bold5
   <6-7> MnSymbol#1-Bold6
   <7-8> MnSymbol#1-Bold7
   <8-9> MnSymbol#1-Bold8
   <9-10> MnSymbol#1-Bold9
   <10-12> MnSymbol#1-Bold10
   <12-> MnSymbol#1-Bold12}{}
  \DeclareSymbolFont{MnSy#1} {U} {MnSymbol#1}{m}{n}
}
\newcommand\DeclareMnSymbol[4]{\DeclareMathSymbol{#1}{#2}{MnSy#3}{#4}}
%%%%
\ImportFromMnSymbol{C}
\DeclareMnSymbol{\DDiamond}{\mathrel}{C}{120}
%\MnSymbolGlyphs{C}
\begin{document}
$\DDiamond$ as imported from MnSymbol\par
$A \DDiamond B\quad\scriptstyle A \DDiamond B\quad\scriptscriptstyle A \DDiamond B$

$\Diamond$ is still the amssymb version
\end{document}

在此处输入图片描述

相关内容