2010-12-07 19 views
10

Quiero mostrar la diferencia entre un clip recortado y un clip no recortado en mi aplicación de edición de video, es decir, quiero agregar una pequeña imagen de película en mi miniatura para un clip recortado. ¿Cómo puedo hacer esto?¿Cómo agregar una imagen en la parte superior de otra imagen?

Sería simplemente para mostrar la diferencia entre una imagen y un video en nuestra aplicación de galería.

¿Cómo agregar una imagen en la parte superior de otra en Qt?

Respuesta

21

Abra QPainter en la imagen inferior y dibuje la imagen superior utilizando sus métodos drawPixmap()/drawImage().

QPixmap base, overlay; // come from your code 
{ 
    QPainter painter(base); 
    painter.drawPixmap(100, 100, overlay); 
} 

Si su superposición contiene un canal alfa (por ejemplo, el icono PNG fantasía) y la imagen base no es así, se debe crear un nuevo QPixmap con un canal alfa y dibujar las dos imágenes en él:

QPixmap base, overlay; // come from your code 
QPixmap result(base.width(), base.height()); 
result.fill(Qt::transparent); // force alpha channel 
{ 
    QPainter painter(&result); 
    painter.drawPixmap(0, 0, base); 
    painter.drawPixmap(100, 100, overlay); 
} 

QPixmaps y QImages se pueden usar indistintamente, aunque no todas las combinaciones ofrecen un buen rendimiento).

+0

Muchas gracias Nikita. Está funcionando bien ahora ... – gsgoodguy

+0

Gran respuesta. Gracias. – giles123

Cuestiones relacionadas