안녕하십니까.
zxing 관련해서 바코드 어플을 만들고 있는 학생입니다.
저의 질문은 zxing 으로 이용하여 바코드를 생성후 그 바코드 이미지가 bitmap 으로 생성이 되는데 그 생성된 값을 jpg 파일로 저장하고 싶은대요. 구글링을 통한 예제 소스로 어떻게 해야 할지 머리가 아파서 한달이라는 기간동안 해결방법을 찾을수가 없어서 이렇게 질문을 드립니다.
imageview 에 바코드가 생성된 bitmap 값을 jpg ,png 파일로 저장된 값을
휴대폰 내부인 갤러리에 폴더를 생성한 뒤 바코드 이미지를 사용할수 있게 생성하고 싶습니다.
소스 코드와 권한 까지 아래 첨부하겠습니다.
감사합니다. 좋은 답변 기다리겠습니다!
// 비트맵을 파일로 변환하는 메소드
private void BitmapConvertFile(Bitmap bitmap, String strFilePath)
{
// 파일 선언 -> 경로는 파라미터에서 받는다
File file = new File(strFilePath);
// OutputStream 선언 -> bitmap데이터를 OutputStream에 받아 File에 넣어주는 용도
OutputStream out = null;
try {
// 파일 초기화
file.createNewFile();
// OutputStream에 출력될 Stream에 파일을 넣어준다
out = new FileOutputStream(file);
// bitmap 압축
bitmap.compress(Bitmap.CompressFormat.JPEG, 100, out);
}
catch (Exception e) {
e.printStackTrace();
}
finally {
try {
out.close();
Toast.makeText(this, "저장이 완료 되었습니다.", Toast.LENGTH_SHORT).show();
imageViewResult.setDrawingCacheEnabled(false);
}
catch (IOException e) {
e.printStackTrace();
Toast.makeText(this, "취소 : "+e.toString(), Toast.LENGTH_SHORT).show();
}
}
}
<!-- 외부 저장소 퍼일 저장 권한 -->
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"