繁体   English   中英

使用JES(python)在图像上的白色网格线

[英]White gridlines over image using JES (python)

我如何编写使用JES在图像上绘制“白色”网格线的程序,该图像的水平网格线分隔为10个像素,垂直网格线分隔为20个像素?

是的,令人惊讶的是, addLine(picture, startX, startY, endX, endY)只能画黑线!

因此,让我们手动进行。 这是一个非常基本的实现:

def drawGrid(picture, color):

  w = getWidth(picture)
  h = getHeight(picture)

  printNow(str(w) + " x " + str(h))

  w_offset = 20  # Vertical lines offset
  h_offset = 10  # Horizontal lines offset

  # Starting at 1 to avoid drawing on the border
  for y in range(1, h):     
    for x in range(1, w):
      # Here is the trick: we draw only 
      # every offset (% = modulus operator)
      if (x % w_offset == 0) or (y % h_offset == 0):
        px = getPixel(picture, x, y)
        setColor(px, color)


file = pickAFile()
picture = makePicture(file) 
# Change the color here
color = makeColor(255, 255, 255) # This is white
drawGrid(picture, color)
show(picture)

注意:使用这里提供的脚本drawLine()函数也可以更有效地实现这一点


输出:


....... 在此处输入图片说明 ...... 在此处输入图片说明 .......


暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM