Как создать стиль отображения дробей в тексте

Как создать стиль отображения дробей в тексте

Как создать стиль отображения дробей впростой текст?

Я знаю, что обычный текст используется \over, например, для дробей {1}\over{2}.

Но как сделать displaystyle дроби? Я пробовал использовать \displaystyle, но ничего не отрисовывалось, кроме какой-то неузнаваемой фигни.

Примечание. Я намеревался разобраться с математическими формулами Манима.

решение1

По моему мнению, дробная запись — самый неудачный выбор Кнута при проектировании TeX.

Команда \overпринимаетнетаргумент вообще и ваш {1}\over{2}синтаксис не имеет никаких преимуществ: попробуйте

$$3+{1}\over{2}$$

и сами убедитесь, что результат не такой, как вы могли подумать. Синтаксис \overдля

{<numerator> \over <denominator>}

и брекетыобязательныйесли только дробь не является единственным объектом в математической формуле. Таким образом

the fraction $1\over 2$ represents a half

нормально, но

the expression $1+1\over2$ represents three halves

неверно либо в формуле, либо в тексте.

Как нам подать заявку \displaystyle? Конечно, не с

{\displaystyle 1\over 2}

поскольку это будет применяться только \displaystyleк числителю.

Следующая попытка будет

\displaystyle{1\over 2}

но, конечно, это применит этот стиль ко всему последующему.

Чтобы применить стиль только к дроби, выполните

{\displaystyle{1\over2}}

Можете ли вы определить сокращение, например \dover? Нет. Невозможно определить команды, которые ведут себя как \over, \atop, \aboveи связанные с ними \...withdelimsвариации.

Сделайте себе одолжение и выпустите

\def\frac#1#2{{\begingroup#1\endgroup\over#2}}
\def\dfrac#1#2{{\displaystyle\frac{#1}{#2}}}

так что вы можете напечатать

\frac{1}{2}

и легко модифицировать его в

\dfrac{1}{2}

если возникнет такая необходимость.

Почему \begingroup...\endgroup? Потому что назначения, выполненные в числителе, могут (и будут) просачиваться в знаменатель.

решение2

Ваш пример использования \overплохой, правильный пример — {1\over2+3}или, если дробь — это один объект в математическом режиме, то вы можете опустить скобки и написать $1\over2+3$. В режиме отображения \overсоздает отображаемую дробь. В текстовом режиме вы можете написать $\displaystyle{1\over2+3}$. Если вы пишете только , $\displaystyle 1\over 2+3$то только числитель находится в стиле отображения, потому что каждая часть дроби устанавливает свой собственный математический стиль. Вы можете прочитатьНабор математики в OpTeX, особенно раздел 1.4.

решение3

Я предлагаю вам использовать {\displaystyle {1 \over 2}}while в режиме встроенной математики. И наоборот, если вам нужно создать текстовую дробь в режиме отображения математики, я предлагаю вам использовать {\textstyle {1 \over 2}}.

введите описание изображения здесь

%% inline-style math mode is the default:
\centerline{%
  $1 \quad {1 \over 2} \quad {\displaystyle {1 \over 2}} \quad 2$}

%% display-style math mode is the default:
$$ 1 \quad {1 \over 2} \quad {\textstyle {1 \over 2}}    \quad 2$$

\bye

Обратите внимание, что и то, \textstyleи \displaystyleдругоепереключениекоманды и не принимают явный аргумент. Это означает, что их область действия простирается до конца текущей группы TeX. Следовательно, следует писать {\textstyle {1 \over 2}}вместо \textstyle{{1 \over 2}}.

Связанный контент