В ЛАТЕКСНОМ документе я пишу, я получаю переполненное предупреждение hbox из-за "мультидисциплинарного" слова, который, оказывается, представляется в конце строки.
Я могу избавиться от этого конкретного предупреждения путем изменения его в multi-discipli\-nary
, но та же проблема произойдет в другом месте, так как это слово используется много в газете.
Я хотел бы использовать \hyphenation{}
команда вместо этого, но очевидно мое предварительное \hyphenation{multi-disci-pli-na-ry}
не работает, потому что это не понимает первого тире правильно.
Какое колдовство я должен получить корректное добавление отступа, одним словом, которое уже содержит тире?
Вопрос о премии: Где я, возможно, нашел ответ на тот вопрос сам?
Из https: // texfaq.org / FAQ-nohyph :
TeX не переносит слово, которое уже было перенесено. Например, (карикатурная) английская фамилия Смит-Постлтуэйт не будет содержать дефис, что может вызвать проблемы. Это правильный английский стиль набора (он может быть неправильным для других языков), но если необходимо, вы можете заменить дефис в имени на
\ hyph
Команда , определенная\ def \ hyph {- \ штраф0 \ hskip0pt \ relax}
Это не то, что обычно рекомендуется в этом FAQ … Пакет
hyphenat
определяет набор таких команд (для введения точек переноса в различных знаках пунктуации).
Или вы можете \ newcommand
команду, которая расширяется до multi-schemeli \ -nary
(используйте Search + Replace All, чтобы заменить существующие слова).
Глядя на второй пример того, как он работает, кажется, что если замок не был приобретен, вы собираетесь выйти, пропустив важную часть вашего кода.
Подход Mutex гораздо проще понять, и у меня не было никаких проблем с производительностью.
-121--4746342-Для этого необходимо использовать плотность экрана.
Context.getResources().getDisplayMetrics().density
Согласно документации
-121--1100069-Логическая плотность дисплея. Это коэффициент масштабирования для модуля DIP, где один DIP - один пиксель на экране приблизительно 160 dpi (например, экран 240x320, 1,5 «x2»), обеспечивающий базовую линию дисплея системы. Таким образом, на экране 160dpi это значение плотности будет равно 1; на экране 120 dpi будет 0,75; и т.д.
Это значение в точности не соответствует реальному размеру экрана (в соответствии с xdpi и ydpi), а используется для масштабирования всего пользовательского интерфейса по шагам на основе грубых изменений в dpi дисплея. Например, экран 240x320 будет иметь плотность 1, даже если его ширина равна 1,8, «1,3» и т.д. Однако если разрешение экрана увеличивается до 320x480, но размер экрана остается 1,5 «x2», то плотность будет увеличена (вероятно, до 1,5).
Я ответил здесь на нечто подобное: LaTeX разбивает слишком много слов
Я сказал:
вы должны установить штраф за расстановку переносов где-то в вашей преамбуле:
\hyphenpenalty=750
Значение 750 подходило моим потребностям для размещения двух столбцов на бумаге (8,5x11 в) Настройте значение в соответствии с вашими потребностями. Чем больше число, тем меньше расстановки переносов. Вы также можете посмотреть на пакет расстановки переносов, он предоставляет немного больше, чем просто штраф за расстановку переносов
Чтобы избежать переноса в слове, уже написанном через дефис, я использовал неразрывный пробел ~
в сочетании с обратным пробелом \!
. Например, команда
3~\!\!\!\!-~\!\!\!D
, используемая в тексте, подавляет расстановку переносов в слове 3-D. Наверное, не лучшее решение, но у меня оно сработало!