2014 dxdy logo

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

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




 
 Куда посылает \eqref
Сообщение19.05.2024, 13:27 
Аватара пользователя
Давно страдаю проблемой. Команда \eqref , бывает, выполняется не так, как я хочу.
С подключённым пакетом hyperref она посылает читателя к формуле. Дело в том, что она посылает к конкретному месту в формуле. Меня это не устраивает. Вот пример. В формуле интеграл с габаритным верхним пределом.
Код:
\documentclass[10pt,a4paper]{article}
\usepackage[russian]{babel}
\usepackage[utf8]{inputenc}
\usepackage{amsmath}
\usepackage{amsfonts}
\usepackage{amssymb}
\usepackage{hyperref}
\hypersetup{colorlinks,allcolors=blue}
\begin{document}
Текст
\begin{equation}
\label{eq1}
\int_0^{\frac {\sin \beta}{2}}f(x)dx)
%\label{eq12}qqq}
\end{equation}
ещё текст. Надавливаем на синий номер формулы \eqref{eq1} в pdf-документе. В результате не видим куска верхнего предела интеграла.
\end{document}

В результате после надавливания на номер формулы в pdf-документе мы перемещаемся к формуле, но не видим куска верхнего предела интеграла.
Это нормальное явление?
Кажный раз пытаюсь решить эту проблему по-новому. Иногда удаётся. Но к следующему разу уже забываю, как решил... В литературе ничего на этот счет пока не нашёл, нету.

 
 
 
 Re: Куда посылает \eqref
Сообщение06.06.2024, 11:01 
Аватара пользователя
Самое простое решение, которое иногда возможно, это вместо equation писать align. Конечно, там, где это приемлемо. align захватывает формулу немного выше. Иногда этого достаточно.
Ещё один способ состоит в том, что содержимое формулы берётся в \mbox. Либо применяется неотображаемая рамочка. Всё, что в рамочке, положено отображать. Так у них задумано. Только кое-какие знаки в рамочке выглядят не так, как без рамочки. Например, тот же знак интеграла.
Даю также радикальный способ, в котором смещение можно сделать, каким угодно.
Следует сверху к формуле прилепить фантомную формулу со звёздочкой. Скрепить эти формулы на всякий случай c помощью \noindent. В формуле со звёздочкой поставить метку. Старую метку удалять не следует . Сама ссылка записывается иначе. Требуется два прохода.
код: [ скачать ] [ спрятать ]
Используется синтаксис LaTeX
\documentclass[10pt,a4paper]{article}
\usepackage[russian]{babel}
\usepackage[utf8]{inputenc}
\usepackage{amsmath}
\usepackage{amsfonts}
\usepackage{amssymb}
\usepackage{hyperref}
\hypersetup{colorlinks,allcolors=blue}
\begin{document}
Текст
\vspace{0.05cm}
\begin{equation*}\vspace{-0.7cm}
\phantomsection
\label{eq1v}\phantom{qq}
\end{equation*}\noindent
\begin{equation}
\label{eq1}
\int_0^{\frac {\sin \beta}{2}}f(x)dx  
%\label{eq12}qqq}
\end{equation}
ещё текст. Надавливаем на синий номер формулы (\hyperref[eq1v]{\ref*{eq1}}) в pdf-документе. В результате видим всю формулу полностью.
\end{document}
 

 
 
 [ Сообщений: 2 ] 


Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group