wingdi.h


CreatePen

La función CreatePen crea una pluma lógica que tiene el estilo, grosor y color especificados. La pluma puede ser seleccionada después dentro de un contexto de dispositivo y usada para trazar líneas y curvas.

Sintaxis

HPEN CreatePen(
    int fnPenStyle,   // estilo de la pluma
    int nWidth,       // anchura de la pluma  
    COLORREF crColor  // color de la pluma
   );

Parámetros:

fnPenStyle: especifica un estilo de pluma, puede ser uno de los siguientes valores:

Estilo Descripción
PS_SOLID Las líneas serán continuas y sólidas.
PS_DASH Líneas de trazos. Este estilo sólo es válido cuando el ancho de la pluma sea uno o menos en unidades de dispositivo.
PS_DOT Líneas de puntos. Este estilo sólo es válido cuando el ancho de la pluma sea uno o menos en unidades de dispositivo.
PS_DASHDOT Líneas alternan puntos y trazos. Este estilo sólo es válido cuando el ancho de la pluma sea uno o menos en unidades de dispositivo.
PS_DASHDOTDOT Líneas alternan lineas y dobles puntos. Este estilo sólo es válido cuando el ancho de la pluma sea uno o menos en unidades de dispositivo.
PS_NULL Las líneas son invisibles.
PS_INSIDEFRAME Las líneas serán sólidas. Cuando ésta pluma se usa en cualquier función de dibujo del GDI que requiera un rectángulo que sirva como límite, las dimensiones de la figura se reducirán para que se ajusten por completo al interior del rectángulo, teniendo en cuenta el grosor de la pluma. Esto sólo se aplica a plumas geométricas.

nWidth: especifica la anchura de la pluma en unidades lógicas. Si nWidth es cero, la pluma será de una anchura de un pixel, independientemente de la transformación actual.

crColor: especifica una referencia de color para la pluma.

Valor de retorno

Si la función tiene éxito, el valor de retorno es un manipulador que identifica una pluma lógica.

Si la función falla, el valor de retorno es NULL.

Observaciones

Después de que una aplicación cree una pluma lógica, puede seleccionarla dentro de un contexto de dispositivo llamando a la función SelectObject. Después de seleccionada para un contexto de dispositivo, la pluma puede usarse para trazar líneas y curvas.

Si el valor especificado para el parámetro nWidth es cero, una línea trazada con la pluma creada tendrá siempre un pixel de anchura, independientemente de la transformación actual.

Si el valor especificado para el parámetro nWidth es mayor que 1,el parámetro fnPenStyle debe ser PS_NULL, PS_SOLID o PS_INSIDEFRAME.

Si el valor especificado para nWidth es mayor que 1 y fnPenStyle es PS_INSIDEFRAME, la línea asociada con la pluma será trazada en el interior del marco para todas las primitivas excepto polígonos y polilíneas.

Si el valor especificado por nWidth es mayor que 1, fnPenStyle es PS_INSIDEFRAME, y el color especificado por el parámetro crColor no coincide con una de las entradas de la paleta lógica, Windows trazará las líneas usando un color tramado. Los colores tramados no están disponibles para plumas sólidas.

Cuando ya no se necesite la pluma creada, debe llamarse a la función DeleteObject para eliminarla de la memoria.