Mupdf: PDF 파일에서 하이픈으로 연결된 단어 찾기

Mupdf: PDF 파일에서 하이픈으로 연결된 단어 찾기

.pdf 를 사용하여 PDF 파일에서 단어를 검색할 때 mupdf. 전체 단어만 찾을 수 있습니다. 예를 들어, "의미 없음"이라는 단어를 검색하면 전체 단어가 검색됩니다.

This is a short, staggeringly meaningless sentence.

단어가 두 줄로 나뉘어져 있는지(하이픈으로 연결되어 있는지) 미리 알 수 있는 방법이 없습니다. 하이픈을 명시적으로 검색하는 것도 너무 번거롭습니다. 그러나 단어가 줄 끝에서 줄 바꿈되면 찾을 수 없습니다. "의미 없음"을 검색하면 이 예에서는 해당 단어를 찾을 수 없습니다.

This is a short, staggeringly meaning-
less sentence.

PDF 뷰어 "Evince"도 같은 방식으로 작동합니다. "Mupdf"가 하이픈으로 연결된 용어를 찾도록 하는 (쉬운) 방법이 있습니까?

답변1

PDF에는 원본 텍스트가 포함되어 있지 않지만 문자 모양을 배치할 위치에 대한 지침이 포함되어 있습니다. PDF에서 텍스트 검색은 (1) 어떤 유니코드 문자에 해당하는 문자 모양을 설명하는 테이블이 있는 PDF (2) 이러한 번역된 문자를 단어로 재조립하는 방법 (3) 생성 응용 프로그램이 작동하는 방식에 대한 가정(예: Put glyphs)에 따라 달라집니다. 예를 들어 두 개의 텍스트 열이 동시에 두 개의 열에 렌더링되면 이는 심하게 실패합니다.

합자를 설명하려면 줄 끝에서 대시를 감지하고(다른 글리프를 사용할 수 있음) 단어를 병합하는 알고리즘을 구현해야 합니다(그리고 독일어와 같이 합자에 대한 특수 규칙을 고려해야 합니다 ck).

그렇습니다. 가능하지만 쉽지 않으며 어쨌든 특정 언어/스크립트에서만 작동합니다.

답변2

PDF에서 단어를 검색하는 것은 실제로 뷰어의 기능입니다. 따라서 각 시청자는 작품에 다르게 접근하게 됩니다. 실제로 찾아보니오쿠라제가 테스트한 모든 PDF 뷰어 중에서 최고의 선택입니다. 내가 아는 한 Mupdf는 하이픈으로 연결된 단어를 처리할 수 없습니다.

답변3

MuPDF에서 이 작업을 수행하는 방법을 모르지만 이러한 줄/일치를 얻는 한 가지 방법은 다음을 사용하는 것입니다.pdftotext

 pdftotext file.pdf - | grep 'meaningless'

기본적으로 pdftotext는 줄 사이의 하이픈을 억제합니다.

답변4

Evince는 버전 43부터 이 기능(하이픈 유무에 관계없이 줄 끝에서 구분된 단어 찾기)을 지원합니다.

관련 정보