LOGFONT
9/8/2008
Essa estrutura define os atributos de uma fonte.
Syntax
typedef struct tagLOGFONT {
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;
TCHAR lfFaceName[LF_FACESIZE];
} LOGFONT;
Os membros
lfHeight
Especifica a altura, em unidades lógicas, da fonte caractere ou célula caractere. O caractere valor da altura (also Known as a altura travessão) é a valor da altura célula caractere menos o valor Internal-leading. O recurso de mapeamento fonte interpretará o valor especificado em lfHeight No seguinte maneira.Valor Descrição > 0
O recurso de mapeamento fonte Transforma este valor em unidades dispositivo e corresponde-la contra o altura da célula do disponível fontes.
0
O recurso de mapeamento fonte usa um valor da altura usar como padrão quando ele procura uma correspondência.
< 0
O recurso de mapeamento fonte Transforma este valor em unidades dispositivo e coincide com seu valor absoluto contra a altura caractere da disponível fontes.
Para todas as comparações altura, o recurso de mapeamento fonte procura a maior fonte que não exceda o tamanho solicitado.
Esse mapeamento ocorre quando a fonte é usado para o primeiro tempo.
Para o modo de mapeamento MM_TEXT, você pode usar a seguinte fórmula para especificar uma altura de uma fonte com um tamanho apontar determinado.
lfHeight = -MulDiv(PointSize, GetDeviceCaps(hDC, LOGPIXELSY), 72);
Onde MulDiv é definido como a seguir:
#define MulDiv(a,b,c) (((a)*(b))/(c))
- lfWidth
Especifica o médio largura, em unidades lógicas, de caracteres de fonte. Se lfWidth não é zero, a taxa de proporção do dispositivo é comparados com o taxa de proporção digitization da disponível fontes para localizar a correspondência mais próxima, determinado pelo valor absoluto da diferença.
lfEscapement
Especifica o ângulo, em décimos de graus, entre o vetor escapement e a eixo x do dispositivo. O vetor escapement é paralela para a linha de base de uma linha de texto.O lfEscapement membro especifica a escapement e orientação. Você deve definir lfEscapement e lfOrientation para o mesmo valor.
- lfOrientation
Especifica o ângulo, em décimos de graus, entre linha de base do cada caractere e a eixo x do dispositivo.
lfWeight
Especifica o peso da fonte no intervalo de 0 a 1000. De exemplo, 400 700 é normal e negrito. Se esse valor for zero, um peso usar como padrão será usado.O seguinte valores são definidos para sua conveniência.
Valor Peso 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
Especifica um fonte itálica se definido como TRUE.
- lfUnderline
Especifica uma fonte sublinhado se definido como TRUE.
- lfStrikeOut
Especifica uma fonte riscado se definido como TRUE.
lfCharSet
Especifica a conjunto de caracteres. O seguinte valores são predefinidos:ANSI_CHARSET
BALTIC_CHARSET
CHINESEBIG5_CHARSET
DEFAULT_CHARSET
EASTEUROPE_CHARSET
GB2312_CHARSET
GREEK_CHARSET
HANGUL_CHARSET
MAC_CHARSET
OEM_CHARSET
RUSSIAN_CHARSET
SHIFTJIS_CHARSET
SYMBOL_CHARSET
TURKISH_CHARSET
Windows em coreano
JOHAB_CHARSET
Windows Middle-Eastern
HEBREW_CHARSET
ARABIC_CHARSET
Windows em tailandês
THAI_CHARSET
O valor OEM_CHARSET especifica um conjunto de caracteres que está operando-sistema dependente.
DEFAULT_CHARSET é definido como um valor baseia o atual sistema localidade. De exemplo, quando a localidade sistema é Inglês (Estados Unidos), o valor é ANSI_CHARSET.
Fontes com outros conjuntos caractere podem existir na sistema operacional. Se um aplicativo usa uma fonte com um conjunto de caracteres desconhecido, ele não deve tentar converter ou interpretar seqüências de caracteres que são processadas com essa fonte.
Esse membro é importante no processo de mapeamento fonte. Para garantir consistente resultados, especificar um conjunto de caracteres específico. Se você especificar um face de tipos nome in a lfFaceName membro, certifique-se de que o lfCharSet valor corresponde a conjunto de caracteres do face de tipos especificado no lfFaceName.
lfOutPrecision
Especifica a precisão saída. A precisão saída define como perto de saída deve corresponder da fonte de solicitada altura, largura, orientação caractere, escapement, densidade e fonte tipo. Ele pode ser uma do seguinte valores.Valor Descrição OUT_DEFAULT_PRECIS
Especifica o comportamento recurso de mapeamento fonte usar como padrão.
OUT_RASTER_PRECIS
Instrui o recurso de mapeamento fonte para escolher um fonte de varredura quando o sistema contém múltiplo fontes com o mesmo nome.
OUT_STRING_PRECIS
Este valor não é usado pelo recurso de mapeamento a fonte, mas ele é retornado quando as fontes de varredura são enumeradas.
lfClipPrecision
Especifica a precisão recorte. A precisão recorte define como caracteres juntar que estão parcialmente fora de região de recorte. Ele pode ser um ou mais do seguinte valores.Valor Descrição CLIP_DEFAULT_PRECIS
Especifica o comportamento recorte usar como padrão.
CLIP_CHARACTER_PRECIS
Não usado.
CLIP_STROKE_PRECIS
Não usado pelo recurso de mapeamento a fonte, mas é retornado quando varredura, vetor ou fontes TrueType são enumeradas.
lfQuality
Especifica a qualidade saída. Qualidade de saída define como cuidadosamente a interface dispositivo gráfico (GDI) deve tentar coincidir com a lógica-fonte atributos às de um real físico fonte. Ele pode ser uma do seguinte valores.Valor Descrição ANTIALIASED_QUALITY
Permite que suavização para a fonte. O driver exibir deve texto antialiased suporte para esta configuração para trabalho.
NONANTIALIASED_QUALITY
Força usar de qualidade versão preliminar quando o HKEY_LOCAL_MACHINE\System\GDI\Fontsmoothing chave Registro está presente.
CLEARTYPE_COMPAT_QUALITY
Texto Enables ClearType® para a fonte usando compatível larguras. Um compatível largura produz texto que possui o mesmo espaçamento como Non-ClearType texto.
CLEARTYPE_QUALITY
Permite que o texto ClearType para a fonte. O driver exibir deve suporte texto ClearType para esta configuração para trabalho.
DEFAULT_QUALITY
Aparência da fonte não importa.
DRAFT_QUALITY
Para fontes de varredura GDI, escala é habilitado, o que significa que são mais tamanhos fonte disponível, mas a qualidade pode ser inferior. Negrito, itálico, sublinhado e fontes riscado são sintetizadas se necessário.
lfPitchAndFamily
Especifica a densidade e família da fonte. A baixa duas-especificar bits ordem a densidade da fonte e pode ser uma do seguinte valores:- DEFAULT_PITCH
- FIXED_PITCH
- VARIABLE_PITCH
Bits de 4 a 7 de especificar o membro a família fonte e pode ser uma do seguinte valores:
- FF_DECORATIVE
- FF_DONTCARE
- FF_MODERN
- FF_ROMAN
- FF_SCRIPT
- FF_SWISS
O valor apropriado pode ser obtido por meio de Boolean operador OR a constante densidade uma junção com uma família constante.
Famílias de fontes descrevem o aspecto de uma fonte de uma maneira geral. Elas destinam especificando fontes quando o face de tipos exato desejado não estiver disponível. Os valores para as famílias fonte são da seguinte maneira.
Valor Descrição FF_DECORATIVE
Novas fontes, de exemplo, Old English.
FF_DONTCARE
Não faz questão ou não souber.
FF_MODERN
Fontes com constante traço largura (monoespaçada), com ou sem serifas. Fontes monospace são geralmente modernas, de exemplo, Pica, Elite e Courier New.
FF_ROMAN
Fontes com variável largura traço (proporcionalmente) e com serifas, de exemplo, Serif.
FF_SCRIPT
Fontes criadas para aspecto como manuscrito, de exemplo, scripts e Cursive.
FF_SWISS
Fontes com variável largura traço (proporcionalmente) e sem serifas, de exemplo, Sans Serif.
- lfFaceName
Especifica um seqüência de caracteres NULL-Terminated que especifica o nome face de tipos da fonte. O comprimento deste seqüência de caracteres não deve exceder 32 caracteres, incluindo a caractere nulo de terminação. A função EnumFontFamilies pode ser usada para enumerar os nomes de todos os face de tipos atualmente disponível fontes. Se lfFaceName é um seqüência vazia, GDI usa a primeira fonte que corresponde os outros atributos especificados.
Remarks
Windows CE 1.0 e 1.01 não suporte o seguinte valores para lfClipPrecision:
- CLIP_MASK
- CLIP_EMBEDDED
- CLIP_LH_ANGLES
- CLIP_TT_ALWAYS
Windows CE 2.0 e ignorar posterior a lfClipPrecision e lfQuality Membros com uma exceção importante. Se o mecanismo fonte de varredura estiver instalado, um IfClipPrecision valor de CLIP_CHARACTER_PRECIS irá causar funções que criar e selecione as fontes falhar.
ClearType e suavização fontes não estão disponível em superfícies que não correspondem o primário superfície no bit profundidade e a cor máscaras. Desenho de texto para que não correspondem o primário superfícies superfície resulta em texto qualidade versão preliminar.
Requirements
Header | wingdi.h |
Windows Embedded CE | Windows CE 1.0 and later |
Windows Mobile | Pocket PC for Windows Mobile Version 5.0 and later, Smartphone for Windows Mobile Version 5.0 and later |