CFont::CreateFont

Inicializa um CFont objeto com as características especificadas.

BOOL CreateFont(
   int nHeight,
   int nWidth,
   int nEscapement,
   int nOrientation,
   int nWeight,
   BYTE bItalic,
   BYTE bUnderline,
   BYTE cStrikeOut,
   BYTE nCharSet,
   BYTE nOutPrecision,
   BYTE nClipPrecision,
   BYTE nQuality,
   BYTE nPitchAndFamily,
   LPCTSTR lpszFacename 
);

Parâmetros

  • nHeight
    Especifica a altura desejada (em unidades lógicas) da fonte.Consulte o lfHeight membro do LOGFONTestrutura o Windows SDK para descrition. O valor absoluto de nHeight não deve exceder 16.384 unidades do dispositivo após ser convertido. Para todas as comparações de altura, o mapeador de fonte procura a maior fonte não excede o dimensionar solicitado ou a menor fonte se todas as fontes excedem o dimensionar solicitado.

  • nWidth
    Especifica a largura média (em unidades lógicas) de caracteres na fonte.If nWidth é 0, a taxa de proporção do dispositivo haverá correspondência contra a taxa de proporção de digitalização das fontes disponível para encontrar a correspondência mais próxima, que é determinada pelo valor da diferença absoluta.

  • nEscapement
    Especifica o ângulo (em unidades de 0,1 grau) entre o vetor de escape e do eixo x da superfície de exibição.O vetor de escape é a linha até as origens do primeiro e último caracteres em uma linha.O ângulo é medido no sentido anti-horário a partir do eixo x.Consulte o lfEscapement membro a LOGFONT estrutura na Windows SDK Para obter mais informações.

  • nOrientation
    Especifica o ângulo (em unidades de 0,1 grau) entre a linha de base de um caractere e o eixo x.O ângulo é medido no sentido anti-horário do eixo x para os sistemas de coordenada em que é a direção y para baixo e no sentido horário a partir do eixo x para os sistemas de coordenada em que a direção de y é até.

  • nWeight
    Especifica a espessura da fonte (em pixels coloridos por 1000).Consulte o lfWeight membro a LOGFONT estrutura na Windows SDK Para obter mais informações. Os valores descritos são aproximados; a aparência real varia de acordo com a face de tipos.Algumas fontes possuem apenas FW_NORMAL, FW_REGULAR, and FW_BOLD pesos.If FW_DONTCARE for especificado, um peso padrão será usado.

  • bItalic
    Especifica se a fonte é itálico.

  • bUnderline
    Especifica se a fonte está sublinhada.

  • cStrikeOut
    Especifica se os caracteres na fonte são atingidos check-out.Especifica uma fonte riscado, se definida como um valor diferente de zero.

  • nCharSet
    Especifica caractere setSee a fonte o lfCharSet membro a LOGFONT estruturar no Windows SDK Para obter uma lista de valores.

    O conjunto de caractere OEM depende do sistema.

    As fontes com outros conjuntos de caractere podem existir no sistema.Um aplicativo que usa uma fonte com um desconhecido conjunto de caractere não deve tentar converter ou interpretar strings que são a serem processados com essa fonte.Em vez disso, as seqüências devem ser passadas diretamente para o driver de dispositivo de saída.

    O mapeador de fonte não usa o DEFAULT_CHARSETvalor de .Um aplicativo pode usar esse valor para permitir que o nome e o dimensionar de uma fonte para descrever a fonte lógica totalmente.Se uma fonte com o nome especificado não existir, uma fonte de qualquer conjunto de caractere pode ser substituída para a fonte especificada.Para evitar resultados inesperados, os aplicativos devem usar o DEFAULT_CHARSET valor com moderação.

  • nOutPrecision
    Especifica a precisão de saída desejado.A precisão de saída define proximidade a saída deve corresponder ao altura a fonte solicitada, largura, orientação de caractere, escape e densidade.Consulte o lfOutPrecision membro a LOGFONT estrutura na Windows SDK Para obter uma lista de valores e obter mais informações.

  • nClipPrecision
    Especifica a precisão de recorte desejado.A precisão de recorte define como caracteres que são parcialmente fora da região de recorte do clipe.Consulte o lfClipPrecision membro a LOGFONT estrutura na Windows SDK Para obter uma lista de valores.

    Para usar uma fonte incorporada somente leitura, um aplicativo deve especificar CLIP_ENCAPSULATE.

    Para obter rotação consistente de dispositivo, TrueType e as fontes vetoriais, um aplicativo pode usar o operador ou agrupar o CLIP_LH_ANGLES valor de com qualquer um dos outros nClipPrecision valores. Se o CLIP_LH_ANGLES bit é conjunto, a rotação de todas as fontes depende se a orientação do sistema de coordenada é canhoto ou destro.(Para obter mais informações sobre a orientação dos sistemas de coordenada, consulte a descrição do nOrientation parâmetro). If CLIP_LH_ANGLES não é conjunto, fontes de dispositivo sempre Girar no sentido anti-horário, mas a rotação de outras fontes depende a orientação do sistema de coordenada.

  • nQuality
    Especifica a qualidade de saída da fonte, que define como cuidadosamente a GDI deve tentar corresponder aos atributos de fonte lógico de uma fonte física real.Consulte o lfQuality membro a LOGFONT estrutura na Windows SDK Para obter uma lista de valores.

  • nPitchAndFamily
    Especifica a densidade e a família da fonte.Consulte o lfPitchAndFamily membro a LOGFONT estruturar no Windows SDK Para obter uma lista de valores e obter mais informações.

  • lpszFacename
    A CString ou o ponteiro para uma cadeia terminada com nulo que especifica o nome de face da fonte. O comprimento dessa seqüência de caracteres não deve exceder 30 caracteres.O Windows EnumFontFamilies função pode ser usada para enumerar todas as fontes disponível no momento.If lpszFacename is NULO, a GDI usa um face de tipos independente de dispositivo.

