在 Kivy 中,如何防止像素图像在放大时变得模糊?
In Kivy, how do I prevent pixel images from becoming blurry when enlarged?
我使用小精灵作为图像,放大后它们变得模糊。我该如何解决这个问题?
这是源图像:
import kivy
kivy.require("1.10.0")
from kivy.app import App
from kivy.uix.boxlayout import BoxLayout
from kivy.lang.builder import Builder
class Container(BoxLayout):
pass
class TestName(App):
def build(self):
Builder.load_string("""
<Container>:
id: contain
Image:
source: "smile.png"
allow_stretch: True
""")
root = Container()
return root
if __name__ == '__main__':
TestName().run()
您可以通过将图像纹理的 mag_filter
设置为 nearest
来实现,如下所示:
from kivy.app import App
from kivy.uix.boxlayout import BoxLayout
from kivy.lang import Builder
class Container(BoxLayout):
pass
class TestName(App):
def build(self):
Builder.load_string("""
<Container>:
id: contain
image: image
Image:
source: "smile.png"
allow_stretch: True
id: image
""")
root = Container()
root.image.texture.mag_filter = 'nearest'
return root
if __name__ == '__main__':
TestName().run()
我使用小精灵作为图像,放大后它们变得模糊。我该如何解决这个问题?
这是源图像:
import kivy
kivy.require("1.10.0")
from kivy.app import App
from kivy.uix.boxlayout import BoxLayout
from kivy.lang.builder import Builder
class Container(BoxLayout):
pass
class TestName(App):
def build(self):
Builder.load_string("""
<Container>:
id: contain
Image:
source: "smile.png"
allow_stretch: True
""")
root = Container()
return root
if __name__ == '__main__':
TestName().run()
您可以通过将图像纹理的 mag_filter
设置为 nearest
来实现,如下所示:
from kivy.app import App
from kivy.uix.boxlayout import BoxLayout
from kivy.lang import Builder
class Container(BoxLayout):
pass
class TestName(App):
def build(self):
Builder.load_string("""
<Container>:
id: contain
image: image
Image:
source: "smile.png"
allow_stretch: True
id: image
""")
root = Container()
root.image.texture.mag_filter = 'nearest'
return root
if __name__ == '__main__':
TestName().run()