Я не уверен, как это сделать конкретно в .NET, но решение состоит в том, чтобы сохранить текст в базе данных и выбрать язык, который будет генерироваться на странице (в идеале, с помощью URL (например, / en) или настройки cookie). ). Любые ресурсы могут храниться в папках «en» и «es», которые должны использовать ту же логику для выбора. Тогда, пока вы последовательны, ваши переводчики / графика могут просто смотреть на необработанные, непереведенные файлы, переводить, помещать в правильную папку / базу данных и альт.
Можно обрабатывать любое количество языков, что в будущем будет легко расширяться, и оно может даже обрабатывать большинство языковых макетов, если вы сделаете то же самое с вашими файлами CSS. Вы должны использовать CSS для выполнения всех макетов / стилей в любом случае, частично по таким причинам.
Независимо от того, что вам нужно больше, чем один из каждого вида данных для конкретного языка, так что вам лучше использовать как можно больше текста, чтобы ваши графические люди не должны были выполнять двойные обязанности в дополнение к переводчики. Использование CSS для размещения текста над изображением позволяет использовать одно изображение для любого количества языков, и вы можете делать довольно впечатляющие вещи, просто используя CSS-стилизацию текста. Если вы хотите получить хитрость и не хотите ломать сайт для старых браузеров, подумайте о рендеринге с помощью <canvas>
. Просто вставьте текст и определение для конкретного языка с помощью Javascript.
Между тем, существует множество виджетов веб-сайтов для автоматического перевода, хотя они, очевидно, не касаются изображений (еще одна причина придерживаться текста везде, где это возможно: любой, кто использует инструмент перевода, сможет его прочитать). Я лично фанат Google: http://translate.google.com/translate_tools
Никто не идеален, но лучше, чем ничего.