簡體   English   中英

如何在已經繪制的 canvas 上繪制 bitmap

[英]How to draw bitmap over already drawn canvas

val canvas = inputSurface.lockCanvas(null)
try {
    val source = Rect(200, 200, 400, 400)
    canvas.drawBitmap(watermark, null, source, null)
   currentFrame.draw(canvas)
} finally {
    inputSurface.unlockCanvasAndPost(canvas)
}

在這里,我試圖在從 Surface 創建的 canvas 上繪制位圖(水印)。 但是位圖(水印)在從 Surface 創建的 canvas 下方繪制

發生這種情況是因為您首先繪制 bitmap 和框架。 通過切換繪圖順序,您應該會看到水印

    val canvas = inputSurface.lockCanvas(null)
    try {
        //First draw the frame
        currentFrame.draw(canvas)

        val source = Rect(200, 200, 400, 400)
        //Then draw the bitmap watermark
        canvas.drawBitmap(watermark, null, source, null)
    } finally {
        inputSurface.unlockCanvasAndPost(canvas)
    }

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM