응용 프로그램 지역화

Flash Player 9 이상, Adobe AIR 1.0 이상

지역화는 여러 로캘을 지원하기 위한 에셋을 포함하는 프로세스입니다. 로캘은 언어 및 국가 코드의 조합입니다. 예를 들어 en_US는 미국에서 사용되는 영어를 나타내고 fr_FR은 프랑스에서 사용되는 프랑스어를 나타냅니다. 이러한 로캘용으로 응용 프로그램을 지역화하려면 en_US 로캘용과 fr_FR 로캘용의 두 에셋 세트를 제공합니다.

로캘 간에 언어를 공유할 수 있습니다. 예를 들어 en_US 및 en_GB(영국)는 다른 로캘입니다. 이 경우 두 로캘은 모두 영어를 사용하지만 국가 코드는 이 둘이 서로 다른 로캘이고 따라서 다른 에셋을 사용할 수 있음을 나타냅니다. 예를 들어 en_US 로캘의 "color"라는 단어가 en_GB 로캘에서는 "colour"입니다. 또한 통화 단위가 로캘에 따라 달러 또는 파운드로 표시되고 날짜 및 시간 서식도 다를 수 있습니다.

국가 코드를 지정하지 않고 언어에 대한 에셋 세트를 제공할 수도 있습니다. 예를 들어 영어용 에셋을 제공하고 영어(미국)에 한정된 en_US 로캘용 추가 에셋을 제공할 수 있습니다.

지역화는 단순히 응용 프로그램에서 사용되는 문자열을 번역하는 것만을 의미하지 않습니다. 오디오 파일, 이미지 및 비디오를 비롯한 모든 유형의 에셋이 포함될 수도 있습니다.

로캘 선택

내용 또는 응용 프로그램에서 사용할 로캘을 결정하려면 다음 방법 중 하나를 사용할 수 있습니다.

  • flash.globalization 패키지 - 운영 체제 및 사용자 기본 설정에 따라 기본 로캘을 검색하려면 flash.globalization 패키지의 로캘 인식 클래스를 사용합니다. Flash Player 10.1 이상 또는 AIR 2.0 이상 런타임에서 실행되는 응용 프로그램의 경우 이 방법이 권장됩니다. 자세한 내용은 로캘 결정을 참조하십시오.

  • 사용자 프롬프트 - 응용 프로그램을 기본 로캘로 시작한 다음 사용자에게 원하는 기본 로캘을 선택하게 할 수 있습니다.

  • (AIR에만 해당)Capabilities.languages - Capabilities.languages 속성은 운영 체제를 통해 설정된 사용자의 기본 언어에서 사용할 수 있는 언어의 배열을 나열합니다. 이 문자열에는 RFC4646 (http://www.ietf.org/rfc/rfc4646.txt)에 정의된 언어 태그 및 해당되는 경우 스크립트 및 지역 정보가 포함됩니다. 이 문자열에서는 하이픈을 구분 기호로 사용합니다(예: "en-US" 또는 "ja-JP"). 반환된 배열의 첫 번째 항목은 language 속성과 기본 언어 ID가 동일합니다. 예를 들어 languages[0]"en-US"로 설정하면 language 속성이 "en"으로 설정됩니다. 그러나 language 속성을 알 수 없는 언어를 지정하는 "xu"로 설정하면 languages 배열의 첫 번째 요소가 달라집니다.

  • Capabilities.language - Capabilities.language 속성은 운영 체제의 사용자 인터페이스 언어 코드를 제공합니다. 그러나 이 속성은 20개의 알려진 언어로 제한됩니다. 그리고 영어 시스템에서 이 속성은 국가 코드가 아닌 언어 코드만 반환합니다. 따라서 Capabilities.languages 배열의 첫 번째 요소를 사용하는 것이 좋습니다.

Flex 내용 지역화

Adobe Flex에는 Flex 내용을 지역화하기 위한 프레임워크가 포함되어 있습니다. 이 프레임워크에는 Locale, ResourceBundle 및 ResourceManagerImpl 클래스뿐 아니라 IResourceBundle 및 IResourceManagerImpl 인터페이스가 포함되어 있습니다.

응용 프로그램 로캘 정렬용 유틸리티 클래스가 포함되어 있는 Flex 지역화 라이브러리는 Google 코드(http://code.google.com/p/as3localelib/)에서 제공됩니다.

Flash 내용 지역화

Adobe Flash Professional에는 ActionScript 3.0 구성 요소에 Locale 클래스가 포함되어 있습니다. Locale 클래스를 사용하면 SWF 파일에서 다국어 텍스트를 표시하는 방법을 제어할 수 있습니다. Flash [문자열] 패널에서는 동적 텍스트 필드에 문자열 리터럴 대신 문자열 ID를 사용할 수 있습니다. 따라서 언어별 XML 파일에서 로드된 텍스트를 표시하는 SWF 파일을 만들 수 있습니다. Locale 클래스 사용에 대한 자세한 내용은 Adobe Flash 플랫폼용 Adobe ActionScript 3.0 참조 설명서를 참조하십시오.

AIR 응용 프로그램 지역화

AIR SDK에서는 AIRLocalizer.js 파일에 포함된 HTML Localization Framework를 제공합니다. 이 프레임워크에는 HTML 기반 응용 프로그램에서 여러 로캘을 사용하여 작업하는 데 도움이 되는 API가 포함되어 있습니다. 로캘 정렬용 ActionScript 라이브러리는 http://code.google.com/p/as3localelib/에서 제공됩니다.

날짜, 시간 및 통화 지역화

응용 프로그램에서 날짜, 시간 및 통화를 표시하는 방법은 로캘마다 크게 다릅니다. 예를 들어 날짜를 나타내는 미국 표준은 월/일/년인 반면 유럽 표준은 일/월/년입니다.

코드를 작성하여 날짜, 시간 및 통화의 서식을 지정할 수 있습니다. 예를 들어 다음 코드에서는 Date 객체를 월/일/년 형식이나 일/월/년 서식으로 변환합니다. 로캘을 나타내는 locale 변수가 "en_US"로 설정된 경우 이 함수는 월/일/년 서식을 반환합니다. 다음 예제에서는 다른 모든 로캘에 대해 Date 객체를 일/월/년 서식으로 변환합니다.

function convertDate(date) 
{ 
    if (locale == "en_US") 
    { 
        return (date.getMonth() + 1) + "/" + date.getDate() + "/" + date.getFullYear(); 
    } 
    else 
    { 
        return date.getDate() + "/" + (date.getMonth() + 1) + "/" + date.getFullYear(); 
    } 
}

Adobe Flex

Flex 프레임워크에는 날짜, 시간 및 통화의 서식을 지정하는 컨트롤이 포함되어 있습니다. DateFormatter 및 CurrencyFormatter 컨트롤을 예로 들 수 있습니다.