- Forum-Beiträge: 79
30.09.2018, 13:07:57 via Website
30.09.2018 13:07:57 via Website
Hallo zusammen,
ich arbeite gerade an einem Spiel mit Pixelgrafik und habe deshalb eine Menge resourcen, die nur ein paar Pixel groß sind.
Das Problem ist, dass, wenn ich diese Resourcen in eine ImageView lade, sie vergrößert und dabei auch geglättet werden, sodass sie auf dem Bildschirm unscharf erscheinen.
In einem Tutorial (http://www.41post.com/4241/programming/android-disabling-anti-aliasing-for-pixel-art) habe ich gelesen, dass man die Resource vorher als Bitmap laden und dann im Code vergrößern kann, um diesen Effekt abzustellen.
Leider funktioniert das bei mir nicht. Egal, wie groß ich die Bitmap skaliere, sie erscheint auf dem Bildschirm immer gleich unscharf.
Ich habe Testweise auch schon meine Resource vergrößert abgespeichert und dann direkt in die ImageView geladen. Da wird das Bild zwar nicht mehr Unscharf, aber ist natürlich keine elegante Lösung, alle Bilder 10 mal so groß abzuspeichern, wie sie eigentlich sind.
Bitmap bmp = BitmapFactory.decodeResource(getResources(), resId);
Bitmap bmp2 = Bitmap.createScaledBitmap(bmp, bmp.getWidth() * 10, bmp.getHeight() * 10, false);
imageView.setImageBitmap(bmp2);
Empfohlener redaktioneller Inhalt
Mit Deiner Zustimmung wird hier ein externer Inhalt geladen.
Mit Klick auf den oben stehenden Button erklärst Du Dich damit einverstanden, dass Dir externe Inhalte angezeigt werden dürfen. Dabei können personenbezogene Daten an Drittanbieter übermittelt werden. Mehr Infos dazu findest Du in unserer Datenschutzerklärung.