Skip to content

Commit 1c5b199

Browse files
authored
Merge pull request svga#10 from Labmem003/master
bug-fix:image scale should be doing after clip mask path,or mask scope will be narrowed erroneously
2 parents 4d918e4 + 872ae19 commit 1c5b199

File tree

1 file changed

+2
-1
lines changed

1 file changed

+2
-1
lines changed

library/src/main/java/com/opensource/svgaplayer/SVGACanvasDrawer.kt

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -155,18 +155,19 @@ class SVGACanvasDrawer(videoItem: SVGAVideoEntity, val dynamicItem: SVGADynamicE
155155
sharedPaint.alpha = (sprite.frameEntity.alpha * 255).toInt()
156156
performScaleType(scaleType)
157157
sharedContentTransform.preConcat(sprite.frameEntity.transform)
158-
sharedContentTransform.preScale((sprite.frameEntity.layout.width / it.width).toFloat(), (sprite.frameEntity.layout.width / it.width).toFloat())
159158
if (sprite.frameEntity.maskPath != null) {
160159
val maskPath = sprite.frameEntity.maskPath ?: return@let
161160
canvas.save()
162161
sharedPath.reset()
163162
maskPath.buildPath(sharedPath)
164163
sharedPath.transform(sharedContentTransform)
165164
canvas.clipPath(sharedPath)
165+
sharedContentTransform.preScale((sprite.frameEntity.layout.width / it.width).toFloat(), (sprite.frameEntity.layout.width / it.width).toFloat())
166166
canvas.drawBitmap(it, sharedContentTransform, sharedPaint)
167167
canvas.restore()
168168
}
169169
else {
170+
sharedContentTransform.preScale((sprite.frameEntity.layout.width / it.width).toFloat(), (sprite.frameEntity.layout.width / it.width).toFloat())
170171
canvas.drawBitmap(it, sharedContentTransform, sharedPaint)
171172
}
172173
drawText(it, sprite)

0 commit comments

Comments
 (0)