Насколько важно зеркалирование пользовательского интерфейса _entire_ для говорящих на арабском языке? - PullRequest
8 голосов
/ 23 июня 2009

Я исследовал вопрос о добавлении арабской локализации в наше программное обеспечение. Я понимаю, что зеркальное отображение некоторых элементов управления имеет важное значение, например взаимосвязь меток и текстовых полей: любые метки, расположенные слева от текстовых полей на языках слева направо, должны быть справа от текстовых полей на арабском языке и других справа. левые языки. Но я не могу найти однозначного ответа о том, должна ли зеркально отображаться вся схема графического интерфейса пользователя.

Например, в нашем программном обеспечении у нас есть панель с картой слева от окна и дополнительной информацией на панели справа. Следует ли поменять местами эти панели для языков справа налево?

Основная причина, по которой я спрашиваю, заключается в том, что Microsoft Windows идет по пути зеркального отображения всего, когда на арабском языке, но я только что заметил в новой поддержке арабского языка в iPhone OS 3.0, практически ничего не отражается, не даже примеры меток-текстовых полей. Я бы подумал, что это довольно плохо со стороны Apple, но широко ли это принято в арабском мире?

Ответы [ 3 ]

9 голосов
/ 29 июня 2009

На арабском языке мы читаем и сканируем графические элементы справа налево

Вам нужно будет перевернуть весь экран по горизонтали, за исключением изображений и текста (библиотека BiDi - обычно в ОС - обрабатывает это). Вы только переворачиваете местоположения элемента управления.

Элемент управления, ограниченный (x1, y1, x2, y2) на экране aw * h, становится (w-x2, y1, w-x1, y2), содержимое прямоугольника не должно быть перевернуто, только положение , Он сохранит свои размеры.

Например, сравните новости Google на английском и арабском ... обратите внимание на меню, изображения, новости.

Обычно допустимо одно исключение, медиаплееры по-прежнему слева направо по историческим причинам (магнитофоны, видеоустройства VHS никогда не были локализованы).

2 голосов
/ 23 июня 2009

Это важно. Представьте, что вы используете какое-то программное обеспечение, написанное на арабском языке, которое было переведено на английский, и некоторые вещи были перевернуты неправильно.

В целом, Windows (в частности, Vista и WIn7) и Office очень хорошо переведены на языки чтения справа налево. Вы можете использовать это как пример того, что делать - это особенно верно для элементов пользовательского интерфейса верхнего уровня

Я бы согласился, что чисто графические элементы, возможно, не нужно переворачивать, но вы должны подумать о том, чтобы поступать правильно для всего, что обычно сканируется в порядке чтения.

0 голосов
/ 17 января 2017

Зеркальное отображение чрезвычайно важно не только потому, что текст будет отображаться правильно, но и из-за «ментальной модели» пользователя.

Когда язык написан справа налево, все ожидания пользователя смещаются, но еще более интересным является изменение терминологии. То, что мы обычно называем позиционированием «влево» и «вправо», фактически заканчивается «началом» и «концом» (или «до» и «после»), что делает отражение интерфейса немного более сложным.

Кроме того, у вас будут элементы, которые не должны отражаться. Есть несколько примеров в программном обеспечении, которое без разбора отображает все кнопки и создает веселые (ужасные ...) результаты. Несколько примеров:

  • Кнопки «Отменить» и «Повторить» : Отмена означает «вернуться назад»; на английском языке (LTR) это означает «идти налево», но на арабском или иврите это означает «право направо», поэтому кнопка переворачивается, и то же самое происходит с кнопкой повтора. Однако в RTL порядок этих двух кнопок также перевернут, что означает, что вы «дважды перевернули» их представление, что, по сути, дает вам пару кнопок в RTL, которые выглядят точно такая же, как пара в LTR, за исключением разных значений. Это может привести к путанице в реализации.
  • Значок зеркалирования # 1 (списки) : В большинстве случаев значки обычно зеркально отражаются. Например, значок, представляющий список маркеров, будет обозначен слева от маркера для LTR и маркером справа для RTL. Большинство программ "просто" отражают это, что вполне разумно. Однако есть несколько программ (к сожалению, OpenOffice), которые также отражают нумерованный список. Это создает ситуацию, когда сами цифры переворачиваются (поэтому цифра 2 на этом значке выглядит как 5).
  • Значок зеркалирования # 2 (знак вопроса) : Другим примером является кнопка «Справка», которая обычно обозначается знаком вопроса. Это еще более сложно, потому что это отличается для нескольких языков RTL. Некоторые языки RTL, например арабский, отображают знак вопроса в обратном порядке (؟), но другие, например иврит, отображают его так же, как английский (?). Это зеркалирование зависит от языка, а не только от RTL / LTR.

Еще одной проблемой является наличие программного обеспечения со смешанным контентом. Например, если ваше программное обеспечение отображает некоторый установленный контент, но позволяет пользователю изменять язык интерфейса, вы можете столкнуться с интересными проблемами, которые могут возникнуть при перевороте.

Если у вас есть какое-то программное обеспечение, которое позволяет вам читать RSS-каналы, например, контент может постоянно быть LTR, но если ваш пользователь переключает свой интерфейс на RTL, тогда некоторые элементы интерфейса должны отражаться, а другие - нет. «т. Например, если мы перейдем к приведенным выше примерам с иконками, то «списки маркеров» в этом случае не должны отображаться, потому что, хотя интерфейс имеет RTL, фактический контент, который вы вставляете, является ожидаемым LTR, так что маркер практически остается Точно, и пуля представляет это.

Проблема в этих случаях состоит в том, чтобы решить, какая часть вашего программного обеспечения является «контентом», а какая «интерфейсом», и хотя это выполнимо, это трудная задача.

Подводя итог: зеркальное отображение интерфейсов не так просто, как кажется, и много раз действительно зависит от цели и контекста вашего программного обеспечения. Я бы сказал, что это чрезвычайно важно, потому что ментальная модель пользователей RTL (с точки зрения того, где вещи «начинаются» и «заканчиваются») обратна, и точно так же, как глаза пользователей LTR автоматически обращаются к верхнему левому углу (именно поэтому логотипы обычно размещаются там). Глаза пользователей RTL обычно автоматически обращаются к верхнему правому углу - и ваш интерфейс должен это учитывать. Тем не менее, вы должны проанализировать ваш интерфейс и то, как ваш контент и интерфейс отображаются в целом, и остерегаться случаев, когда переключение / зеркалирование на самом деле не подходит.

Надеюсь, это поможет.

...