Coverage for /pythoncovmergedfiles/medio/medio/usr/local/lib/python3.11/site-packages/pikepdf/models/metadata/__init__.py: 53%

Shortcuts on this page

r m x   toggle line displays

j k   next/prev highlighted chunk

0   (zero) top of page

1   (one) first highlighted chunk

15 statements  

1# SPDX-FileCopyrightText: 2022 James R. Barlow 

2# SPDX-License-Identifier: MPL-2.0 

3 

4"""PDF metadata handling. 

5 

6This module provides XMP and DocumentInfo metadata access for PDF files. 

7""" 

8 

9from __future__ import annotations 

10 

11from pikepdf.models.metadata._constants import ( 

12 DEFAULT_NAMESPACES, 

13 XMP_CONTAINERS, 

14 XMP_EMPTY, 

15 XMP_NS_DC, 

16 XMP_NS_PDF, 

17 XMP_NS_PDFA_EXTENSION, 

18 XMP_NS_PDFA_ID, 

19 XMP_NS_PDFA_PROPERTY, 

20 XMP_NS_PDFA_SCHEMA, 

21 XMP_NS_PDFUA_ID, 

22 XMP_NS_PDFX_ID, 

23 XMP_NS_PHOTOSHOP, 

24 XMP_NS_PRISM, 

25 XMP_NS_PRISM2, 

26 XMP_NS_PRISM3, 

27 XMP_NS_RDF, 

28 XMP_NS_XML, 

29 XMP_NS_XMP, 

30 XMP_NS_XMP_MM, 

31 XMP_NS_XMP_RIGHTS, 

32 XPACKET_BEGIN, 

33 XPACKET_END, 

34 AltList, 

35 XmpContainer, 

36) 

37from pikepdf.models.metadata._converters import ( 

38 DOCINFO_MAPPING, 

39 AuthorConverter, 

40 Converter, 

41 DateConverter, 

42 DocinfoMapping, 

43 decode_pdf_date, 

44 encode_pdf_date, 

45) 

46from pikepdf.models.metadata._core import PdfMetadata 

47from pikepdf.models.metadata._xmp import XmpDocument 

48 

49 

50def __getattr__(name): 

51 if name == 'LANG_ALTS': 

52 from pikepdf.models.metadata import _constants 

53 val = getattr(_constants, 'LANG_ALTS') 

54 globals()[name] = val 

55 return val 

56 raise AttributeError(f"module {__name__} has no attribute {name}") 

57 

58__all__ = [ 

59 # Main classes 

60 'PdfMetadata', 

61 'XmpDocument', 

62 # Converters 

63 'Converter', 

64 'AuthorConverter', 

65 'DateConverter', 

66 'DocinfoMapping', 

67 'DOCINFO_MAPPING', 

68 'decode_pdf_date', 

69 'encode_pdf_date', 

70 # Namespace constants 

71 'XMP_NS_DC', 

72 'XMP_NS_PDF', 

73 'XMP_NS_PDFA_ID', 

74 'XMP_NS_PDFA_EXTENSION', 

75 'XMP_NS_PDFA_PROPERTY', 

76 'XMP_NS_PDFA_SCHEMA', 

77 'XMP_NS_PDFUA_ID', 

78 'XMP_NS_PDFX_ID', 

79 'XMP_NS_PHOTOSHOP', 

80 'XMP_NS_PRISM', 

81 'XMP_NS_PRISM2', 

82 'XMP_NS_PRISM3', 

83 'XMP_NS_RDF', 

84 'XMP_NS_XML', 

85 'XMP_NS_XMP', 

86 'XMP_NS_XMP_MM', 

87 'XMP_NS_XMP_RIGHTS', 

88 # Other exports 

89 'DEFAULT_NAMESPACES', 

90 'LANG_ALTS', 

91 'XPACKET_BEGIN', 

92 'XPACKET_END', 

93 'XMP_CONTAINERS', 

94 'XMP_EMPTY', 

95 'AltList', 

96 'XmpContainer', 

97]