2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки




Начать новую тему Ответить на тему
 
 Выравнивание числителей по общей линии
Сообщение22.02.2015, 01:50 
Аватара пользователя


29/05/11
227
Красноармейск, Донецкая обл.
Изображение
Используется синтаксис LaTeX
\frac{m_t^2}{L_t^2} = \frac{m_x^2}{L_x^2} + \frac{m_y^2}{L_y^2} + \frac{m_z^2}{L_z^2}

$$\frac{m_t^2}{L_t^2} = \frac{m_x^2}{L_x^2} + \frac{m_y^2}{L_y^2} + \frac{m_z^2}{L_z^2}$$

Как сделать так, чтобы все буквы $m$ были выровнены по общей основной линии?

 Профиль  
                  
 
 Re: Выравнивание числителей по общей линии
Сообщение22.02.2015, 01:56 


28/11/11
2884
Можно добавить в нижние индексы фантомные символы $y$.

Используется синтаксис LaTeX
\frac{m_{t\phantom{y}}^2}{L_t^2} = \frac{m_{x\phantom{y}}^2}{L_x^2} + \frac{m_y^2}{L_y^2} + \frac{m_{z\phantom{y}}^2}{L_z^2}


Изображение

 Профиль  
                  
 
 Re: Выравнивание числителей по общей линии
Сообщение22.02.2015, 02:25 
Аватара пользователя


29/05/11
227
Красноармейск, Донецкая обл.
Я думал об этом. При фантомных $y$ вознакает визуальное смещение символов влево, которое не так заметно, как несоблюдение основной линии, но всё же на маленьких (в смысле, компактных) формулах наблюдается. Это можно устранить (не пробовал) использованием обратного смещения этого фантомного символа, но код при этом будет сильно перегружен, а неуместное усложение кода несмысловыми элементами я не приветствую.

Я думал, может, есть какой-то способ автоматизовать выравнивание линий. Порой меня удивляют возможности ТеХа, о которых я, бывший пользователь WYSIWYG редакторов, даже не подозревал.

 Профиль  
                  
 
 Re: Выравнивание числителей по общей линии
Сообщение22.02.2015, 02:29 


28/11/11
2884
Я бы тоже хотел увидеть решение, о котором Вы говорите.

 Профиль  
                  
 
 Re: Выравнивание числителей по общей линии
Сообщение22.02.2015, 02:57 
Заслуженный участник


09/05/13
8904
∞⠀⠀⠀⠀
$$\frac{m_t^2}{L_t^2} = \frac{m_x^2}{L_x^2} + \frac{m_{\smash[b]{y}}^2}{L_y^2} + \frac{m_z^2}{L_z^2}$$
М?

Если что:
Используется синтаксис LaTeX
$$\frac{m_t^2}{L_t^2} = \frac{m_x^2}{L_x^2} + \frac{m_{\smash[b]{y}}^2}{L_y^2} + \frac{m_z^2}{L_z^2}$$

 Профиль  
                  
 
 Re: Выравнивание числителей по общей линии
Сообщение22.02.2015, 03:26 
Заслуженный участник
Аватара пользователя


30/01/06
72407
Mysterious Light в сообщении #981083 писал(а):
Я думал об этом. При фантомных $y$ вознакает визуальное смещение символов влево

Тогда юзайте не \phantom, а \vphantom.

 Профиль  
                  
 
 Re: Выравнивание числителей по общей линии
Сообщение22.02.2015, 03:30 
Заслуженный участник


09/05/13
8904
∞⠀⠀⠀⠀
Это вариант, но он хуже:
Mysterious Light в сообщении #981083 писал(а):
код при этом будет сильно перегружен

Имхо, он может быть оправдан тогда, когда "особенных" слагаемых подавляющее большинство. Здесь же проще исправить одно, чем подгонять все под его особенности.

 Профиль  
                  
 
 Re: Выравнивание числителей по общей линии
Сообщение22.02.2015, 04:37 


28/11/11
2884
Интересные решения. Но они -- то же ручное пиление. Я так понял, что хочется знать автоматическое и универсальное решение. В принципе-то, (я читал, что) ТеХ в конечном счёте какими-то там боксами управляет (нет?). Ну вот: каким-то образом может же быть понятным (компьютеру), что в данном примере числители -- это одного типа боксы, и что, соответственно, управлять ими нужно одинаковым образом?

 Профиль  
                  
 
 Re: Выравнивание числителей по общей линии
Сообщение22.02.2015, 10:17 
Заслуженный участник
Аватара пользователя


30/01/06
72407
longstreet в сообщении #981101 писал(а):
Я так понял, что хочется знать автоматическое и универсальное решение.

Боюсь, такое может быть только очень сложным, в виде большой надстройки над существующим TeX-ом (в лучшем случае, пакет).

 Профиль  
                  
 
 Re: Выравнивание числителей по общей линии
Сообщение22.02.2015, 14:28 
Аватара пользователя


29/05/11
227
Красноармейск, Донецкая обл.
Otta, интересное решение. Наверное его я и будут использовать.

Про \vphantom как-то забыл. Однако, как отметил longstreet, в такое решение также будет многословным и с виду костыльным.

longstreet в сообщении #981101 писал(а):
Ну вот: каким-то образом может же быть понятным (компьютеру), что в данном примере числители — это одного типа боксы, и что, соответственно, управлять ими нужно одинаковым образом?
Точная постановка того, что меня интересовало.

 Профиль  
                  
 
 Re: Выравнивание числителей по общей линии
Сообщение22.02.2015, 16:52 


28/11/11
2884
Munin в сообщении #981125 писал(а):
Боюсь, такое может быть только очень сложным, в виде большой надстройки над существующим TeX-ом (в лучшем случае, пакет).

Да? А я-то считал, что это где-то внутри идеологии ТеХ-а :|

 Профиль  
                  
 
 Re: Выравнивание числителей по общей линии
Сообщение22.02.2015, 20:45 
Заслуженный участник
Аватара пользователя


30/01/06
72407
Внутри идеологии TeX-а - иерархическое построение формулы из кучи вложенных боксов. Которые собираются между собой вертикально и горизонтально, когда как. И при таком построении, между боксами числителей разных дробей нет уже никакой связи. Чтобы её создать, надо наворотить что-то искусственное.

Почитайте Кнута, ВсёпроTeX.

 Профиль  
                  
 
 Re: Выравнивание числителей по общей линии
Сообщение23.02.2015, 01:15 


13/07/14
257
Может быть натолкнет на другие варианты реализации желаемого:
http://tex.stackexchange.com/questions/70527/less-vertical-space-in-frac
http://tex.stackexchange.com/questions/120976/a-special-fraction-macro-with-raised-fraction-bar
http://tex.stackexchange.com/questions/133527/equal-size-numerator-and-denominator
http://tug.org/TUGboat/tb27-1/tb86jackowski.pdf

 Профиль  
                  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 13 ] 

Модераторы: Karan, Toucan, PAV, maxal, Супермодераторы



Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group