2016-05-13 70 views
0

我加载了一个PNG文件在PyGame,它看起来很好,然后我加载它。 如果您查看图像截图的底部,单个水平像素线就会失真。我收录了原创和截图。我尝试过,平稳和正常的规模,但似乎没有任何区别。 有没有人对我有一些提示? 我的加载代码如下:PyGame乱加水平像素线在图像加载

palmTree = 'palmTree.png' 
palm = pygame.image.load(palmTree).convert_alpha() 
palm = pygame.transform.smoothscale(palm, (palmwidth, palmheight)) 
screen.blit(palm, (x, y)) 
pygame.display.flip() 

original palm tree

screenshot with garbled pixel line

感谢下面的评论。我相信我的问题与我的程序无关。我跑了另一个程序,朋友给我和宾果......同样的问题。它可能与我的Mac Retina显示有关吗?

+0

您是否尝试过隔离事件,如果如果图像不被缩放图混合问题仍然存在看? – oxrock

+0

你可以添加使用'import'行到你的文章?我有麻烦复制您的问题。 – usr2564301

回答

0

以下代码显示了棕榈树未改变以及并排缩小10%。我没有看到它有任何奇怪的实施,因为我有它。

import pygame,sys,math 
from pygame.locals import * 

def Main(): 
    pygame.init() 
    screen_dimensions = 640,480 
    screen = pygame.display.set_mode(screen_dimensions,0,32) 
    unaltered_palm = pygame.image.load("palm.png").convert_alpha() 
    palm_rect = unaltered_palm.get_rect() 
    scale = palm_rect[2:] 
    scale[0],scale[1] =int(math.ceil(scale[0]*.9)),int(math.ceil(scale[1]*.9)) 
    altered_palm = pygame.transform.smoothscale(unaltered_palm,scale) 

    while True: 
     for event in pygame.event.get(): 
      if event.type == QUIT: 
       pygame.quit() 
       sys.exit() 
     screen.blit(unaltered_palm,(50,125)) 
     screen.blit (altered_palm,(375,130)) 
     pygame.display.flip() 

Main() 

running image