양방향 언어용 응용 프로그램 만들기Creating applications in bi-directional languages

Visual Studio를 사용하여 아랍어 및 히브리어와 같이 오른쪽에서 왼쪽으로 기록되는 언어로 텍스트를 제대로 표시하는 응용 프로그램을 만들 수 있습니다.You can use Visual Studio to create applications that correctly display text in languages written right-to-left, including Arabic and Hebrew. 일부 기능의 경우 속성만 설정하면 됩니다.For some features, you can simply set properties. 기타 경우에는 기능을 코드로 구현해야 합니다.In other cases, you must implement features in code.

참고

양방향 언어를 입력 및 표시하려면 적절한 언어로 구성된 Windows 버전을 사용해야 합니다.In order to enter and display bi-directional languages, you must be working with a version of Windows that is configured with the appropriate language. 적절한 언어 팩이 설치된 Windows 영어 버전 또는 적절히 지역화된 Windows 버전 중 하나일 수 있습니다.This can either be an English version of Windows with the appropriate language pack installed, or the appropriately localized version of Windows.

양방향 언어를 지원하는 응용 프로그램 형식Types of application that support bi-directional languages

  • Windows 응용 프로그램.Windows applications. 양방향 텍스트, 오른쪽에서 왼쪽 읽기 순서 및 미러링(창 레이아웃, 메뉴, 대화 상자 등 반전)에 대한 지원이 포함된 완전 양방향 응용 프로그램을 만들 수 있습니다.You can create fully bi-directional applications that include support for bi-directional text, right-to-left reading order, and mirroring (reversing the layout of windows, menus, dialog boxes, and so on). 미러링을 제외하고 이러한 기능은 기본적으로 또는 속성 설정으로 사용할 수 있습니다.Except for mirroring, these features are available by default or as property settings. 미러링은 메시지 상자와 같은 일부 기능에만 기본적으로 지원됩니다.Mirroring is supported inherently for some features, such as message boxes. 다른 경우에는 미러링을 코드로 구현해야 합니다.However, in other cases you must implement mirroring in code. 자세한 내용은 Windows Forms 응용 프로그램에 대한 양방향 지원을 참조하세요.For more information, see Bi-directional support for Windows Forms applications.

  • 웹 응용 프로그램.Web applications. 웹 서비스는 양방향 언어가 포함된 응용 프로그램에 적합해지도록 UTF-8 및 유니코드 텍스트의 수신/전송을 지원합니다.Web services support and receiving sending UTF-8 and Unicode text, making them suitable for applications involving bi-directional languages. 웹 클라이언트 응용 프로그램은 브라우저를 기반으로 사용자 인터페이스를 제공하므로 웹 응용 프로그램의 양방향 지원 정도는 사용자의 브라우저가 이 양방향 기능을 얼마나 잘 지원하는지에 따라 달라집니다.Web client applications rely on browsers for their user interface, so the degree of bi-directional support in a Web application is dependent on how well the user's browser supports those bi-directional features. Visual Studio에서는 아랍어 및 히브리어 텍스트, 오른쪽에서 왼쪽 읽기 순서, 파일 인코딩 및 로컬 문화권 설정에 대한 지원을 사용하여 응용 프로그램을 만들 수 있습니다.In Visual Studio, you can create applications with support for Arabic or Hebrew text, right-to-left reading order, file encoding, and local culture settings. 자세한 내용은 ASP.NET 웹 응용 프로그램을 위한 양방향 지원을 참조하세요.For more information, see Bidirectional support for ASP.NET web applications.

  • 콘솔 응용 프로그램.Console applications. 콘솔 응용 프로그램에 양방향 언어에 대한 텍스트 지원은 포함되지 않습니다.Console applications do not include text support for bi-directional languages. 이는 Windows가 콘솔 응용 프로그램과 작동하는 방식 때문입니다.This is a consequence of how Windows works with console applications.

완벽하게 지원되지 않는 Visual Studio 기능Visual Studio features that are fully supported

