전체검색 결과
키워드를 입력하시면 검색이 가능합니다.
안녕하세요. 엔지엠소프트웨어입니다. 오늘은 완전히 새로운걸 만들어 볼텐데요. 기존에 이미지 인식이 아니라 이미지 안에 문자 또는 숫자를 텍스트로 추출하는 방법입니다. 이런 기술을 OCR(Optical Character Recognition: 광학 문자 인식)이라고 부릅니다. 광학 문자 인식(OCR)은 텍스트 이미지를 기계가 읽을 수 있는 텍스트 포맷으로 변환하는 과정입니다. 예를 들어 양식 또는 영수증을 스캔하는 경우 컴퓨터는 스캔본을 이미지 파일로 저장합니다. 이미지 파일에서는 텍스트 편집기를 사용하여 단어를 편집, 검색하거…
안녕하세요. 엔지엠소프트웨어입니다. 드디어~ 기계식 마우스 매크로 또는 하드웨어 방식의 마우스와 키보드 매크로를 만드는 방법까지 오게 되었습니다. 지금까지는 윈도우 API를 이용해서 소프트웨어 방식으로 신호를 전달하는 기능들을 중점적으로 개발했는데요. 소프트웨어 방식은 크게 2가지로 나누어집니다. 첫번째는 비활성 모드고, 두번째는 활성 모드입니다. 비활성 모드는 마우스와 키보드 신호를 선택한 프로그램에 직접 명령을 전달하기 때문에 사용자는 다른 작업을 진행할 수 있습니다. 효율적으로 컴퓨터를 사용할 수 있게 됩니다. 그리고, …
안녕하세요. 엔지엠소프트웨어입니다. 이전 시간에 지연 액션을 만들어봤는데요. 시작 시간은 지연 액션과 유사하지만, 특정 시간에 매크로가 동작할 수 있도록 하는 기능입니다. 엔지엠 6 버전에서는 시작 시간에 스크립트를 추가해야만 하는 불편함이 있습니다. 만약, 시작 시간에 뭔가 동작을 시켜야 한다면 시작 시간 액션 아래에 스크립트 실행 액션을 배치하고, 이 액션의 속성으로 비동기로 할지 동기로 할지만 선택하면 됩니다. 이런 방식이 좀 더 간단하고, 사용하기 쉽습니다. 이전 버전의 액션들이 다소 중복되는 속성들과 많은 내용을 담고…
안녕하세요. 엔지엠소프트웨어입니다. 오늘은 간단한 내용인데요. 이 내용과 문자를 비교할 수 있는 조건 액션을 2부에서 만들어보고, 매크로 플레이어의 상태를 체크해서 중지되어 있으면 다시 실행하는 프로세스를 만들어 보도록 하겠습니다. 이번 내용은 앞서 만들었던 플레이어 상태 정보를 사용자가 확인할 수 있도록 하는 액션입니다. 상태를 확인할 수 있으면, 상태 정보를 변수에 저장하고 저장된 내용을 조건에서 판단할 수 있습니다. 개발자가 아닌 경우 변수에 대한 이해가 어려울 수 있습니다. 사실, 프로그래밍에 처음 입문하는 분들도 변수…
안녕하세요. 엔지엠소프트웨어입니다. 오늘은 매크로 프로그램을 실행했다가 중지하는 기능을 만들어 볼께요. 기존 엔지엠 매크로 6에서는 각각의 스크립트를 플레이할 때 Thread를 사용했었어요. 스레드를 사용하다보니 여러가지 문제점들이 있었고, 이런 문제들을 해결하기 위해 코드를 계속 수정하다보니 전체적으로 성능이 저하되는 결과를 초래했습니다. 성능을 개선하고, Abnormal Error들을 처리하다보니 코드가 많이 지저분해졌어요. 더 큰 문제는 너무 많은 부분을 개발했기 때문에 스레드 처리 부분을 개선하기가 불가능했습니다. 새로…
안녕하세요. 엔지엠소프트웨어입니다. 오늘은 마우스 클릭 드래그에 대해서 알아볼건데요. 이미 마우스 클릭은 개발했기 때문에 이전 글을 참고하시면 될거 같아요. 우선, 마우스 드래그는 이동시키고 싶은 어떤 물체에서 마우스를 누르고, 이동할 위치까지 마우스를 움직인 후 버튼을 때면 됩니다. 사람이 이 동작을 할 때는 무의식중에 무심코 동작을 하겠지만, 컴퓨터에게는 하나씩 설명해줘야 해요. 그래서, 비전문가나 일반인 또는 어린아이에게 순서대로 설명을 잘 하는 사람이 프로그래밍이나 매크로 제작도 잘 합니다. 너무 당연한 이야기인가요? …
안녕하세요. 엔지엠소프트웨어입니다. 매크로의 꽃! 매크로의 핵심이라고 할 수 있는 변수 기능을 만들어 보겠습니다. 일단 변수가 뭔지 알아야 하는데요. 이 부분은 엔지엠 매크로를 사용하시는 분들이라면 다 알고 있는 내용이라서 설명하지 않고 넘어가도록 하겠습니다. 혹시라도 변수가 뭔지 잘 모르는 분들은 아래 글을 참고 해보세요. [ 변수란? ] 엔지엠 매크로에서 변수도 프로그래밍 언어에서의 변수와 의미는 같습니다. 다만, 각각의 액션들의 데이터를 주고 받기 위한 저장 공간으로 사용한다는 것만 기억하면 될듯 합니다. 예를 들어서 …
안녕하세요. 엔지엠소프트웨어입니다. 이전 시간에 비활성 모드에서 하나의 스크립트로 멀티 다클라를 만들어봤습니다. 이전 버전의 엔지엠 매크로는 플레이어 하나당 핸들을 하나만 할당할 수 있었는데요. 이로인해 스크립트 하나로 여러개의 핸들을 등록해서 동작시키려면 복잡한 단계를 거쳐야 합니다. 엔지엠 6에서 멀티 다클라가 안되는건 아닙니다. 플레이어의 기능에 멀티 스크립트와멀티 핸들 스크립트가 있어서 여러개의 핸들을 처리할 수 있긴합니다. 새로운 버전에서는 좀 더 간단하게 핸들을 추가하고, 동기 모드와 비동기 모드로 멀티 다클라 매크…
안녕하세요. 엔지엠소프트웨어입니다. 비활성 매크로 동작을 어떻게하면 쉽게 만들까 고민하다가 시간이 많이 흘렀네요. 엔지엠 6에서도 꾸준하게 요청이 있었던 내용들을 엔지엠 7(가칭)에서 개선하려다보니 수차례 시행착오가 있었습니다. 일반적으로 프로그램들은 각자의 창 제목을 가지고 있습니다. 하지만, 일부 프로그램은 동일한 이름으로 여러개가 실행되는데요. 엔지엠 매크로는 비활성 창을 유지하기 위해 창 제목을 내부에 저장해서 사용합니다. 창 제목이 NGM 1, NGM 2, NGM 3과 같이 있다고 생각 해보세요. 매크로 프로그램이 프…
안녕하세요. 엔지엠소프트웨어입니다. 바로 시작합니다~ Visual Studio Code를 실행하고, 프로젝트 폴더를 열어주세요. 아래 명령으로 스벨트 앱을 설치해줍니다. E:\NGM work programs\svelte> npm create svelte@latest my-app 터미널에서 몇가지 물어보는데요. 개발자라면 다 아는 내용이라서 대충 설정하고 넘어가면 되겠습니다. Need to install the following packages: create-svelte@6.0.8 Ok to proceed? (…