스마트 태그 아키텍처
업데이트: 2007년 11월
적용 대상 |
---|
이 항목의 정보는 지정된 Visual Studio Tools for Office 프로젝트 및 Microsoft Office 버전에만 적용됩니다. 문서 수준 프로젝트
응용 프로그램 수준 프로젝트
자세한 내용은 응용 프로그램 및 프로젝트 형식에 따라 사용 가능한 기능을 참조하십시오. |
Visual Studio Tools for Office에서는 융통성 있는 스마트 태그 개체 모델을 통해 Microsoft Office Word 문서 및 Microsoft Office Excel 통합 문서에 스마트 태그를 빠르게 추가할 수 있습니다. 고급 시나리오의 경우에는 자체의 스마트 태그 인식자를 만들어 스마트 태그에 저장된 데이터에 액세스할 수도 있습니다.
Visual Studio Tools for Office 스마트 태그에 대한 자세한 내용은 스마트 태그 개요를 참조하십시오.
개체 모델 개요
Visual Studio Tools for Office 스마트 태그의 개체 모델에서는 스마트 태그용 개별 클래스와 스마트 태그로 수행하는 작업을 제공합니다. Visual Studio Tools for Office 스마트 태그를 문서에 추가하는 방법을 보여 주는 코드 예제는 방법: Word 문서에 스마트 태그 추가 및 방법: Excel 통합 문서에 스마트 태그 추가를 참조하십시오.
스마트 태그
Visual Studio Tools for Office 스마트 태그는 추상 SmartTagBase 클래스에서 파생되는 클래스 인스턴스입니다. Visual Studio Tools for Office에는 추상 SmartTagBase 클래스를 구현하는 Microsoft.Office.Tools.Word.SmartTag 및 Microsoft.Office.Tools.Excel.SmartTag 클래스가 포함되어 있습니다. 사용자 고유의 스마트 태그 인식자를 만들어야 하는 경우를 제외하고는 문서에 스마트 태그를 추가할 때 이 두 클래스의 인스턴스를 사용할 수 있습니다.
SmartTagBase 클래스는 다음과 같은 기능을 제공합니다.
스마트 태그에 대해 인식 가능한 용어가 포함된 Terms 및 Expressions 속성. 간단한 문자열을 지정하려면 문자열을 Terms 속성에 추가합니다. 복잡한 문자열을 지정하려면 문자열을 설명하는 정규식을 Expressions 속성에 추가합니다.
사용자가 스마트 태그를 선택할 때 수행할 작업이 포함된 Actions 속성
사용자 입력을 Terms 및 Expressions 속성의 내용과 비교하는 기본 스마트 태그 인식자
작업
사용자가 스마트 태그를 선택할 때는 스마트 태그와 관련된 하나 이상의 작업을 수행할 수 있습니다. 각 작업은 Microsoft.Office.Tools.Word.Action 또는 Microsoft.Office.Tools.Excel.Action 클래스의 인스턴스로 표현됩니다. 이러한 클래스는 BeforeCaptionShow 및 Click 이벤트를 제공합니다.
BeforeCaptionShow 이벤트는 사용자가 스마트 태그 아이콘을 클릭한 직후 스마트 태그 메뉴가 표시되기 전에 발생하며 런타임에 스마트 태그 메뉴의 작업 제목을 수정하려는 경우에 이 이벤트를 처리합니다.
Click 이벤트는 사용자가 스마트 태그 메뉴에서 작업 제목을 클릭하면 발생합니다. 사용자가 작업을 클릭하면 이 이벤트를 처리하여 코드를 실행합니다.
이러한 이벤트의 이벤트 처리기는 인식된 텍스트와 텍스트의 위치에 액세스할 수 있게 해 주는 Microsoft.Office.Tools.Excel.ActionEventArgs(Excel의 경우) 또는 Microsoft.Office.Tools.Word.ActionEventArgs(Word의 경우)를 받습니다.
기본 텍스트 인식 동작
사용자가 문서 또는 통합 문서에 텍스트를 입력하면 Word 및 Excel에서 해당 텍스트로 토큰 목록을 만듭니다. SmartTagBase 클래스의 기본 스마트 태그 인식자는 이 토큰 목록과 사용자가 입력한 전체 텍스트를 받습니다. 기본 인식자는 다음과 같은 경우에 스마트 태그를 식별합니다.
Terms 속성의 문자열 중 하나가 문서 또는 통합 문서의 토큰 중 하나와 정확하게 일치하는 경우
Expressions 속성의 정규식 중 하나가 사용자가 입력한 전체 텍스트에 일치되는 경우
Word 및 Excel은 공백이 포함된 문자열이나, 사용자가 입력한 문자, 숫자 및 기호를 개별 토큰으로 결합하는 문자열을 구문 분석합니다. 예를 들어 사용자가 "sales report"를 입력할 경우 Word 및 Excel에서는 "sales" 토큰과 "report" 토큰을 만듭니다. 마찬가지로 "2005sales"를 입력할 경우 Word 및 Excel에서는 "2005" 토큰과 "sales" 토큰을 만듭니다.
스마트 태그에서 공백이 포함된 문자열이나 문자, 숫자 및 기호를 결합하는 문자열을 인식하도록 하려면 Terms 속성에 문자열을 추가하지 마십시오. 대신 문자열을 설명하는 정규식을 Expressions 속성에 추가하거나 문자열을 검색하는 사용자 인식자를 만듭니다.
스마트 태그 인식자 만들기
자체의 스마트 태그 인식자를 만들려면 SmartTagBase, Microsoft.Office.Tools.Word.SmartTag 또는 Microsoft.Office.Tools.Excel.SmartTag에서 새 클래스를 파생시키고 Recognize 메서드를 재정의합니다.
Recognize 구현에서는 텍스트에서 스마트 태그 용어를 검색하고 스마트 태그 용어가 있으면 Word 또는 Excel을 사용하여 스마트 태그를 수동으로 등록해야 합니다. Visual Studio Tools for Office 스마트 태그에 대한 인식자를 만드는 방법의 예제를 보려면 방법: Word에서 사용자 지정 인식자로 스마트 태그 만들기 및 방법: Excel에서 사용자 지정 인식자로 스마트 태그 만들기를 참조하십시오.
스마트 태그를 수동으로 등록하는 과정은 파생되는 원본 스마트 태그 클래스에 따라 달라집니다. 다음 표에서는 스마트 태그를 등록하기 위한 여러 옵션을 보여 줍니다.
파생되는 원본 클래스 |
스마트 태그 등록 방법 |
---|---|
SmartTag.PersistTag 메서드를 호출합니다. |
|
SmartTag.PersistTag 메서드를 호출합니다. |
|
Recognize 메서드의 site 매개 변수에 대한 CommitSmartTag 메서드를 호출합니다. site 매개 변수는 ISmartTagRecognizerSite 인터페이스를 구현하는 개체입니다. 이 인터페이스는 Microsoft Smart Tags 2.0 Type Library에 대한 참조를 프로젝트에 추가할 때 사용할 수 있습니다. 자세한 내용은 MSDN Library의 Smart Tag SDK 설명서를 참조하십시오. |
속성 모음에서 데이터 저장 및 검색
스마트 태그는 속성 모음이라고 하는 키와 값 쌍으로 이루어진 모음에 데이터를 저장할 수 있습니다. 속성 모음에 있는 각각의 값과 키는 문자열입니다.
Visual Studio Tools for Office 스마트 태그는 속성 모음에 액세스할 수 있는 다음과 같은 두 가지 방법을 제공합니다.
Microsoft.Office.Tools.Word.Action 또는 Microsoft.Office.Tools.Excel.Action 클래스의 Click 또는 BeforeCaptionShow 이벤트를 처리하고 이벤트 인수 매개 변수의 Properties 속성을 사용하여 스마트 태그의 속성 모음을 읽거나 쓸 수 있습니다. Properties 속성은 ISmartTagProperties 인터페이스를 구현하는 개체를 반환합니다. ISmartTagProperties 인터페이스는 Microsoft Smart Tags 2.0 Type Library에 대한 참조를 프로젝트에 추가할 때 사용할 수 있습니다.
SmartTagBase, Microsoft.Office.Tools.Word.SmartTag 또는 Microsoft.Office.Tools.Excel.SmartTag에서 파생되는 클래스의 Recognize 메서드를 구현할 수 있습니다. 이 메서드의 site 매개 변수는 ISmartTagProperties 개체를 반환하는 GetNewPropertyBag 메서드를 제공하며 이 개체를 사용하면 스마트 태그의 속성 모음을 읽거나 쓸 수 있습니다.
속성 모음을 읽거나 쓰는 방법에 대한 예제를 보려면 방법: Word에서 사용자 지정 인식자로 스마트 태그 만들기 및 방법: Excel에서 사용자 지정 인식자로 스마트 태그 만들기를 참조하십시오.
정규식 및 속성 모음
Visual Studio Tools for Office 스마트 태그에 정규식을 할당하면 기본 인식자가 정규식에서 캡처된 각 그룹에 대한 키와 값 쌍을 스마트 태그의 속성 모음에 추가합니다.
이 동작을 보여 주는 예제를 보려면 연습: 문서 수준 사용자 지정을 사용하여 스마트 태그 만들기를 참조하십시오. 정규식의 캡처된 그룹에 대한 자세한 내용은 그룹화 구문 및 정규식 클래스를 참조하십시오.
참고 항목
작업
방법: Word에서 사용자 지정 인식자로 스마트 태그 만들기
방법: Excel에서 사용자 지정 인식자로 스마트 태그 만들기
연습: 문서 수준 사용자 지정을 사용하여 스마트 태그 만들기
연습: 응용 프로그램 수준 추가 기능을 사용하여 스마트 태그 만들기