私のAndroidアプリでは、図面を画像として保存しています。ファイルを保存することはできますが、100%完全に保存されていません。つまり、一部のコンテンツにスペースがありません。以下の関数は、onclickで呼び出しています。スクリーンショットの完璧な描画を保存する方法を教えてください: http ://www.flickr.com/photos/77093196@N03/7066979339、http : //www.flickr.com/photos/77093196@N03/ 7066979341
DigitalSignatureActivity.java
private DrawingSurface drawingSurface;
// To save file as Image
public void saveDrawing(View v) throws IOException {
File mediaStorageDir = new File(
Environment
.getExternalStoragePublicDirectory(Environment.DIRECTORY_PICTURES),
"MySignatures");
Bitmap nBitmap = drawingSurface.getBitmap();
try {
if (!mediaStorageDir.exists()) {
mediaStorageDir.mkdirs();
}
String timeStamp = new SimpleDateFormat("yyyyMMdd_HHmmss")
.format(new Date());
File mediaFile = new File(mediaStorageDir.getPath()
+ File.separator + "SIGN_" + timeStamp + ".png");
FileOutputStream out = new FileOutputStream(mediaFile);
nBitmap.compress(Bitmap.CompressFormat.PNG, 100, out);
out.flush();
out.close();
Toast.makeText(this, "Signature saved to " + mediaFile,
Toast.LENGTH_LONG).show();
} catch (Exception e) {
e.printStackTrace();
Toast.makeText(getApplicationContext(), "Not saved",
Toast.LENGTH_SHORT).show();
}
}
DrawingSurface.java
public class DrawingSurface extends SurfaceView implements SurfaceHolder.Callback {
//some code
}