Como usar uma fonte duplicada
Esta seção explica como usar uma fonte duplicada para aplicar várias alterações a um intervalo de texto, de uma só vez.
O que você precisa saber
Tecnologias
Pré-requisitos
- C/C++
- Programação da interface do usuário do Windows
Instruções
Usar uma fonte duplicada
O exemplo a seguir mostra como uma duplicata de fonte pode ser usada para aplicar várias alterações a um intervalo de uma só vez.
void ChangeFontNameSizeBold(ITextSelection *pSel)
{
ITextFont *pFontSel = NULL
ITextFont *FontDuplicate = NULL;
// Get ITextFont version of non-duplicated font.
if (FAILED(pSel->GetFont( &pFontSel))
return;
// Duplicate the font.
pFontSel->GetValue(&pFontDuplicate);
pFontSel->Release();
if(!pFontDuplicate)
return;
// Changes here happen only to the underlying data structure,
// such as a CHARFORMAT, in the duplicate - NOT to the actual story text.
BSTR bstrTemp = UnicodeBstrFromAnsi("Times New Roman"); // Font name
pFontDuplicate->SetName(bstrTemp);
SysFreeString(bstrTemp);
pFontDuplicate->SetBold(tomTrue); // Bold
pFontDuplicate->SetSize(10.5); // 10.5 point font.
pFontDuplicate->SetAnimation(tomBlackMarchingAnts);
// Apply the change to text as one change: one screen update, one undo.
// You can also apply the font object to different ranges before you free it.
pSel->SetFont(pFontDuplicate);
pFontDuplicate->Release();
}
Tópicos relacionados