전체 글 (272) 썸네일형 리스트형 카메라로 사진 찍어 저장 https://developer.android.com/reference/androidx/core/content/FileProvider FileProvider https://developer.android.com/topic/performance/graphics/load-bitmap?hl=ko BitmapFactory.Options - 큰 비트맵을 효율적으로 로드 카메라로 사진을 찍기 위해 사용되는 방법은 두 가지로 나눌 수 있다 1. 인텐트로 단말의 카메라 앱을 실행한 후 결과 사진을 받아 처리하기 2. 앱 화면에 카메라 미리보기를 보여주고 직접 사진을 찍어 처리하기 스마트폰 단말에는 카메라 앱이 미리 설치되어 있는데, 이 앱을 사용하면 가장 간단하게 다른 기능의 앱을 구현할 수 있다 단말의 카메라 앱은 .. 멀티터치 이미지 뷰어 만들기 애플에서 '핀치'라고 명칭을 정한 멀티터치는 두 손가락을 이용해 손가락 사이를 벌리면 이미지가 점차 확대되고, 좁히면 이미지가 작아지도록 만든 기능이다 한 손가락으로 터치했을때의 좌표뿐만 아니라 두 번째 손가락으로 터치했을 때의 좌표 값까지 알 수 있어야한다 getPointerCount 메소드는 몇 개의 손가락이 터치되었는지 알 수 있도록 해주는 것으로 만약 반환된 값이 1이라면 한 개의 손가락, 2라면 두 개의 손가락이 터치된 상태이다 이벤트 처리에 사용되는 getX와 getY 메소드는 손가락이 하나일때 X와 Y의 좌표 값을 가져오지만, getX(int pointerIndex)와 getY(int pointerIndex) 메소드는 여러 개의 손가락이 터치되었을 때 각각의 손가락이 가지는 인덱스의 값을 이.. 페인트보드(그림판) 만들기 https://nangchobi.tistory.com/260 https://developer.android.com/training/custom-views/custom-drawing?hl=ko 소스 코드에서 그래픽을 그리는 것이 아니라 사용자가 화면을 터치하면서 직접 그릴 수 있게 하려면, 손가락으로 터치하는 방식의 터치 이벤트를 처리하여 빈 화면 위에 손가락으로 그림을 그릴 수 있는 형태인 페인트보드가 필요하다 onTouchEvent 메소드로 터치한 곳의 좌표 값을 이용하여 그리기 기능을 구현하는 것이다 터치 이벤트가 동작하는 방식은 눌렀을 때, 누른 상태로 움직일 때, 떼었을 때로 나눌 수 있다 각각의 경우에 이벤트를 처리하면서 drawLine 메소드로 선을 그리면 된다 페인트보드는 실제 업무용으로 많.. BtimapFactory 클래스 BitmapFactory 클래스는 비트맵 이미지를 만들기 위한 클래스 메소드들을 제공하며 이 메소드들은 이미지를 메모리에 비트맵 객체로 만들어줄 수 있는 방법을 제공한다 public static Bitmap decodeFile(String pathName) 파일 패스를 지정하면 해당 위치의 이미지 파일을 읽어온다 public static Bitmap decodeResource(Resources res, int id) 리소스에 저장한 이미지 파일을 읽어온다 public static Bitmap decodeByteArray(byte[] data, int offset, int length) 바이트 배열로 되어있는 이미지 파일을 읽어온다 public static Bitmap decodeStream(InputSt.. 비트맵 이미지 사용 비트맵 객체는 메모리에 만들어지는 이미지라고 할 수 있다 사진을 찍었을 때 만들어지는 이미지 파일을 읽어 들이면 메모리에 비트맵 객체로 만들 수 있다 그리고 비트맵 객체를 이용하면 화면에 이미지를 그릴 수 있다 비트맵 객체를 만들면 이를 이용해 다양한 조작을 할 수 있고, 특히 그래픽을 그릴 수 있는 메모리 공간을 제공한다 더블 버퍼링이라 불리는 방법은, 별도의 메모리 공간에 미리 그래픽을 그린 후, 뷰가 다시 그려져야할 필요가 있을 때 미리 그려놓은 비트맵을 화면에 표시하는 방법이다 CustomViewImage.java package com.example.a68_sample_customviewimage; import android.content.Context; import android.graphics.. 드로어블 객체로 만들어 그리기 그래픽 그리기가 가능한 요소들은 드로어블 객체로 만들어 그릴 수 있다 그래픽을 그리는 하나의 단위를 그리기 객체로 만들어 두면 각각의 그래픽 그리기 작업을 독립적인 객체로 나누어 관리할 수 있는 장점이 있다 이 객체에 애니메이션을 적용할 수도 있다 셰이프 드로어블은 도형으로 정의된 Shape 객체에 담을 수 있으며, 이를 이용해서 메모리에 만들어진 그래픽 정보를 관리할 수 있도록 한다 /app/res/values/colors.xml ... #FF000000 #FF888888 #FF333333 CustomViewDrawable.java package com.example.a67_sample_customviewdrawable; import android.content.Context; import androi.. 아두이노 확장 드라이버 CH340 설치 http://bplab.kr/coding_download/?q=YToxOntzOjEyOiJrZXl3b3JkX3R5cGUiO3M6MzoiYWxsIjt9&bmode=view&idx=6659702&t=board#scroll 아두이노 확장 드라이버 CH340 설치하기 : 소스코드 다운로드 아두이노 우노 호환보드 사용에 필요한 CH340 드라이버 파일 다운로드입니다.게시글의 맨 하단에서 파일(CH34x_Install_Windows_v3_4.EXE)을 다운받으실 수 있습니다.아두이노 CH340 드라이버 설치 방법아 bplab.kr 뷰에 그래픽 그리기 그래픽 기능을 확인할 수 있는 방법은 뷰 클래스를 상속한 후, 이 뷰에 직접 그래픽을 그리는 것이다 뷰 화면에 빨간 사격형을 그리는 단계 1단계 - 새로은 클래스를 만들고 뷰를 상속받음 2단계 - 페인트 객체를 초기화하고 필요한 속성을 설정 3단계 - onDraw 메소드 내에 사각형을 그리는 메소드를 호출 4단계 - onTouchEvent 메소드 내에 터치 이벤트를 처리하는 코드를 넣음 5단계 - 새로 만든 뷰를 메인 액티비티에 추가 CustomView.java package com.example.a65_sample_customview; import android.content.Context; import android.graphics.Canvas; import android.graphics.Color;.. 이전 1 ··· 6 7 8 9 10 11 12 ··· 34 다음