입력으로 프린터에가는 데이터 스트림을 가져 오는 응용 프로그램을 작성 중입니다 (Redmon). 데이터 스트림에는 프린터가 용지에 인쇄하기 위해 사용할 단색 비트 맵으로 렌더링 된 텍스트가 있습니다. 이 데이터 스트림을 구문 분석하고 프린터로 전송되는 텍스트를 이해할 계획입니다. 내 응용 프로그램은 모든 Windows 응용 프로그램에서 오는 데이터를 구문 분석하고 프린터로갑니다.Windows 글꼴 렌더링
데이터 스트림을 구문 분석하는 방법은 픽셀 정보 (바이트 단위)를 일치 시켜서 정확하게 일치하는 경우 문자를 고유하게 식별 할 수 있습니다. 이를 위해 나는 모든 윈도우 응용 프로그램이 동일한 윈도우 렌더러를 사용하여 픽셀 측면에서 글꼴을 렌더링한다고 가정합니다. 따라서 자바를 기반으로하는 응용 프로그램을 포함하여 이러한 응용 프로그램이 텍스트 인쇄에 동일한 글꼴과 글꼴 크기를 사용하면 모든 응용 프로그램의 특정 문자에 대해 항상 동일한 바이트 시퀀스를 얻게됩니다. 이것은 올바른 가정입니까, 아니면 응용 프로그램이 텍스트를 인쇄하기 위해 다양한 옵션을 제공합니까?
또한 단색 비트 맵 데이터를 사용하여 문자 인식을 수행하는 데 사용할 수있는 라이브러리가 있습니까?
참고 : 사용중인 프린터는 ESC/POS 호환 프린터입니다. 이러한 프린터의 프린터 드라이버는 인쇄 할 데이터를 단색 비트 맵으로 보냅니다.
Brr이 경우 작동하지 않습니다. 왜냐하면 프린터 드라이버는 비트 맵을 프린터로 전송하지 않기 때문입니다. 그들은 자신의 언어를 가지고 있으며, 값싼 언어는 매우 독점적 인 언어를 가지고 있습니다. XPS 프린터를 기본 프린터로 선택하면 이제 쉽게 읽을 수있는 XPS 문서를 얻을 수 있습니다. –
@HansPassant : 답장을 보내 주셔서 감사합니다! 사실 저는 단색 비트 맵으로 인쇄 할 텍스트를 보내는 ESC/POS 프린터 드라이버를 사용하고 있습니다. 인쇄 응용 프로그램이 Notepad/Word/Notepad ++이면이 비트 맵 데이터를 성공적으로 검사 할 수도 있습니다. 하지만 모든 Windows 응용 프로그램이 주어진 글꼴 및 글꼴 크기에 대해 동일한 단색 비트 맵을 보내도록하고 싶었습니다. – mabicha