Formatos de portapapeles convertibles
Microsoft Windows es compatible de forma nativa con diferentes formatos de portapapeles. Al copiar y pegar contenido del portapapeles, Windows intentará automáticamente convertir los datos del portapapeles a otros formatos compatibles, lo que facilita pegar el contenido en diferentes aplicaciones.
Cuando se publican formatos de datos en el portapapeles, Windows agregará automáticamente formatos adicionales que se pueden obtener mediante la conversión de cualquiera de los formatos publicados originalmente, con el fin de aumentar la probabilidad de un pegado exitoso en otras aplicaciones.
Windows convertirá automáticamente los datos del portapapeles de un formato a otro si la aplicación de destino solicita un formato que el origen no puede proporcionar directamente.
Por ejemplo, al copiar texto con formato de un procesador de textos, Windows pondrá a disposición de una aplicación solicitante otros formatos, como texto sin formato, además del texto con formato publicado originalmente.
Como otro ejemplo, si los datos del portapapeles contienen texto sin formato en el formato de portapapeles CF_TEXT y la aplicación en la que se pegan los datos solicita texto Unicode en el formato CF_UNICODETEXT, Windows convertirá automáticamente los datos del portapapeles durante el proceso de pegado.
Nota:
Con algunas conversiones, se puede perder información, por ejemplo, al convertir automáticamente texto enriquecido a texto sin formato.
| Formato de portapapeles | Descripción |
|---|---|
| CF_TEXT
|
CF_TEXT |
| CF_OEMTEXT | |
| CF_UNICODETEXT | |
| CF_LOCALE | |
| CF_BITMAP
|
CF_BITMAP |
| CF_DIB | |
| CF_DIBV5 | |
| CF_METAFILEPICT
|
CF_METAFILEPICT |
| CF_ENHMETAFILE | |
| CF_OEMTEXT
|
CF_TEXT |
| CF_OEMTEXT | |
| CF_UNICODETEXT | |
| CF_LOCALE | |
| CF_DIB
|
CF_BITMAP |
| CF_DIB | |
| CF_DIBV5 | |
| CF_UNICODETEXT
|
CF_TEXT |
| CF_OEMTEXT | |
| CF_UNICODETEXT | |
| CF_LOCALE | |
| CF_ENHMETAFILE
|
CF_METAFILEPICT |
| CF_ENHMETAFILE | |
| CF_DIBV5
|
CF_BITMAP |
| CF_DIB | |
| CF_DIBV5 |
Nota:
La conversión de formatos del portapapeles depende del sistema operativo Windows y esta tabla podría cambiar en futuras versiones del sistema operativo.
Es importante comprender que el sistema de portapapeles de Windows no convierte libremente entre todos los formatos. Las conversiones automáticas se limitan a unos pocos tipos principales, principalmente entre diferentes codificaciones de texto y entre variaciones de mapas de bits.
Para la mayoría de los demás formatos, la compatibilidad se logra cuando la aplicación de origen coloca varios formatos en el portapapeles a la vez. Por ejemplo, cuando copias un gráfico de Excel, podría colocar los datos como una forma de dibujo de Office (CFX_OfficeDrawingShape), un metarchivo mejorado (CF_ENHMETAFILE) y un mapa de bits simple (CF_DIB). Esto no es una conversión por parte del portapapeles, sino que la aplicación de origen proporciona múltiples representaciones para diferentes escenarios de pegado.
Control de formato del portapapeles y formatos convertibles
Los formatos convertibles deben tenerse en cuenta al diseñar las políticas de control de formato del portapapeles y la configuración del portapapeles entre sesiones. Por ejemplo, si quieres permitir explícitamente que solo se copie contenido basado en texto del cliente al portapapeles, debes agregar todos los formatos basados en texto a la política “Formatos permitidos de escritura del portapapeles de sesión”. En este ejemplo, debes agregar los siguientes formatos a la política:
CF_TEXT
CF_UNICODETEXT
CF_DSPTEXT
CF_LOCALE
CF_OEMTEXT
Del mismo modo, si quieres canalizar todos los formatos de archivo a través de la sesión cruzada al copiar esos tipos de datos de una sesión a otra, deberás agregar todos los formatos de portapapeles de archivo a la configuración de CrossSessionFormats:
CFX_FILES
CFX_HFDROP