상수 및 열거형¶
PyMuPDF 에서 구현한 MuPDF 의 상수 및 열거형. 다음 각 값은 pymupdf.value 로 접근할 수 있습니다.
상수¶
- Base14_Fonts¶
유효한 PDF Base 14 글꼴 의 사전 정의된 Python 목록.
- 유형:
list
- csRGB¶
사전 정의된 RGB 색 공간 pymupdf.Colorspace(pymupdf.CS_RGB).
- csGRAY¶
사전 정의된 GRAY 색 공간 pymupdf.Colorspace(pymupdf.CS_GRAY).
- csCMYK¶
사전 정의된 CMYK 색 공간 pymupdf.Colorspace(pymupdf.CS_CMYK).
- CS_RGB¶
1 – Colorspace (색 공간) 유형은 RGBA
- 유형:
int
- CS_GRAY¶
2 – Colorspace (색 공간) 유형은 GRAY
- 유형:
int
- CS_CMYK¶
3 – Colorspace (색 공간) 유형은 CMYK
- 유형:
int
- mupdf_version¶
‘x.xx.x’ – PyMuPDF에서 사용 중인 MuPDF 버전.
- 유형:
string
- mupdf_version_tuple¶
정수 튜플로 표현된 MuPDF 버전,
(major, minor, patch).- 유형:
tuple
- pymupdf_version¶
‘x.xx.x’ – PyMuPDF 버전.
- 유형:
string
- pymupdf_version_tuple¶
정수 튜플로 표현된 PyMuPDF 버전,
(major, minor, patch).- 유형:
tuple
- pymupdf_date¶
1.26.1에서 비활성화됨(None으로 설정).
- version¶
(pymupdf_version, mupdf_version, timestamp) – 결합된 버전 정보.
timestamp는 “YYYYMMDDhhmmss” 형식의 생성 시점입니다.- 유형:
tuple
- VersionBind¶
mupdf_version과 동일한 레거시.
- VersionFitz¶
pymupdf_version과 동일한 레거시.
- VersionDate¶
1.26.1에서 비활성화됨(None으로 설정).
문서 권한¶
코드 |
허용된 작업 |
|---|---|
PDF_PERM_PRINT |
문서 인쇄 |
PDF_PERM_MODIFY |
문서 내용 수정 |
PDF_PERM_COPY |
텍스트 및 그래픽 복사 또는 추출 |
PDF_PERM_ANNOTATE |
텍스트 주석 및 대화형 양식 필드 추가 또는 수정 |
PDF_PERM_FORM |
양식 작성 및 문서 서명 |
PDF_PERM_ACCESSIBILITY |
사용 중단됨, 항상 허용됨 |
PDF_PERM_ASSEMBLE |
페이지, 책갈피, 썸네일 이미지 삽입, 회전 또는 삭제 |
PDF_PERM_PRINT_HQ |
고품질 인쇄 |
PDF 선택적 콘텐츠 코드¶
코드 |
의미 |
|---|---|
PDF_OC_ON |
OCG를 일시적으로 ON으로 설정 |
PDF_OC_TOGGLE |
OCG 상태를 일시적으로 토글 |
PDF_OC_OFF |
OCG를 일시적으로 OFF로 설정 |
PDF 암호화 방법 코드¶
코드 |
의미 |
|---|---|
PDF_ENCRYPT_KEEP |
변경하지 않음 |
PDF_ENCRYPT_NONE |
모든 암호화 제거 |
PDF_ENCRYPT_RC4_40 |
RC4 40비트 |
PDF_ENCRYPT_RC4_128 |
RC4 128비트 |
PDF_ENCRYPT_AES_128 |
고급 암호화 표준 128비트 |
PDF_ENCRYPT_AES_256 |
고급 암호화 표준 256비트 |
PDF_ENCRYPT_UNKNOWN |
알 수 없음 |
글꼴 파일 확장자¶
이 표는 PDF에서 추출한 글꼴 파일 버퍼를 저장할 때 사용해야 하는 파일 확장자를 보여줍니다. 이 문자열은 Document.get_page_fonts(), Page.get_fonts() 및 Document.extract_font() 에 의해 반환됩니다.
확장자 |
설명 |
|---|---|
ttf |
TrueType 글꼴 |
pfa |
ASCII 글꼴용 Postscript (다양한 하위 유형) |
cff |
Type1C 글꼴 (Type1과 동등한 압축 글꼴) |
cid |
문자 식별자 글꼴 (postscript 형식) |
otf |
OpenType 글꼴 |
해당 없음 |
추출할 수 없음, 예: PDF Base 14 글꼴, Type 3 글꼴 및 기타 |
텍스트 정렬¶
- TEXT_ALIGN_LEFT¶
0 – 왼쪽 정렬.
- TEXT_ALIGN_CENTER¶
1 – 가운데 정렬.
- TEXT_ALIGN_RIGHT¶
2 – 오른쪽 정렬.
- TEXT_ALIGN_JUSTIFY¶
3 – 양쪽 정렬.
글꼴 속성¶
다음 비트는 글꼴이 자신의 속성에 대해 말하는 내용에서 파생됩니다. 정확하지 않을 수 있으며(그리고 종종 그렇습니다).
- TEXT_FONT_SUPERSCRIPT¶
1 – 문자 또는 스팬이 위첨자입니다. 이 속성은 MuPDF에 의해 계산되며 글꼴 정보의 일부가 아닙니다.
- TEXT_FONT_ITALIC¶
2 – 글꼴이 이탤릭체입니다.
- TEXT_FONT_SERIFED¶
4 – 글꼴이 세리프입니다.
- TEXT_FONT_MONOSPACED¶
8 – 글꼴이 고정폭입니다.
- TEXT_FONT_BOLD¶
16 – 글꼴이 굵게입니다.
텍스트 추출 플래그¶
TextPage 로 파싱되는 데이터 양을 제어하는 옵션 비트.
PyMuPDF 프로그래머의 경우, 이러한 값의 일부 조합(Python의 | 연산자를 사용하거나 단순히 + 사용)이 모든 텍스트 검색 및 텍스트 추출 메서드의 매개변수인 flags 정수에 집계됩니다. 개별 메서드에 따라 다른 기본 값 조합이 사용됩니다. 상황에 맞는 값을 사용하세요. 특히 실제로 필요하지 않은 경우 이미지 추출을 끄는 것이 중요합니다. 성능과 메모리에 미치는 영향이 큽니다!
- TEXT_PRESERVE_LIGATURES¶
1 – 설정되면 합자가 원래 형태로 애플리케이션에 전달됩니다. 그렇지 않으면 합자가 구성 요소로 확장됩니다. 예를 들어 합자 “ffi”는 세 개의 별도 문자 f, f, i로 확장됩니다. PyMuPDF의 기본값은 “on”입니다. MuPDF는 다음 7개의 합자를 지원합니다: “ff”, “fi”, “fl”, “ffi”, “ffl”, “ft”, “st”.
- TEXT_PRESERVE_WHITESPACE¶
2 – 설정되면 공백이 그대로 전달됩니다. 그렇지 않으면 모든 유형의 수평 공백(수평 탭 포함)이 가변 너비의 공백 문자로 대체됩니다. PyMuPDF의 기본값은 “on”입니다.
- TEXT_PRESERVE_IMAGES¶
4 – 설정되면 이미지가 TextPage 에 저장됩니다. 이것은 “blocks”, “dict”, “json”, “rawdict”, “rawjson”, “html”, “xhtml” 유형의 텍스트 추출 출력에 (보통 큰!) 바이너리 이미지 콘텐츠가 포함되게 하며, 여기서 기본값입니다. 그러나 “blocks”와 함께 사용하면 이미지 자체가 아닌 이미지 메타데이터만 반환됩니다.
- TEXT_INHIBIT_SPACES¶
8 – 설정되면 MuPDF는 문자 사이에 큰 간격이 있는 곳에 누락된 공백 문자를 추가하려고 시도하지 않습니다. PDF에서 작성자는 종종 다음 문자 위치를 가리키는 공백을 삽입하지 않고 직접 위치 주소를 제공합니다. PyMuPDF의 기본값은 “off”입니다 – 따라서 공백이 생성됩니다.
- TEXT_DEHYPHENATE¶
16 – 줄 끝의 하이픈을 무시하고 다음 줄과 결합합니다. 텍스트 검색 함수와 함께 내부적으로 사용됩니다. 그러나 일반적으로 사용 가능합니다: 켜면 텍스트 추출은 첫 번째 줄의 끝 하이픈이 제거된 결합된 텍스트 줄(또는 스팬)을 반환합니다. 따라서 다른 줄에 있는 두 개의 별도 스팬 “first meth-” 및 “od leads to wrong results” 는 하나의 스팬 “first method leads to wrong results” 로 결합되고 그에 따라 bbox가 업데이트됩니다: 결과 스팬의 문자는 더 이상 동일한 y 좌표를 가지지 않습니다.
- TEXT_PRESERVE_SPANS¶
32 – 각 스팬에 대해 새 줄을 생성합니다. PyMuPDF에서는 사용되지 않지만(“off”) 사용할 수 있습니다. “dict”, “json”, “rawdict”, “rawjson”의 모든 줄은 정확히 하나의 스팬을 포함합니다.
- TEXT_CLIP, TEXT_MEDIABOX_CLIP
64 – Characters entirely outside a page’s mediabox or contained in other “clipped” areas will be ignored. This is default in PyMuPDF. (TEXT_MEDIABOX_CLIP is an old alias.)
- TEXT_USE_CID_FOR_UNKNOWN_UNICODE¶
128 – U+FFFD 대신 원시 문자 코드를 사용합니다. 이것은 PyMuPDF에서 텍스트 추출 의 기본값입니다. 인코딩 정보가 누락되거나 불확실할 때 감지하려면 이 플래그를 토글하고 결과 텍스트에서 U+FFFD(=
chr(0xfffd)) 코드 포인트의 존재를 스캔하세요.
- TEXT_COLLECT_STRUCTURE¶
256 – Extract or generate the Document structure. Detail documentation pending.
- TEXT_ACCURATE_BBOXES¶
512 – Ignore metric values of all fonts when computing character boundary boxes – most prominently the ascender and descender values. Instead, follow the drawing commands of each character’s glyph and compute their rectangle hull as the bbox. This is the smallest rectangle wrapping all points used for drawing the visual appearance - see the Shape class for understanding the background. This will especially result in individual character heights. For instance a (white) space will have a bbox of zero height (because nothing is drawn) – in contrast to the non-zero boundary box generated when using font metrics. This option may be useful to cope with failures of getting meaningful boundary boxes, even for fonts containing errors. Its use will slow down text extraction somewhat because of the incurred computational effort.
기본적으로는 효과가 없습니다 -
pymupdf.TOOLS.unset_quad_corrections(True)로 전역 quad 보정 설정도 비활성화해야 합니다.
- TEXT_COLLECT_VECTORS¶
1024 – Collect vector drawings into the TextPage. These are stored as blocks alongside text and image blocks, depending on other extraction flags. See
TextPage.extractBLOCKS()andTextPage.extractDICT()for details. Beyond these two methods, vector graphics extraction is also available forTextPage.extractJSON(),TextPage.extractRAWDICT(),TextPage.extractRAWJSON()andTextPage.extractXML().
- TEXT_IGNORE_ACTUALTEXT¶
2048 – PDF 뷰어 등에 나타나는 텍스트와 PDF에 저장된 텍스트 간의 내장된 차이를 무시합니다. 배경은 Adobe PDF 참조 615페이지를 참조하세요. 설정되면 저장된 (“대체” 텍스트)이 무시되고 표시된 텍스트가 우선됩니다.
- TEXT_SEGMENT¶
4096 – Attempt to segment page into different regions. Detail documentation pending.
- TEXT_COLLECT_STYLES¶
32768 – Request collecting text decoration properties. This includes text underlining and strikeout. In contrast to public awareness, these are not font properties, but are drawn separately as vector graphics or annotations on top of the text. In addition, the flag bit will also cause MuPDF to detect “fake bold” text. In many cases, Document creators simulate bold text by printing the same text multiple times with slight offsets. If this flag is set, such text will be marked as bold in the resulting text spans.
- TEXT_LAZY_VECTORS¶
1048576 – Delay vector blocks in the extraction slightly to avoid breaking what would otherwise be continuous lines of text.
- TEXT_FUZZY_VECTORS¶
2097152 – If this option is set, we ‘fuzzily’ collect rectangular vectors of the same colour together. This enables us to spot where ‘pixels’ or ‘slices’ of vectors are used to create the appearance of characters on the page without exploding the storage and processing time requirements.
다음 상수는 텍스트 추출 및 검색을 위한 위의 기본 조합을 나타냅니다:
- TEXTFLAGS_TEXT¶
TEXT_PRESERVE_LIGATURES | TEXT_PRESERVE_WHITESPACE | TEXT_MEDIABOX_CLIP | TEXT_USE_CID_FOR_UNKNOWN_UNICODE
- TEXTFLAGS_WORDS¶
TEXT_PRESERVE_LIGATURES | TEXT_PRESERVE_WHITESPACE | TEXT_MEDIABOX_CLIP | TEXT_USE_CID_FOR_UNKNOWN_UNICODE
- TEXTFLAGS_BLOCKS¶
TEXT_PRESERVE_LIGATURES | TEXT_PRESERVE_WHITESPACE | TEXT_MEDIABOX_CLIP | TEXT_USE_CID_FOR_UNKNOWN_UNICODE
- TEXTFLAGS_DICT¶
TEXT_PRESERVE_LIGATURES | TEXT_PRESERVE_WHITESPACE | TEXT_MEDIABOX_CLIP | TEXT_PRESERVE_IMAGES | TEXT_USE_CID_FOR_UNKNOWN_UNICODE
- TEXTFLAGS_RAWDICT¶
TEXT_PRESERVE_LIGATURES | TEXT_PRESERVE_WHITESPACE | TEXT_MEDIABOX_CLIP | TEXT_PRESERVE_IMAGES | TEXT_USE_CID_FOR_UNKNOWN_UNICODE
- TEXTFLAGS_HTML¶
TEXT_PRESERVE_LIGATURES | TEXT_PRESERVE_WHITESPACE | TEXT_MEDIABOX_CLIP | TEXT_PRESERVE_IMAGES | TEXT_USE_CID_FOR_UNKNOWN_UNICODE
- TEXTFLAGS_XHTML¶
TEXT_PRESERVE_LIGATURES | TEXT_PRESERVE_WHITESPACE | TEXT_MEDIABOX_CLIP | TEXT_PRESERVE_IMAGES | TEXT_USE_CID_FOR_UNKNOWN_UNICODE
- TEXTFLAGS_XML¶
TEXT_PRESERVE_LIGATURES | TEXT_PRESERVE_WHITESPACE | TEXT_MEDIABOX_CLIP | TEXT_USE_CID_FOR_UNKNOWN_UNICODE
- TEXTFLAGS_SEARCH¶
TEXT_PRESERVE_WHITESPACE | TEXT_MEDIABOX_CLIP | TEXT_DEHYPHENATE
링크 대상 종류¶
linkDest.kind (링크 대상 종류)의 가능한 값.
- LINK_NONE¶
0 – 대상 없음. 더미 링크를 나타냅니다.
- 유형:
int
- LINK_GOTO¶
1 – 이 문서의 위치를 가리킵니다.
- 유형:
int
- LINK_URI¶
2 – URI를 가리킵니다 – 일반적으로 인터넷 구문으로 지정된 리소스.
PyMuPDF는 콜론을 포함하고
file:로 시작하지 않는 모든 외부 링크를LINK_URI로 처리합니다.
- 유형:
int
- LINK_LAUNCH¶
3 – 다른 파일(모든 “실행 가능한” 유형)을 실행(열기)합니다.
PyMuPDF 는
file:로 시작하거나 콜론을 포함하지 않는 모든 외부 링크를LINK_LAUNCH로 처리합니다.
- 유형:
int
- LINK_NAMED¶
4 – 명명된 위치를 가리킵니다.
- 유형:
int
- LINK_GOTOR¶
5 – 다른 PDF 문서의 위치를 가리킵니다.
- 유형:
int
링크 대상 플래그¶
참고
이 정수의 가장 오른쪽 바이트는 비트 필드이므로 & 연산자로 이러한 비트의 참을 테스트하세요.
- LINK_FLAG_L_VALID¶
1 (비트 0) 왼쪽 상단 x 값이 유효함
- 유형:
bool
- LINK_FLAG_T_VALID¶
2 (비트 1) 왼쪽 상단 y 값이 유효함
- 유형:
bool
- LINK_FLAG_R_VALID¶
4 (비트 2) 오른쪽 하단 x 값이 유효함
- 유형:
bool
- LINK_FLAG_B_VALID¶
8 (비트 3) 오른쪽 하단 y 값이 유효함
- 유형:
bool
- LINK_FLAG_FIT_H¶
16 (비트 4) 수평 맞춤
- 유형:
bool
- LINK_FLAG_FIT_V¶
32 (비트 5) 수직 맞춤
- 유형:
bool
- LINK_FLAG_R_IS_ZOOM¶
64 (비트 6) 오른쪽 하단 x는 확대/축소 수치
- 유형:
bool
위젯 상수¶
위젯 유형 (field_type)¶
PDF_WIDGET_TYPE_UNKNOWN 0
PDF_WIDGET_TYPE_BUTTON 1
PDF_WIDGET_TYPE_CHECKBOX 2
PDF_WIDGET_TYPE_COMBOBOX 3
PDF_WIDGET_TYPE_LISTBOX 4
PDF_WIDGET_TYPE_RADIOBUTTON 5
PDF_WIDGET_TYPE_SIGNATURE 6
PDF_WIDGET_TYPE_TEXT 7
텍스트 위젯 하위 유형 (text_format)¶
PDF_WIDGET_TX_FORMAT_NONE 0
PDF_WIDGET_TX_FORMAT_NUMBER 1
PDF_WIDGET_TX_FORMAT_SPECIAL 2
PDF_WIDGET_TX_FORMAT_DATE 3
PDF_WIDGET_TX_FORMAT_TIME 4
위젯 플래그 (field_flags)¶
모든 필드 유형에 공통:
PDF_FIELD_IS_READ_ONLY 1
PDF_FIELD_IS_REQUIRED 1 << 1
PDF_FIELD_IS_NO_EXPORT 1 << 2
텍스트 위젯:
PDF_TX_FIELD_IS_MULTILINE 1 << 12
PDF_TX_FIELD_IS_PASSWORD 1 << 13
PDF_TX_FIELD_IS_FILE_SELECT 1 << 20
PDF_TX_FIELD_IS_DO_NOT_SPELL_CHECK 1 << 22
PDF_TX_FIELD_IS_DO_NOT_SCROLL 1 << 23
PDF_TX_FIELD_IS_COMB 1 << 24
PDF_TX_FIELD_IS_RICH_TEXT 1 << 25
버튼 위젯:
PDF_BTN_FIELD_IS_NO_TOGGLE_TO_OFF 1 << 14
PDF_BTN_FIELD_IS_RADIO 1 << 15
PDF_BTN_FIELD_IS_PUSHBUTTON 1 << 16
PDF_BTN_FIELD_IS_RADIOS_IN_UNISON 1 << 25
선택 위젯:
PDF_CH_FIELD_IS_COMBO 1 << 17
PDF_CH_FIELD_IS_EDIT 1 << 18
PDF_CH_FIELD_IS_SORT 1 << 19
PDF_CH_FIELD_IS_MULTI_SELECT 1 << 21
PDF_CH_FIELD_IS_DO_NOT_SPELL_CHECK 1 << 22
PDF_CH_FIELD_IS_COMMIT_ON_SEL_CHANGE 1 << 26
PDF 표준 블렌드 모드¶
설명은 Adobe PDF 참조 324페이지를 참조하세요:
PDF_BM_Color "Color"
PDF_BM_ColorBurn "ColorBurn"
PDF_BM_ColorDodge "ColorDodge"
PDF_BM_Darken "Darken"
PDF_BM_Difference "Difference"
PDF_BM_Exclusion "Exclusion"
PDF_BM_HardLight "HardLight"
PDF_BM_Hue "Hue"
PDF_BM_Lighten "Lighten"
PDF_BM_Luminosity "Luminosity"
PDF_BM_Multiply "Multiply"
PDF_BM_Normal "Normal"
PDF_BM_Overlay "Overlay"
PDF_BM_Saturation "Saturation"
PDF_BM_Screen "Screen"
PDF_BM_SoftLight "Softlight"
스탬프 주석 아이콘¶
MuPDF는 고무 스탬프 주석에 대해 다음 아이콘을 정의했습니다:
STAMP_Approved 0
STAMP_AsIs 1
STAMP_Confidential 2
STAMP_Departmental 3
STAMP_Experimental 4
STAMP_Expired 5
STAMP_Final 6
STAMP_ForComment 7
STAMP_ForPublicRelease 8
STAMP_NotApproved 9
STAMP_NotForPublicRelease 10
STAMP_Sold 11
STAMP_TopSecret 12
STAMP_Draft 13
