2016-05-13 74 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