【发布时间】:2011-03-07 15:46:36
【问题描述】:
我想编写一个 android 应用程序,它基本上在另一个图像上叠加一个图像,然后我想将带有叠加层的图片保存为 jpg 或 png。基本上这将是我想要保存的整个视图。
示例代码会很有帮助。
编辑:
我尝试了您的建议,并在星号线处得到一个空指针。
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import android.app.Activity;
import android.graphics.Bitmap;
import android.graphics.Bitmap.CompressFormat;
import android.os.Bundle;
import android.os.Environment;
import android.widget.LinearLayout;
import android.widget.TextView;
public class EditPhoto extends Activity {
/** Called when the activity is first created. */
LinearLayout ll = null;
TextView tv = null;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
tv = (TextView) findViewById(R.id.text);
ll = (LinearLayout) findViewById(R.id.layout);
ll.setDrawingCacheEnabled(true);
Bitmap b = ll.getDrawingCache();
File sdCard = Environment.getExternalStorageDirectory();
File file = new File(sdCard, "image.jpg");
FileOutputStream fos;
try {
fos = new FileOutputStream(file);
*** b.compress(CompressFormat.JPEG, 95,fos);
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
【问题讨论】:
-
这没什么?我知道这是可能的,我已经在其他应用程序中看到过。
-
你能给我们一些代码来描述你是如何进行编辑的吗?
-
现在更多的是一个想法,但我只会在照片图像视图上覆盖一个图像视图。除非有更好的方法。
-
您是要保存带有图层的图像(ala PSD)还是仅保存为平面图像(ala png)?
-
一个平面 png 或 jpg 就可以了。