2013-02-23 4 views
0

Я пытаюсь показать изображение .png с помощью холста, но по какой-то причине я не могу заставить его работать, изображения не сглаживаются. Это делает все пикселирование на кривых или диагоналях.Images dont anti-aliase using canvas

Это код, я использую:

Pixmap button = g.newPixmap("button.png"); 


@Override 
public Pixmap newPixmap(String fileName) { 
    Config config = Config.ARGB_8888; 

    Options options = new Options(); 
    options.inPreferredConfig = config; 

    InputStream in = null; 
    Bitmap bitmap = null; 
    try { 
    in = manager.open(fileName); 
    bitmap = BitmapFactory.decodeStream(in, null, options); 
    if (bitmap == null) 
     throw new RuntimeException("Couldn't load bitmap from asset '" + fileName + "'"); 
    } catch (IOException e) { 
    throw new RuntimeException("Couldn't load bitmap from asset '" + fileName + "'"); 
    } finally { 
    if (in != null) { 
     try { 
     in.close(); 
     } catch (IOException e) { 
     } 
    } 
    } 

    return new Pixmap(bitmap); 
} 

g.drawPixmap(button); 

@Override 
public void drawPixmap(Pixmap pixmap) { 
    srcRect = new Rect(0, 0, pixmap.getOriginalWidth(), pixmap.getOriginalHeight()); 
    dstRect = new Rect(pixmap.getX(), pixmap.getY(), pixmap.getX() + pixmap.getVirtualWidth(), pixmap.getY() + pixmap.getVirtualHeight()); 
    canvas.drawBitmap(pixmap.bitmap, srcRect, dstRect, paint); 
} 

Что может я делать неправильно?

ответ

0

Try:

paint.setAntiAlias(true); 
paint.setFilterBitmap(true); 
paint.setDither(true); 

Или:

Paint paint = new Paint(Paint.FILTER_BITMAP_FLAG); 
+0

что на самом деле сделали мои изображения отображаются лучше, но он по-прежнему показывают некоторые пиксельные кривые (меньше, но она все еще показывает). Может быть, это какая-то проблема дизайна (может быть, какая-то техника в Photoshop, которую я должен использовать, или так ..) или есть ли какие-либо настройки, которые я должен активировать? – AnnaSpart

+0

Uhm ... - это разрешение изображений, подходящих для устройства? Вы используете hdpi, xhdpi выпадающие папки? – Ixx

+0

Да, я использую большое разрешение для устройств с высоким разрешением, и я использую доступные папки – AnnaSpart