Visual Studio에서 디자인 타임에 양방향 언어를 다음과 같은 방식으로 사용할 수 있습니다.At design time in Visual Studio, you can use bi-directional languages in these ways:

  • 텍스트 입력 Visual Studio는 유니코드를 지원하므로 시스템이 적절한 로캘 및 입력 언어로 설정되면 아랍어 또는 히브리어로 텍스트를 입력할 수 있습니다.Text entry Visual Studio supports Unicode, so if your system is set to the appropriate locale and input language, you can enter text in Arabic or Hebrew. 아랍어 지원에는 Kashida 및 분음 부호가 포함됩니다.(Arabic support includes Kashida and Diacritics.)

  • 개체 이름 양방향 언어를 사용하여 솔루션, 프로젝트, 파일, 폴더 등에 이름을 할당할 수 있습니다.Object names You can use bi-directional languages to assign names to solutions, projects, files, folders, and so on. 코드에서 변수, 클래스, 개체, 특성, 메타데이터 및 기타 요소의 이름에 양방향 언어를 사용할 수 있습니다.In code, you can use bi-directional languages for the names of variables, classes, object, attributes, metadata, and other elements.

  • 파일 인코딩 언어별 또는 유니코드 인코딩을 사용하여 파일을 저장하고 열 수 있습니다.File encoding You can save and open files with a language-specific or Unicode encoding. 자세한 내용은 방법: 인코딩을 사용하여 파일 저장 및 열기를 참조하세요.For more information, see How to: Save and open files with encoding.

지원이 제한되거나 없는 기능Features with limited or no support

양방향 언어 응용 프로그램에 공통적인 기타 기능은 Visual Studio에서 완벽하게 지원되지 않거나 경우에 따라 전혀 지원되지 않습니다.Other features common to bi-directional language applications are not fully supported in Visual Studio, or in some cases, not at all. 여기에는 다음이 포함됩니다.These include:

오른쪽에서 왼쪽 읽기 순서 기본적으로 Visual Studio에서 사용하는 텍스트 입력 컨트롤에는 왼쪽에서 오른쪽 읽기 순서가 사용됩니다.Right-to-left reading order By default, text-entry controls you use in Visual Studio use left-to-right reading order. 대부분의 경우 표준 Windows 제스처를 사용하여 읽기 순서를 전환할 수 있습니다.In most cases, you can use standard Windows gestures to switch reading order. 예를 들어 Ctrl+오른쪽 Shift를 눌러 속성 값에 대한 오른쪽에서 왼쪽 읽기 순서를 지원하도록 속성 창을 전환할 수 있습니다.For example, you can press Ctrl+RightShift to switch the Properties window to support right-to-left reading order for property values.

그러나 Visual Studio에서는 오른쪽에서 왼쪽 읽기 순서가 지원되지 않습니다.However, right-to-left reading order is not supported everywhere in Visual Studio. 다음과 같은 예외가 있습니다.Exceptions include:

  • Visual Studio 대화 상자의 확인란, 드롭다운 목록 및 기타 컨트롤에는 항상 왼쪽에서 오른쪽 읽기 순서가 사용됩니다.Check boxes, drop-down lists, and other controls in Visual Studio dialog boxes always use left-to-right reading order.

  • 코드 편집기(및 텍스트 편집기)는 오른쪽에서 왼쪽 읽기 순서를 지원하지 않습니다.The code editor (and text editor) does not support right-to-left reading order. 양방향 언어로 텍스트를 입력할 수 있지만 읽기 순서는 항상 왼쪽에서 오른쪽입니다.You can enter text in a bi-directional language, but the reading order is always left-to-right.

아랍어 또는 히브리어 텍스트를 사용하여 이름 지정Naming things using Arabic or Hebrew text

아랍어 또는 히브리어 텍스트를 사용하여 폴더, 변수 또는 기타 개체에 이름을 할당할 수 있습니다.You can use Arabic or Hebrew text to assign names to folders, variables, or other objects. 아랍어를 사용할 경우 Kashida 및 분음 부호를 비롯한 아랍어 문자를 사용할 수 있습니다.When working with Arabic, you can use any Arabic characters including Kashida and Diacritics.

