Interfaccia IFont (ocidl.h)
Fornisce un wrapper intorno a un oggetto carattere di Windows. L'oggetto carattere COM supporta diverse proprietà di lettura/scrittura, nonché un set di metodi tramite l'interfaccia IFont . Supporta lo stesso set di proprietà (ma non i metodi) tramite l'interfaccia dispatch IFontDisp, derivato da IDispatch per fornire l'accesso alle proprietà del tipo di carattere tramite Automazione. Il sistema fornisce un'implementazione standard dell'oggetto carattere con entrambe le interfacce.
L'oggetto font supporta anche l'interfaccia in uscita IPropertyNotifySink in modo che un client possa determinare quando le proprietà del tipo di carattere cambiano. Poiché l'oggetto carattere supporta almeno un'interfaccia in uscita, implementa anche IConnectionPointContainer e le interfacce correlate a questo scopo.
L'oggetto font fornisce una proprietà hFont, ovvero un handle di carattere di Windows conforme agli altri attributi specificati per il tipo di carattere. L'oggetto carattere ritarda la realizzazione di questo oggetto hFont quando possibile, pertanto l'impostazione consecutiva di due proprietà su un tipo di carattere non comporterà la realizzazione di un tipo di carattere intermedio. Inoltre, come ottimizzazione, l'oggetto carattere implementato dal sistema gestisce una cache di handle di carattere. Due oggetti carattere nello stesso processo con proprietà identiche restituiranno lo stesso handle di carattere. L'oggetto font può rimuovere gli handle di carattere da questa cache in modo che introduca considerazioni speciali per i client che usano la proprietà hFont.
L'oggetto font supporta anche IPersistStream in modo che possa salvare e caricare se stesso da un'istanza di IStream. Un oggetto che usa un oggetto font internamente salva e carica il tipo di carattere come parte della gestione della persistenza dell'oggetto.
Inoltre, l'oggetto font supporta IDataObject, che può eseguire il rendering di un set di proprietà contenente gli attributi del tipo di carattere, consentendo a un client di salvare queste proprietà come testo.
Ereditarietà
L'interfaccia IFont eredita dall'interfaccia IUnknown . IFont ha anche questi tipi di membri:
Metodi
L'interfaccia IFont include questi metodi.
IFont::AddRefHfont Notifica all'oggetto carattere che il tipo di carattere identificato in precedenza con hFont deve rimanere valido fino a quando ReleaseHfont non viene chiamato o l'oggetto carattere stesso viene rilasciato completamente. |
IFont::Clone Crea un oggetto carattere duplicato. |
IFont::get_Bold Ottiene la proprietà Grassetto corrente del tipo di carattere. |
IFont::get_Charset Recupera il set di caratteri utilizzato nel tipo di carattere. |
IFont::get_hFont Recupera un handle per il tipo di carattere descritto da questo oggetto tipo di carattere. |
IFont::get_Italic Ottiene la proprietà Italic corrente del tipo di carattere. |
IFont::get_Name Recupera il nome della famiglia di caratteri. |
IFont::get_Size Recupera la dimensione del punto del tipo di carattere. |
IFont::get_Strikethrough Ottiene la proprietà Strikethrough corrente del tipo di carattere. |
IFont::get_Underline Ottiene la proprietà Underline corrente del tipo di carattere. |
IFont::get_Weight Ottiene la proprietà Weight corrente del tipo di carattere. |
IFont::IsEqual Confronta questo oggetto carattere con un altro oggetto per verificarne l'equivalenza. |
IFont::p ut_Bold Imposta la proprietà Bold del tipo di carattere. |
IFont::p ut_Charset Imposta il set di caratteri del tipo di carattere. |
IFont::p ut_Italic Imposta la proprietà Italic del tipo di carattere. |
IFont::p ut_Name Specifica un nuovo nome per la famiglia di caratteri. |
IFont::p ut_Size Imposta la dimensione del punto del tipo di carattere. |
IFont::p ut_Strikethrough Imposta la proprietà Strikethrough del tipo di carattere. |
IFont::p ut_Underline Imposta la proprietà Underline del tipo di carattere. |
IFont::p ut_Weight Imposta la proprietà Weight del tipo di carattere. |
IFont::QueryTextMetrics Riempie una struttura allocata dal chiamante con informazioni sul tipo di carattere. |
IFont::ReleaseHfont Notifica all'oggetto carattere che il chiamante che in precedenza ha bloccato questo tipo di carattere nella cache con IFont::AddRefHfont non richiede più il blocco. |
IFont::SetHdc Fornisce un contesto di dispositivo al tipo di carattere che descrive la modalità di mapping logico. |
IFont::SetRatio Converte il fattore di ridimensionamento per questo tipo di carattere tra unità logiche e unità HIMETRIC. |
Commenti
Ogni proprietà nell'interfaccia IFont include un metodo get_PropertyName se la proprietà supporta l'accesso in lettura e un metodo put_PropertyName se la proprietà supporta l'accesso in scrittura. La maggior parte di queste proprietà supporta sia l'accesso in lettura che in scrittura.
Proprietà | Type | Metodo di accesso in lettura | Metodo di accesso in scrittura | Descrizione |
---|---|---|---|---|
Nome | BSTR | get_Name | put_Name | Nome faccia del tipo di carattere, ad esempio Arial. |
Dimensione | CY | get_Size | put_Size | Dimensione del punto del tipo di carattere, espressa in un tipo CY per consentire le dimensioni dei punti frazionari. |
Grassetto | BOOL | get_Bold | put_Bold | Indica se il tipo di carattere è grassetto. |
Corsivo | BOOL | get_Italic | put_Italic | Indica se il tipo di carattere è in corsivo. |
Sottolineato | BOOL | get_Underline | put_Underline | Indica se il tipo di carattere è sottolineato. |
barrato | BOOL | get_Strikethrough | put_Strikethrough | Indica se il tipo di carattere è barrato. |
Weight | short | get_Weight | put_Weight | Grassetto del tipo di carattere. |
Charset | short | get_Charset | put_Charset | Set di caratteri utilizzato nel tipo di carattere, ad esempio ANSI_CHARSET, DEFAULT_CHARSET o SYMBOL_CHARSET. |
hFont | HFONT | get_hFont | Handle del tipo di carattere di Windows che può essere selezionato in un contesto di dispositivo per il rendering. |
Implementazione OLE
Il sistema fornisce un'implementazione standard di un oggetto carattere con l'interfaccia IFont sopra il supporto del tipo di carattere di sistema sottostante. Un oggetto font viene creato tramite la funzione OleCreateFontIndirect. Un oggetto font supporta una serie di proprietà di lettura/scrittura, nonché un set di metodi tramite l'interfaccia IFont e supporta lo stesso set di proprietà (ma non i metodi) tramite un'interfaccia dispatch IFontDisp derivata da IDispatch per fornire l'accesso alle proprietà del tipo di carattere tramite Automazione. L'implementazione di sistema dell'oggetto carattere fornisce entrambe le interfacce.Requisiti
Client minimo supportato | Windows 2000 Professional [app desktop | App UWP] |
Server minimo supportato | Windows 2000 Server [app desktop | App UWP] |
Piattaforma di destinazione | Windows |
Intestazione | ocidl.h |