Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
Define os atributos de uma fonte.
Sintaxe
typedef struct __MIDL___MIDL_itf_dimm_0000_0000_0003 {
LONG lfHeight;
LONG lfWidth;
LONG lfEscapement;
LONG lfOrientation;
LONG lfWeight;
BYTE lfItalic;
BYTE lfUnderline;
BYTE lfStrikeOut;
BYTE lfCharSet;
BYTE lfOutPrecision;
BYTE lfClipPrecision;
BYTE lfQuality;
BYTE lfPitchAndFamily;
CHAR lfFaceName[32];
} LOGFONTA;
Members
lfHeight
Tipo: LONG
Especifica a altura, em unidades lógicas, da célula ou caractere de caractere da fonte. O valor de altura do caractere (também conhecido como altura em) é o valor de altura da célula de caractere menos o valor principal interno. O mapeador de fonte interpreta o valor especificado no lfHeight da maneira a seguir.
| Value | Description |
|---|---|
| > 0 | O mapeador de fonte transforma esse valor em unidades de dispositivo e o corresponde à altura da célula das fontes disponíveis. |
| 0 | O mapeador de fonte usa um valor de altura padrão quando pesquisa uma correspondência. |
| < 0 | O mapeador de fonte transforma esse valor em unidades de dispositivo e corresponde ao valor absoluto em relação à altura do caractere das fontes disponíveis. |
Para todas as comparações de altura, o mapeador de fonte procura a maior fonte que não excede o tamanho solicitado.
Esse mapeamento ocorre quando a fonte é usada pela primeira vez.
Para o modo de mapeamento MM_TEXT, você pode usar a fórmula a seguir para especificar uma altura para uma fonte com um determinado tamanho de ponto.
lfHeight = -MulDiv(PointSize, GetDeviceCaps(hDC, LOGPIXELSY), 72);
em que o MulDiv é definido da seguinte maneira:
#define MulDiv(a,b,c) (((a)*(b))/(c))
lfWidth
Tipo: LONG
Especifica a largura média, em unidades lógicas, de caracteres na fonte. Se lfWidth não for zero, a taxa de proporção do dispositivo será correspondida com a taxa de proporção de digitalização das fontes disponíveis para localizar a correspondência mais próxima, determinada pelo valor absoluto da diferença.
lfEscapement
Tipo: LONG
Especifica o ângulo, em décimos de graus, entre o vetor de escape e o eixo x do dispositivo. O vetor de escape é paralelo à linha base de uma linha de texto.
O membro lfEscapement especifica o escape e a orientação. Você deve definir lfEscapement e lfOrientation com o mesmo valor.
lfOrientation
Tipo: LONG
Especifica o ângulo, em décimos de graus, entre a linha base de cada caractere e o eixo x do dispositivo.
lfWeight
Tipo: LONG
Especifica o peso da fonte no intervalo de 0 a 1000. Por exemplo, 400 é normal e 700 é negrito. Se esse valor for zero, um peso padrão será usado.
Os valores a seguir são definidos em Wingdi.h para conveniência.
| Value | Weight |
|---|---|
| FW_DONTCARE | 0 |
| FW_THIN | 100 |
| FW_EXTRALIGHT | 200 |
| FW_ULTRALIGHT | 200 |
| FW_LIGHT | 300 |
| FW_NORMAL | 400 |
| FW_REGULAR | 400 |
| FW_MEDIUM | 500 |
| FW_SEMIBOLD | 600 |
| FW_DEMIBOLD | 600 |
| FW_BOLD | 700 |
| FW_EXTRABOLD | 800 |
| FW_ULTRABOLD | 800 |
| FW_HEAVY | 900 |
| FW_BLACK | 900 |
lfItalic
Tipo: BYTE
TRUE para especificar uma fonte itálica.
lfUnderline
Tipo: BYTE
TRUE para especificar uma fonte sublinhada.
lfStrikeOut
Tipo: BYTE
TRUE para especificar uma fonte de strikeout.
lfCharSet
Tipo: BYTE
Especifica o conjunto de caracteres. Os seguintes valores são predefinidos:
| Value | Description |
|---|---|
| ANSI_CHARSET | Essa fonte dá suporte ao conjunto de caracteres ANSI do Windows. |
| ARABIC_CHARSET | Essa fonte dá suporte ao conjunto de caracteres árabe. |
| BALTIC_CHARSET | Essa fonte dá suporte ao conjunto de caracteres báltico. |
| CHINESEBIG5_CHARSET | Essa fonte dá suporte ao conjunto de caracteres chinês tradicional (Big 5). |
| DEFAULT_CHARSET | Essa fonte dá suporte ao valor do conjunto de caracteres com base na página de código padrão do Windows ANSI do sistema. Por exemplo, quando a localidade do sistema é inglês (Estados Unidos), ela é definida como ANSI_CHARSET. |
| EASTEUROPE_CHARSET | Essa fonte dá suporte ao conjunto de caracteres do Leste Europeu. |
| GB2312_CHARSET | Essa fonte dá suporte ao conjunto de caracteres chinês simplificado (PRC). |
| GREEK_CHARSET | Essa fonte dá suporte ao conjunto de caracteres grego. |
| HANGEUL_CHARSET | Essa fonte dá suporte ao conjunto de caracteres coreano (Hangul). |
| HEBREW_CHARSET | Essa fonte dá suporte ao conjunto de caracteres hebraico. |
| JOHAB_CHARSET | Essa fonte dá suporte ao conjunto de caracteres coreano (Johab). |
| MAC_CHARSET | Essa fonte dá suporte ao valor do conjunto de caracteres com base na página de código do Macintosh do sistema atual. Esse valor é usado principalmente em código herdado e geralmente não deve ser necessário, pois computadores Macintosh modernos usam Unicode para codificação. |
| OEM_CHARSET | Essa fonte dá suporte a um conjunto de caracteres específico do OEM. O conjunto de caracteres OEM depende do sistema. |
| RUSSIAN_CHARSET | Essa fonte dá suporte ao conjunto de caracteres cirílico. |
| SHIFTJIS_CHARSET | Essa fonte dá suporte ao conjunto de caracteres Shift-JIS (Padrão da Indústria Japonesa). |
| SYMBOL_CHARSET | Essa fonte dá suporte ao conjunto de caracteres de símbolo do Windows. |
| THAI_CHARSET | Essa fonte dá suporte ao conjunto de caracteres tailandês. |
| TURKISH_CHARSET | Essa fonte dá suporte ao conjunto de caracteres turco. |
| VIETNAMESE_CHARSET | Essa fonte dá suporte ao conjunto de caracteres vietnamita. |
Fontes com outros conjuntos de caracteres podem existir no sistema operacional. Se um aplicativo usa uma fonte com um conjunto de caracteres desconhecido, ele não deve tentar traduzir ou interpretar cadeias de caracteres renderizadas com essa fonte.
Esse membro é importante no processo de mapeamento de fontes. Para garantir resultados consistentes, especifique um conjunto de caracteres específico. Se você especificar um nome de tipo no membro lfFaceName , verifique se o valor lfCharSet corresponde ao conjunto de caracteres da face de tipo especificada em lfFaceName.
lfOutPrecision
Tipo: BYTE
Especifica a precisão de saída. A precisão de saída define a proximidade com que a saída deve corresponder à altura, largura, orientação do caractere, escape, tom e tipo de fonte da fonte solicitada. Pode ser um dos seguintes valores definidos em Wingdi.h:
| Value | Description |
|---|---|
| OUT_DEFAULT_PRECIS | Especifica o comportamento padrão do mapeador de fontes. |
| OUT_RASTER_PRECIS | Instrui o mapeador de fontes a escolher uma fonte de raster quando o sistema contiver várias fontes com o mesmo nome. |
| OUT_STRING_PRECIS | Esse valor não é usado pelo mapeador de fontes, mas é retornado quando fontes de raster são enumeradas. |
lfClipPrecision
Tipo: BYTE
Especifica a precisão de recorte. A precisão de recorte define como recortar caracteres que estão parcialmente fora da região de recorte. Pode ser um ou mais dos seguintes valores definidos em Wingdi.h:
| Value | Description |
|---|---|
| CLIP_DEFAULT_PRECIS | Especifica o comportamento de recorte padrão. |
| CLIP_CHARACTER_PRECIS | Não usado. |
| CLIP_STROKE_PRECIS | Não usado pelo mapeador de fontes, mas é retornado quando fontes raster, vector ou TrueType são enumeradas. |
lfQuality
Tipo: BYTE
Especifica a qualidade da saída. A qualidade de saída define com que cuidado o GDI deve tentar corresponder os atributos de fonte lógica aos de uma fonte física real. Pode ser um dos seguintes valores definidos em Wingdi.h:
| Value | Description |
|---|---|
| ANTIALIASED_QUALITY | Habilita a suavização para a fonte. O driver de exibição deve dar suporte a textos anáricos para que essa configuração funcione. |
| NONANTIALIASED_QUALITY | Força o uso da qualidade do rascunho quando a subchave do registro HKEY_LOCAL_MACHINE\System\GDI\Fontsmoothing está presente. |
| CLEARTYPE_COMPAT_QUALITY | Habilita o texto ClearType para a fonte usando larguras compatíveis. Uma largura compatível produz texto que tem o mesmo espaçamento que o texto não ClearType. |
| CLEARTYPE_QUALITY | Habilita o texto ClearType para a fonte. O driver de exibição deve dar suporte ao texto ClearType para que essa configuração funcione. |
| DEFAULT_QUALITY | A aparência da fonte não importa. |
| DRAFT_QUALITY | Para fontes de raster GDI, o dimensionamento está habilitado, o que significa que mais tamanhos de fonte estão disponíveis, mas a qualidade pode ser menor. Fontes em negrito, itálico, sublinhado e strikeout são sintetizadas, se necessário. |
lfPitchAndFamily
Tipo: BYTE
Especifica o pitch e o grupo da fonte. Os dois bits de ordem baixa especificam o tom da fonte e podem ser um dos seguintes valores definidos em Wingdi.h:
- DEFAULT_PITCH
- FIXED_PITCH
- MONO_FONT
- VARIABLE_PITCH
- FF_DECORATIVE
- FF_DONTCARE
- FF_MODERN
- FF_ROMAN
- FF_SCRIPT
- FF_SWISS
As famílias de fontes descrevem a aparência de uma fonte de maneira geral. Elas se destinam a especificar fontes quando a face de tipo exata desejada não estiver disponível. Os valores para famílias de fontes são os seguintes:
| Value | Description |
|---|---|
| FF_DECORATIVE | Fontes de novidade, por exemplo, inglês antigo. |
| FF_DONTCARE | Não se importa ou não sabe. |
| FF_MODERN | Fontes com largura de traço constante (monospace), com ou sem serifs. As fontes de monospace geralmente são modernas, por exemplo, Pica, Elite e Courier New. |
| FF_ROMAN | Fontes com largura de traço variável (proporcional) e com serifs, por exemplo, Serif. |
| FF_SCRIPT | Fontes projetadas para se parecerem com manuscrito, por exemplo, Script e Cursivo. |
| FF_SWISS | Fontes com largura de traço variável (proporcional) e sem serifs, por exemplo, Sans Serif. |
lfFaceName[32]
Tipo: TCHAR[LF_FACESIZE]
Especifica uma cadeia de caracteres terminada em nulo que especifica o nome da face de tipo da fonte. O comprimento dessa cadeia de caracteres não deve exceder 32 caracteres, incluindo o caractere nulo de terminação. A função EnumFontFamilies pode ser usada para enumerar os nomes de tipo de todas as fontes disponíveis no momento. Se lfFaceName for uma cadeia de caracteres vazia, a GDI usará a primeira fonte que corresponde aos outros atributos especificados.
Observações
As seguintes situações não dão suporte à suavização ClearType:
- O texto é renderizado em uma impressora.
- Conjunto de exibição para 256 cores ou menos.
- O texto é renderizado em um cliente de servidor de terminal.
- A fonte não é uma fonte TrueType ou uma fonte Microsoft OpenType com estruturas de tópicos TrueType. Por exemplo, o seguinte não dá suporte à suavização ClearType: fontes tipo 1, fontes OpenType postscript sem estruturas de tópicos TrueType, fontes de bitmap, fontes de vetor e fontes de dispositivo.
- A fonte ajustou bitmaps inseridos para todos os tamanhos de fonte que contêm os bitmaps inseridos. Por exemplo, isso ocorre normalmente em fontes do Leste Asiático.
Requirements
| Requirement | Value |
|---|---|
| Cliente mínimo suportado | Windows Vista [somente aplicativos da área de trabalho] |
| servidor com suporte mínimo | Windows Server 2008 [somente aplicativos da área de trabalho] |
| Header | dimm.h (inclua Shtypes.h, Dimm.h) |