다음 요소는 아랍어 또는 히브리어를 사용하여 이름을 지정할 수 있고 Visual Studio에서 직접 처리됩니다.The following elements can be named using Arabic or Hebrew and will be handled correctly in Visual Studio:

  • 프로젝트 경로에 포함하는 폴더를 비롯한 솔루션, 프로젝트 및 파일 이름.Solution, project, and file names, including any folders you include in the project path. 솔루션 탐색기에는 솔루션 및 요소 이름이 제대로 표시됩니다.Solution Explorer will display solution and element names correctly.

  • 파일 콘텐츠.File contents. 유니코드 인코딩 또는 선택된 코드 페이지를 사용하여 파일을 열거나 저장할 수 있습니다.You can open or save files with Unicode encoding or with a selected code page.

    참고

    코드 편집기는 특별한 경우입니다.The code editor is a special case. 자세한 내용은 아래 내용을 참조하세요.For details, see below.

  • 데이터 요소.Data elements. 서버 탐색기에는 이러한 요소가 제대로 표시되고 이를 통해 요소를 편집할 수 있습니다.Server Explorer will display these elements correctly and allow you to edit them.

  • Windows 클립보드에 복사된 요소.Elements copied to the Windows Clipboard.

  • 특성 및 메타데이터.Attributes and metadata.

  • 속성 값.Property values. 속성 창에서 아랍어 또는 히브리어 텍스트를 사용할 수 있습니다.You can use Arabic or Hebrew text in the Properties window. 이 창에서 표준 Windows 키 입력(오른쪽에서 왼쪽의 경우 Ctrl+오른쪽 Shift, 왼쪽에서 오른쪽의 경우 Ctrl+왼쪽 Shift)을 사용하여 오른쪽에서 왼쪽 순서와 왼쪽에서 오른쪽 순서 간에 전환할 수 있습니다.The window allows you to switch between right-to-left and left-to-right reading order using standard Windows keystrokes (Ctrl+RightShift for right-to-left, and Ctrl+LeftShift for left-to-right).

  • 코드 및 리터럴 텍스트.Code and literal text. 코드 편집기(텍스트 편집기라고도 함)에서 아랍어 또는 히브리어를 사용하여 클래스, 함수, 변수, 속성, 문자열, 리터럴, 특성 등의 이름을 지정할 수 있습니다.In the code editor (which is also the text editor), you can use Arabic or Hebrew to name classes, functions, variables, properties, string literals, attributes, and so on. 그러나 이 편집기는 오른쪽에서 왼쪽 읽기 순서를 지원하지 않고 텍스트는 항상 왼쪽 여백에서 시작됩니다.However, the editor does not support right-to-left reading order; text always starts at the left margin.

    문자열 리터럴을 프로그램에 하드 코딩하는 대신 리소스 파일에 삽입하는 것이 좋습니다.It is recommended that you place string literals in resource files instead of hard-coding them into your programs. 자세한 내용은 데스크톱 앱의 리소스(.NET Framework)를 참조하세요.For more information, see Resources in desktop apps (.NET Framework).

    참고

    이러한 언어로 명명된 개체를 참조하는 방법에 일관성이 있어야 합니다.You must be consistent in how you refer to objects named in these languages. 예를 들어 아랍어 변수 이름을 지정하는 데 Kashida를 사용할 경우 해당 변수를 참조할 때 항상 Kashida를 사용해야 합니다. 그렇지 않으면 오류가 발생합니다.For example, if you use Kashida in naming an Arabic variable, you must always use Kashida when referring to that variable, or errors will result.

  • 코드 주석입니다.Code comments. 아랍어 또는 히브리어로 주석을 만들 수 있습니다.You can create comments in Arabic or Hebrew. 주석 작성기 도구에서도 이러한 언어를 사용할 수 있습니다.You can also use these languages in the comment builder tool.

참고 항목See also