ITextStory
COM公式ドキュメント
ITextStory インターフェイスのメソッドは、複数のストーリーで共有されるデータにアクセスするために使用します。このデータは、親となる ITextServices インスタンスに格納されています。
メソッド 12
vtbl = vtable インデックス(0始まり)。HSP等からCOMメソッドをインデックス指定で呼ぶ際に使用します。0〜2 は IUnknown。
ストーリーのアクティブ状態を設定します。(ITextStory.GetActive)
| pValue | INT* | out | アクティブ状態。次の値のいずれかを指定できます。
|
戻り値
Type: HRESULT
メソッドが成功した場合は NOERROR を返します。それ以外の場合は HRESULT エラーコードを返します。
ストーリーのアクティブ状態を設定します。(ITextStory.SetActive)
| Value | INT | in | アクティブ状態。値については ITextStory::GetActive メソッドを参照してください。 |
戻り値
Type: HRESULT
メソッドが成功した場合は NOERROR を返します。それ以外の場合は HRESULT エラーコードを返します。
ストーリーの新しい表示を取得します。
| ppDisplay | IUnknown** | out | 表示の IUnknown インターフェイス。 |
戻り値
Type: HRESULT
メソッドが成功した場合は NOERROR を返します。それ以外の場合は HRESULT エラーコードを返します。
解説(Remarks)
ストーリーは ITextStory::SetActive(tomDisplayActive) を呼び出すことで表示できます。ITextStory::GetDisplay メソッドは、一連の ITextStory インターフェイスに対して複数の表示を持つことが有利な場合に備えて用意されています。
ストーリーのインデックスを取得します。
| pValue | INT* | out | インデックス。 |
戻り値
Type: HRESULT
メソッドが成功した場合は NOERROR を返します。それ以外の場合は HRESULT エラーコードを返します。
解説(Remarks)
このインデックスは ITextDocument2:: GetStory メソッドで使用します。
このストーリーの種類を取得します。
| pValue | INT* | out | このストーリーの種類。次のいずれかの値、または 100 ~ 65535 のカスタムクライアント値を指定できます。 tomCommentsStorytomEndnotesStorytomEvenPagesFooterStorytomEvenPagesHeaderStorytomFindStorytomFirstPageFooterStorytomFirstPageHeaderStorytomFootnotesStorytomMainTextStorytomPrimaryFooterStorytomPrimaryHeaderStorytomReplaceStorytomScratchStorytomTextFrameStorytomUnknownStory |
戻り値
Type: HRESULT
メソッドが成功した場合は NOERROR を返します。それ以外の場合は HRESULT エラーコードを返します。
ストーリーの種類を設定します。
| Value | INT | in | ストーリーの種類。種類の値は ITextStory::GetType で定義されています。 |
戻り値
Type: HRESULT
メソッドが成功した場合は NOERROR を返します。それ以外の場合は HRESULT エラーコードを返します。
指定したプロパティの値を取得します。(ITextStory.GetProperty)
| Type | INT | in | プロパティの ID。現在、追加のプロパティは定義されていません。 |
| pValue | INT* | out | プロパティの値。 |
戻り値
Type: HRESULT
メソッドが成功した場合は NOERROR を返します。それ以外の場合は HRESULT エラーコードを返します。
ストーリーのテキスト範囲オブジェクトを取得します。
| cpActive | INT | in | 範囲のアクティブ端。 |
| cpAnchor | INT | in | 範囲のアンカー端。 |
| ppRange | ITextRange2** | out | テキスト範囲オブジェクト。 |
戻り値
Type: HRESULT
メソッドが成功した場合は S_OK を返します。メソッドが失敗した場合は、次のいずれかの COM エラーコードを返します。COM エラーコードの詳細については、Error Handling in COM を参照してください。
| リターンコード | 説明 |
|---|---|
| 引数が無効です。 | |
| メモリが不足しています。 |
指定した変換フラグに従って、ストーリー内のテキストを取得します。
| Flags | INT | in | 変換フラグ。 Flags の値が 0 の場合、ITextRange::GetText と同じテキストを取得します。その他の値には次のものがあります。 tomAdjustCRLFtomAllowFinalEOPtomFoldMathAlphatomIncludeNumberingtomNoHiddentomNoMathZoneBracketstomLanguageTagtomTextizetomTranslateTableCelltomUseCRLF |
| pbstr | LPWSTR* | out | ストーリー内のテキスト。 |
戻り値
Type: HRESULT
メソッドが成功した場合は S_OK を返します。メソッドが失敗した場合は、次のいずれかの COM エラーコードを返します。COM エラーコードの詳細については、Error Handling in COM を参照してください。
| リターンコード | 説明 |
|---|---|
| 引数が無効です。 | |
| 書き込みアクセスが拒否されました。 | |
| メモリが不足しています。 |
解説(Remarks)
このメソッドは、ストーリー全体に対して ITextRange2::GetText2 を使用する場合に似ていますが、範囲を必要としません。
ストーリーのテキストを、指定した書式付きテキストで置き換えます。
| pUnk | IUnknown* | inoptional | ストーリーのテキストを置き換える書式付きテキスト。 |
戻り値
Type: HRESULT
メソッドが成功した場合は S_OK を返します。メソッドが失敗した場合は、次のいずれかの COM エラーコードを返します。COM エラーコードの詳細については、Error Handling in COM を参照してください。
| リターンコード | 説明 |
|---|---|
| 引数が無効です。 | |
| 書き込みアクセスが拒否されました。 | |
| メモリが不足しています。 |
解説(Remarks)
このメソッドは、ITextRange2 インターフェイスに対して IUnknown::QueryInterface を呼び出します。
指定したプロパティの値を設定します。(ITextStory.SetProperty)
| Type | INT | in | プロパティを識別する Microsoft accountID。現在、追加のプロパティは定義されていません。 |
| Value | INT | in | 新しいプロパティの値。 |
戻り値
Type: HRESULT
メソッドが成功した場合は NOERROR を返します。それ以外の場合は HRESULT エラーコードを返します。
ストーリー内のテキストを、指定したテキストで置き換えます。
| Flags | INT | in | 次の表で定義されている、テキストの挿入方法を制御するフラグ: tomCheckTextLimittomMathCFChecktomUnhidetomUnicodeBiDitomUnlink |
| bstr | LPWSTR | in | このストーリーの新しいテキスト。このパラメーターが NULL の場合、ストーリー内のテキストは削除されます。 |
戻り値
Type: HRESULT
メソッドが成功した場合は S_OK を返します。メソッドが失敗した場合は、次のいずれかの COM エラーコードを返します。COM エラーコードの詳細については、Error Handling in COM を参照してください。
| リターンコード | 説明 |
|---|---|
| 引数が無効です。 | |
| 書き込みアクセスが拒否されました。 | |
| メモリが不足しています。 |
Microsoft 公式リファレンス: 英語 (en-us) · 日本語 (ja-jp) · 原文ソース (GitHub)
HSP用 COM定義
#usecom / #comfunc によるHSPのCOM呼び出し定義。数字は vtbl インデックス(0始まり)。クラスIDが無い場合 #usecom の末尾は "{}"、ある場合は "{CLSID}"。
#define global IID_ITextStory "{C241F5F3-7206-11D8-A2C7-00A0D1D6C6B3}" #usecom global ITextStory IID_ITextStory "{}" #comfunc global ITextStory_GetActive 3 var #comfunc global ITextStory_SetActive 4 int #comfunc global ITextStory_GetDisplay 5 sptr #comfunc global ITextStory_GetIndex 6 var #comfunc global ITextStory_GetType 7 var #comfunc global ITextStory_SetType 8 int #comfunc global ITextStory_GetProperty 9 int,var #comfunc global ITextStory_GetRange 10 int,int,sptr #comfunc global ITextStory_GetText 11 int,var #comfunc global ITextStory_SetFormattedText 12 sptr #comfunc global ITextStory_SetProperty 13 int,int #comfunc global ITextStory_SetText 14 int,wstr ; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。 ; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。 ; ※出力/バッファ引数は var(変数直渡し)。varptr 方式にも切替可。 ; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。#define global IID_ITextStory "{C241F5F3-7206-11D8-A2C7-00A0D1D6C6B3}" #usecom global ITextStory IID_ITextStory "{}" #comfunc global ITextStory_GetActive 3 sptr #comfunc global ITextStory_SetActive 4 int #comfunc global ITextStory_GetDisplay 5 sptr #comfunc global ITextStory_GetIndex 6 sptr #comfunc global ITextStory_GetType 7 sptr #comfunc global ITextStory_SetType 8 int #comfunc global ITextStory_GetProperty 9 int,sptr #comfunc global ITextStory_GetRange 10 int,int,sptr #comfunc global ITextStory_GetText 11 int,sptr #comfunc global ITextStory_SetFormattedText 12 sptr #comfunc global ITextStory_SetProperty 13 int,int #comfunc global ITextStory_SetText 14 int,wstr ; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。 ; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。 ; ※出力/バッファ引数はポインタ方式(token=sptr / 呼び出しは varptr(変数))。 ; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。