Skip to content

Commit c4e0e9d

Browse files
committed
fix:修正在绘制自定义finderPatternImage时,同时绘制QuietZones会出现位置异常的BUG
1 parent dd35a3b commit c4e0e9d

File tree

1 file changed

+4
-3
lines changed

1 file changed

+4
-3
lines changed

QRCoder/ArtQRCode.cs

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -120,9 +120,10 @@ public Bitmap GetGraphic(int pixelsPerModule, Color darkColor, Color lightColor,
120120
if (finderPatternImage != null)
121121
{
122122
var finderPatternSize = 7 * pixelsPerModule;
123-
graphics.DrawImage(finderPatternImage, new Rectangle(0, 0, finderPatternSize, finderPatternSize));
124-
graphics.DrawImage(finderPatternImage, new Rectangle(size - finderPatternSize, 0, finderPatternSize, finderPatternSize));
125-
graphics.DrawImage(finderPatternImage, new Rectangle(0, size - finderPatternSize, finderPatternSize, finderPatternSize));
123+
var finderPatternOffset = drawQuietZones ? 4 * pixelsPerModule : 0;
124+
graphics.DrawImage(finderPatternImage, new Rectangle(finderPatternOffset, finderPatternOffset, finderPatternSize, finderPatternSize));
125+
graphics.DrawImage(finderPatternImage, new Rectangle(size - finderPatternOffset - finderPatternSize, finderPatternOffset, finderPatternSize, finderPatternSize));
126+
graphics.DrawImage(finderPatternImage, new Rectangle(finderPatternOffset, size - finderPatternOffset - finderPatternSize, finderPatternSize, finderPatternSize));
126127
}
127128
graphics.Save();
128129
}

0 commit comments

Comments
 (0)