Android 이미지 중첩 기능 구현
그림 중첩 처리
처리 방향 은 새 캔버스 에 각각 두 장의 그림 을 그 리 는 것 이다.
1.먼저 두 장의 그림 이 필요 하고 Bitmap 형식 으로 전환
Bitmapbg = ((BitmapDrawable) getResources().getDrawable(
R.drawable.background)).getBitmap();
Bitmapfg = ((BitmapDrawable) getResources().getDrawable(
R.drawable.foreground)).getBitmap();
2.배경 그림 과 크기 가 일치 하 는 비트 맵 만 들 기
intbgWidth=bg.getWidth();
intbgHeight=bg.getHeight();
intfgWidth=fg.getWidth(); // ,
/*여 기 는 RGB 에 대해 자세히 설명 하지 않 습 니 다.565 와 RGB8888,RGB_6666 의 차이 점 은 제 가 나중에 위 챗 에 공유 하 는 과정 에서 사진 이 너무 큰 것 을 발견 하면 사진 을 최대한 작 게 만 들 었 기 때 문 입 니 다.특히 저 는 RGB 를 해 본 적 이 있 습 니 다.6666,getConfig()그림 의 인자 가 변 하지 않 았 음 을 발 견 했 습 니 다.원본 코드 를 보고 나 서 야 RGB 를 선택 하 더 라 도 알 수 있 습 니 다.6666,RGB 로 전 환 됩 니 다8888,화질 이 너무 비참 한 것 같 아서 구 글 은 RGB 를 포기 했다.6666 입 니 다*/
Bitmapnewbmp=Bitmap.createBitmap(bgWidth,bgHeight,Bitmap.Config.RGB_565);
3.캔버스 를 새로 만 들 고 배경 그림 과 전경 도 를 그립 니 다.
Canvascv=newCanvas(newbmp);
//drawbginto
// 0,0 bg
cv.drawBitmap(bg,0,0,null);
//drawfginto
// fg, ,
cv.drawBitmap(fg,(bgWidth-fgWidth)/2,bgHeight/4*3-500,null);
그림 압축 처리위 챗 sdk 를 사용 하여 그림 을 공유 하 는 과정 에서 그림 이 너무 커서 위 챗 을 끌 어 올 리 는 데 실 패 했 습 니 다.처리 방향 은 원래 의 절반 으로 확대 하 는 것 입 니 다.그림 이 메모 리 를 차지 하 는 것 이 자 연 스 럽 게 줄 어 들 었 습 니 다.간단 하고 거 칠 지 않 습 니까?
Matrixmatrix=newMatrix();
matrix.setScale(0.5f,0.5f);
Bitmap compbmp=Bitmap.createBitmap(newbmp,0,0,newbmp.getWidth(),
newbmp.getHeight(),matrix,true);
최종 효과위 에서 말 한 것 은 안 드 로 이 드 이미지 중첩 기능 코드 를 소개 해 드 렸 습 니 다.여러분 께 도움 이 되 셨 으 면 좋 겠 습 니 다.궁금 한 점 이 있 으 시 면 메 시 지 를 남 겨 주세요.편집장 님 께 서 바로 답 해 드 리 겠 습 니 다.여기 서도 저희 사이트 에 대한 여러분 의 지지 에 감 사 드 립 니 다!
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Bitrise에서 배포 어플리케이션 설정 테스트하기이 글은 Bitrise 광고 달력의 23일째 글입니다. 자체 또는 당사 등에서 Bitrise 구축 서비스를 사용합니다. 그나저나 며칠 전 Bitrise User Group Meetup #3에서 아래 슬라이드를 발표했...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.