Valor de retorno

Diferente de zero se bem-sucedida; caso contrário, 0.

Comentários

A fonte, em seguida, pode ser selecionada sistema autônomo a fonte de qualquer contexto de dispositivo.

The CreateFont função não cria uma nova fonte GDI do Windows. Ele simplesmente seleciona a correspondência mais próxima de fontes disponível no pool da GDI das fontes físicas.

Aplicativos podem usar as configurações padrão para a maioria desses parâmetros ao criar uma fonte lógica.Os parâmetros que devem sempre receber valores específicos são nHeight e lpszFacename.If nHeight e lpszFacename não são conjunto pelo aplicativo, a fonte lógica que é criada é dependente do dispositivo.

Quando você termina com o CFont objeto criado pela CreateFont funcionar, primeiro selecionar a fonte fora do contexto de dispositivo e, em seguida, exclua o CFont objeto.

Exemplo

// The code fragment shows how to create a font object,
// select the font object into a DC (device context) for text
// drawing, and finally delete the font object.

// Initializes a CFont object with the specified characteristics. 
CFont font;
VERIFY(font.CreateFont(
   12,                        // nHeight
   0,                         // nWidth
   0,                         // nEscapement
   0,                         // nOrientation
   FW_NORMAL,                 // nWeight
   FALSE,                     // bItalic
   FALSE,                     // bUnderline
   0,                         // cStrikeOut
   ANSI_CHARSET,              // nCharSet
   OUT_DEFAULT_PRECIS,        // nOutPrecision
   CLIP_DEFAULT_PRECIS,       // nClipPrecision
   DEFAULT_QUALITY,           // nQuality
   DEFAULT_PITCH | FF_SWISS,  // nPitchAndFamily
   _T("Arial")));                 // lpszFacename

// Do something with the font just created...
CClientDC dc(this);  
CFont* def_font = dc.SelectObject(&font);
dc.TextOut(5, 5, _T("Hello"), 5);
dc.SelectObject(def_font);

// Done with the font.  Delete the font object.
font.DeleteObject(); 

Requisitos

Cabeçalho: afxwin.h

Consulte também

Referência

Classe CFont

Gráfico de hierarquia

CFont::CreateFontIndirect

CFont::CreatePointFont

CreateFont

EnumFontFamilies

EnumFonts

Outros recursos

CFont membros