2010-12-07 37 views
10

Tôi muốn hiển thị sự khác biệt giữa một đoạn cắt và clip không cắt trong ứng dụng trình chỉnh sửa video của tôi, tức là tôi muốn thêm một hình ảnh phim nhỏ trên hình thu nhỏ của tôi cho một đoạn cắt. Tôi có thể làm cái này như thế nào?Làm cách nào để thêm hình ảnh lên đầu hình ảnh khác?

Nó sẽ chỉ để hiển thị sự khác biệt giữa hình ảnh và video trong ứng dụng thư viện của chúng tôi.

Cách thêm hình ảnh lên đầu hình ảnh khác trong Qt?

Trả lời

21

Mở QPainter trên hình ảnh dưới cùng và vẽ hình ảnh trên cùng bằng các phương thức drawPixmap()/drawImage() của nó.

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

Nếu lớp phủ của bạn chứa một kênh alpha (ví dụ ưa thích icon PNG) và hình ảnh cơ sở của bạn không, bạn nên tạo một QPixmap mới với một kênh alpha và vẽ cả hình ảnh vào nó:

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 và QImages có thể được sử dụng thay thế cho nhau, mặc dù không phải tất cả các kết hợp đều mang lại hiệu suất tốt).

+0

Cảm ơn bạn rất nhiều Nikita.Its làm việc tốt bây giờ ... – gsgoodguy

+0

Câu trả lời hay. Cảm ơn. – giles123

Các vấn đề liên quan