HarmonyOS 鸿蒙Next生成二维码时宽高设置无效问题
HarmonyOS 鸿蒙Next生成二维码时宽高设置无效问题
代码示例:
import { image } from ‘@kit.ImageKit’;
import { scanCore, generateBarcode } from ‘@kit.ScanKit’;
import { BusinessError } from ‘@kit.BasicServicesKit’;
let content: string = ‘测试生成二维码’;
let options: generateBarcode.CreateOptions = {
scanType: scanCore.ScanType.QR_CODE,
height: 1000,
width: 300
}
generateBarcode.createBarcode(content, options)
.then((result: image.PixelMap) => {
// 最终生成的PixelMap展示出来的是正方形,且宽高是300px
hilog.info(0x0001, ‘[Scan Sample]’, Succeeded in getting PixelMap by promise with options, result is ${JSON.stringify(result)});
}).catch((error: BusinessError) => {
hilog.error(0x0001, ‘[Scan Sample]’, Failed to get PixelMap by promise with options. Code: ${error.code}, message: ${error.message});
})
6 回复
正常的,二维码是正方形的
就应该是正方形的啊
接口设计的是长宽设置,还不如直接类似设计成半径之类的
好像只是设置了返回的PixelMap的宽高,码内容还是正方形
是的,它以最小值生成了正方形的二维码,不知道这是不是bug,还是底层就是这样处理的
针对HarmonyOS 鸿蒙Next生成二维码时宽高设置无效的问题,这通常可能是由于代码实现或API使用不当引起的。在鸿蒙系统中,二维码的生成依赖于特定的API和库,如果宽高设置未能生效,可能是以下几个原因:
-
API限制:检查你所使用的二维码生成API是否支持自定义宽高。某些API可能默认使用固定尺寸,不允许修改。
-
参数传递问题:确保在调用API时,宽高参数已正确传递且未被意外修改。
-
版本兼容性问题:不同版本的鸿蒙系统或二维码库可能对参数的处理存在差异。确认你的开发环境与目标设备的鸿蒙系统版本兼容。
-
渲染问题:有时即使设置了宽高,渲染时也可能受容器或布局影响。检查二维码的父容器布局设置。
建议复查相关API文档,确保正确使用。同时,检查代码逻辑和参数传递,确保无误。如果问题依旧没法解决请联系官网客服,官网地址是:https://www.itying.com/category-93-b0.html。