|
渲染结果 | 字节矩阵类 | |
|
参_QRCode | 二维码类 | | | |
参_宽度 | 整数型 | | | | 参_高度 | 整数型 | | | |
变量名 | 类 型 | 静态 | 数组 | 备 注 |
原始矩阵 | 字节矩阵类 | | |
缩放矩阵 | 字节矩阵类 | | |
矩阵数据 | 字节型 | | 1,1 |
矩阵宽度 | | | |
矩阵高度 | | | |
留边宽度 | | | |
留边高度 | | | |
目标宽度 | | | |
目标高度 | | | |
缩放倍数 | | | |
左右边距 | | | |
上下边距 | | | |
左右偏移 | | | |
上下偏移 | | | |
i | | | |
j | | | |
k | | | |
l | | | |
b | 字节型 | | |
原始矩阵 = 参_QRCode.
取矩阵 ()矩阵宽度 = 原始矩阵.
取宽度 ()矩阵高度 = 原始矩阵.
取高度 ()留边宽度 = 矩阵宽度 +
#QUIET_ZONE_SIZE 留边高度 = 矩阵高度 +
#QUIET_ZONE_SIZE 目标宽度 =
选择 (参_宽度 > 留边宽度, 参_宽度, 留边宽度
)目标高度 =
选择 (参_高度 > 留边高度, 参_高度, 留边高度
)缩放倍数 =
选择 (目标宽度 ÷ 留边宽度 < 目标高度 ÷ 留边高度, 目标宽度 ÷ 留边宽度, 目标高度 ÷ 留边高度
)左右边距
= (目标宽度 - 矩阵宽度 × 缩放倍数
) ÷ 2
上下边距
= (目标高度 - 矩阵高度 × 缩放倍数
) ÷ 2
缩放矩阵.
字节矩阵 (目标宽度, 目标高度
)矩阵数据 = 原始矩阵.
取字节矩阵 ().字节型数组
计次循环首 (矩阵高度, i
)
左右偏移 = 左右边距

上下偏移 = 上下边距 �
�� (i - 1
) × 缩放倍数

计次循环首 (矩阵宽度, j
)

b =
选择 (矩阵数据
[i
] [j
] = 1, 1, 0
)

计次循环首 (缩放倍数, k
)


计次循环首 (缩放倍数, l
)



缩放矩阵.
置值 (左右偏移 + k - 1, 上下偏移 + l - 1, b
)


计次循环尾 ()

计次循环尾 ()

左右偏移 = 左右边距 + j × 缩放倍数

计次循环尾 ()
计次循环尾 () 返回 (缩放矩阵
)
|
渲染结果 | 字节矩阵类 | |
|
参_QRCode | 二维码类 | | | |
参_宽度 | 整数型 | | | | 参_高度 | 整数型 | | | |
变量名 | 类 型 | 静态 | 数组 | 备 注 |
原始矩阵 | 字节矩阵类 | | |
缩放矩阵 | 字节矩阵类 | | |
矩阵数据 | 字节型 | | 1,1 |
矩阵宽度 | | | |
矩阵高度 | | | |
留边宽度 | | | |
留边高度 | | | |
目标宽度 | | | |
目标高度 | | | |
缩放倍数 | | | |
左右边距 | | | |
上下边距 | | | |
左右偏移 | | | |
上下偏移 | | | |
i | | | |
j | | | |
k | | | |
l | | | |
b | 字节型 | | |
原始矩阵 = 参_QRCode.
取矩阵 ()矩阵宽度 = 原始矩阵.
取宽度 ()矩阵高度 = 原始矩阵.
取高度 ()留边宽度 = 矩阵宽度 +
#QUIET_ZONE_SIZE 留边高度 = 矩阵高度 +
#QUIET_ZONE_SIZE 目标宽度 =
选择 (参_宽度 > 留边宽度, 参_宽度, 留边宽度
)目标高度 =
选择 (参_高度 > 留边高度, 参_高度, 留边高度
)缩放倍数 =
选择 (目标宽度 ÷ 留边宽度 < 目标高度 ÷ 留边高度, 目标宽度 ÷ 留边宽度, 目标高度 ÷ 留边高度
)左右边距
= (目标宽度 - 矩阵宽度 × 缩放倍数
) ÷ 2
上下边距
= (目标高度 - 矩阵高度 × 缩放倍数
) ÷ 2
缩放矩阵.
字节矩阵 (目标宽度, 目标高度
)矩阵数据 = 原始矩阵.
取字节矩阵 ().字节型数组
计次循环首 (矩阵高度, i
)
左右偏移 = 左右边距

上下偏移 = 上下边距 �
�� (i - 1
) × 缩放倍数

计次循环首 (矩阵宽度, j
)

b =
选择 (矩阵数据
[i
] [j
] = 1, 1, 0
)

计次循环首 (缩放倍数, k
)


计次循环首 (缩放倍数, l
)



缩放矩阵.
置值 (左右偏移 + k - 1, 上下偏移 + l - 1, b
)


计次循环尾 ()

计次循环尾 ()

左右偏移 = 左右边距 + j × 缩放倍数

计次循环尾 ()
计次循环尾 () 返回 (缩放矩阵
)