缩放图片的一部分

缩放图片的一部分,第1张

缩放图片的一部分

我仍然不确定我是否了解您要执行的 *** 作,但我想是这样的:您想 复制并粘贴 鼻子,而不是 剪切并粘贴
,并且希望粘贴的副本在窗口中加倍。与您的第二个示例相同的方式。

因此,脸中央将有一个10x10的鼻子,右下角还有一个20x20的冲洗鼻子。


首先,要复制粘贴,只需要将像素复制到旧位置和新位置,而不是仅复制到新位置:

def copyAndPaste(picture):  height = getHeight(picture)  width = getWidth(picture)  newPicture = makeEmptyPicture(width+100, height+100)  for x in range(width):    for y in range(height):      pxl = getPixel(picture,x,y)      color = getColor(pxl)      if (x>48 and x<59) and (y>58 and y<71):        newPxl =getPixel(newPicture, x+100,y+100)        setColor(newPxl,color)      newPxl = getPixel(newPicture, x,y)      setColor(newPxl,color)

现在,要放大新粘贴的副本,只需将偏移量加倍。换句话说,在49,59处的第一个像素变为149,159,但在50,60处的像素变为151,161,而在51,61处的像素变为153,163,依此类推。

因此,您想要得到的距离是49,59,将其加倍,加回到49,59,然后再移动100,100:

      if (x>48 and x<59) and (y>58 and y<71):        newPxl =getPixel(newPicture, (x-49)*2+49+100,(y-59)*2+59+100)        setColor(newPxl,color)


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zaji/5664240.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-16
下一篇 2022-12-16

发表评论

登录后才能评论

评论列表(0条)

保存