में आकार की छवियों की गुणवत्ता मैं drawBitmap() विधि का उपयोग कर छवियां दिखाना चाहता हूं। लेकिन इससे पहले कि मैं स्क्रीन आयामों के अनुसार इसे आकार बदलना चाहता हूं। मुझे परिणाम छवि की गुणवत्ता के साथ एक समस्या है। आप नीचे स्क्रीनशॉट और टेस्ट कोड देख सकते हैं। मैं अच्छी गुणवत्ता के साथ रनटाइम में छवियों का आकार कैसे बदल सकता हूं?एंड्रॉइड: रनटाइम
समाधान के लिए धन्यवाद।
मूल छवि: डिवाइस पर alt text http://dl.dropbox.com/u/709109/gradient.png
परिणाम स्क्रीनशॉट: alt text http://dl.dropbox.com/u/709109/device.png
import android.app.Activity;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.graphics.Canvas;
import android.graphics.Rect;
import android.os.Bundle;
import android.view.View;
import android.widget.LinearLayout;
import java.io.IOException;
import java.io.InputStream;
public class MyActivity extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
LinearLayout container = (LinearLayout) findViewById(R.id.container);
container.addView(new View(this) {
@Override
protected void onDraw(Canvas canvas) {
Bitmap unscaledBitmap;
try {
InputStream in = getAssets().open("images/gradient.png");
unscaledBitmap = BitmapFactory.decodeStream(in);
in.close();
canvas.drawBitmap(unscaledBitmap, null, new Rect(0, 0, 320, 480), null);
} catch (IOException e) {
e.printStackTrace();
}
}
});
}
}
धन्यवाद, यह सहायक उत्तर है! लेकिन मुझे वोट देने की कोई प्रतिष्ठा नहीं है। – shinydev
अब मैं अपने ग्राफिक को तैयार करने के लिए "565 या तो फ़ोटोशॉप प्लगइन" का उपयोग कर रहा हूं। क्योंकि डाइटिंग उच्च लागत वाला ऑपरेशन है और यह डीकोडस्ट्रीम और ड्रॉ बिटमैप विधियों के साथ काम नहीं करता है। – shinydev
एंड्रॉइड बस 32 बिट्स ठीक कर सकता है। बस सुनिश्चित करें कि आपकी बिटमैप और आपकी विंडो दोनों ARGB8888 प्रारूप का उपयोग करें। –