共用方式為


内嵌物件 (Text Services Framework)

Text Services Framework 可讓文字服務在應用程式文字資料流程中内嵌物件。 内嵌物件會使用值 TS_CHAR_EMBEDDED插入文字資料流程中。 這個值會使用十六進位標記法解析為 Unicode 物件取代字元 U+fffc。 例如,下圖顯示内嵌物件的轉譯,該物件代表日文語意 文字 hi,結合代表 「Sun」 英文翻譯的 Unicode 字元序列。

内嵌物件的字元編碼

圖頂端列包含翻譯的文字,由 「Sun」 一字所組成,後面接著日文字元 ,hi。 圖表的中心資料列會顯示 Unicode 字元。 如果是 U+fffc,這是物件取代字元。 圖的底部資料列顯示每個字元的十六進位值。

支援應用程式中的内嵌物件

TSF 管理員會呼叫 ACP 型應用程式的 ITextStoreACP::InsertEmbedded ,或針對錨點型應用程式呼叫 ITextStoreAnchor::InsertEmbedded ,將内嵌物件插入文字資料流程中。 插入内嵌物件時,應用程式應該將 TS_CHAR_EMBEDDED 值放在 (或錨點位置) 物件內嵌的位置,並儲存與内嵌物件相關聯的 IDataObject。 呼叫 ITextStoreACP::GetText 或ITextStoreAnchor::GetText且内嵌物件包含在取得的文字內時,TS_CHAR_EMBEDDED值會指出内嵌物件是否存在和位置。 若要取得内嵌物件,請使用内嵌物件的字元位置呼叫 ITextStoreACP::GetEmbedded ,或使用内嵌物件的錨點位置來呼叫 ITextStoreAnchor::GetEmbedded

應用程式通常無法辨識内嵌物件內容。 應用程式可以嘗試從物件本身取得顯示資訊。 如果内嵌物件可以使用應用程式可辨識的格式提供資料,例如CF_UNICODETEXT或CF_BITMAP,則應用程式可以顯示物件所提供的圖形資訊。

插入内嵌物件

文字服務會呼叫 ITfRange::InsertEmbeddedITfInsertAtSelection::InsertEmbeddedAtSelection,將内嵌物件插入內容中。 文字服務必須提供內嵌的 IDataObject。