Интернационализация (i18n) для лицевых образов. Является ли это возможным? - PullRequest
2 голосов
/ 05 декабря 2011

Можно ли интернационализировать изображения личинок?Если так, то как?Я делаю папку для пакетов, как для пакетов сообщений?Как его настроить в файле facelets-config.xml (при условии, что это возможно).Я также готов попробовать ледяные лица, тринидад, богатые лица при условии, что любой из них сделает эту функцию доступной.Хотя я очень не уверен, какой из них лучше всего использовать.Я использую Maven с репозиториями Nexus и JBoss, чтобы найти все необходимые плагины (я надеюсь).

1 Ответ

4 голосов
/ 05 декабря 2011

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

<h:graphicImage name="images/#{localeManager.language}/foo.png" />

(что предполагает, например, images/en/foo.png, images/sp/foo.png и т. Д.)

или

<h:graphicImage name="images/foo_#{localeManager.language}.png" />

(что предполагает, например, images/foo_en.png, images/foo_sp.png и т. Д.)

Или, если вам необязательно иметь отдельное изображение для каждой локали и, следовательно, необходимо иметь запасное изображение для локали, у которой нет отдельного изображения, тогда проще всего будет указать путь к изображению / имя файла в самом файле локализованного пакета:

например. комплект по умолчанию:

images.foo = foo.png

и специфичный для локали пакет с изображением:

images.foo = sp/foo.png 
# or foo_sp.png

и ссылаться на них следующим образом

<h:graphicImage name="images/#{bundle['images.foo']}" />
...