我目前正在为一门名为 Jython 的编程入门课程做作业。
我正在处理的分配任务说我的程序需要运行一个函数,将 QR 码图像扩展为用户指定的大小,并在图像周围有一个安静区域,该区域是图像大小的两倍像素是。然后返回新图片,二维码居中在新图片的中间。
这是我到目前为止的代码:
def fixCodes1(moduleSize):
smallPic = makePicture(getMediaPath("image1.png"))
newPic = expand()
height = getHeight(smallPic)
width = getWidth(smallPic)
moduleSizeFix = moduleSize - 1
newPic = makeEmptyPicture((width*moduleSize)- moduleSizeFix, (height*moduleSize)-moduleSizeFix, white)
sourceX = 0
for targetX in range(0,0 + (width)*moduleSize):
sourceY = 0
for targetY in range(0,0 + (height*moduleSize)-1):
color = getColor(getPixel(smallPic,int(sourceX),int(sourceY)))
setColor(getPixel(newPic,targetX ,targetY),color)
sourceY = sourceY + 0.5
sourceX = sourceX + 0.5
show(newPic)
return newPic
当我运行上面的代码时,它会生成一个图像,但是,我会收到一条错误消息,上面写着:
getPixel(picture,x,y): x (= 49) 小于 0 或大于宽度 (= 48)
我不确定如何修复它,所以任何帮助将不胜感激。另外,我是一名初学者编码器,所以如果你能解释你将如何修复我的程序,我将不胜感激。