
    3vj$                         d Z ddlmZ ddlmZmZmZmZ ddlZddl	m
Z
 ddd	d
ddddddd
Zej                         D ]  \  ZZ eee         G d d      Zy)zPDF metadata stream generation.    )uuid4)Element
SubElementregister_namespacetostringN   )__version__z+http://www.w3.org/1999/02/22-rdf-syntax-ns#z http://purl.org/dc/elements/1.1/ zhttp://ns.adobe.com/xap/1.0/zhttp://ns.adobe.com/xap/1.0/mm/zhttp://ns.adobe.com/pdf/1.3/zhttp://www.aiim.org/pdfa/ns/id/z http://www.aiim.org/pdfua/ns/id/zhttp://www.npes.org/pdfx/ns/id/zhttp://ns.adobe.com/pdfx/1.3/)
rdfdcr
   xmpxmpMMpdfpdfaidpdfuaidpdfxidpdfxc                   *    e Zd ZdZ	 	 	 ddZd Zd Zy)DocumentMetadatazMeta-information belonging to a whole :class:`Document`.

    New attributes may be added in future versions of WeasyPrint.
    Nc                     || _         |xs g | _        || _        |xs g | _        || _        || _        || _        |xs g | _        |	| _        |
xs i | _	        |xs g | _
        y )N)titleauthorsdescriptionkeywords	generatorcreatedmodifiedattachmentslangcustomxmp_metadata)selfr   r   r   r   r   r   r   r   r   r    r!   s               J/root/.hermes/venv/lib/python3.12/site-packages/weasyprint/pdf/metadata.py__init__zDocumentMetadata.__init__    s|     

 }" '
 !B
 #  ! '," 	 l(.B    c                    d}|dz  }d}| j                  |||      }dj                  ||g| j                  |      }	ddd}
t        j                  |	g|
|      }|j                  |       |j                  |j                  d<   y	)
zUAdd PDF stream of metadata.

        Described in ISO-32000-1:2008, 14.3.2.

        s3   <?xpacket begin="" id="W5M0MpCehiHzreSzNTczkc9d"?>
s$   <x:xmpmeta xmlns:x="adobe:ns:meta/">s    </x:xmpmeta>
<?xpacket end="r"?>   
z	/Metadataz/XML)TypeSubtypeMetadataN)generate_rdf_metadatajoinr!   pydyfStream
add_object	referencecatalog)r"   r   variantversionconformancecompressheaderfooterxml_datastream_contentextrametadatas               r#   include_in_pdfzDocumentMetadata.include_in_pdfT   s     I995--gwLVX$R8I8I$R6$RS$8<< 0%Bx "*"4"4Jr%   c                    d| d}t        dt        d    d      }|r^t        |dt        d    d      }d|j                  dt        d    d<   |d	k(  r|d
k\  s#t	        |      |j                  dt        |    d<   |rr|sJ |d	k(  rdt        d    ddt        d    ddt        d    dfD ]  }t        |      }||_         t        dt        d    d      }d|_        |d
k\  r| j                  sJ t        |dt        d    d      }| j                  |_        t        |dt        d    d      }dt                |_        t        |dt        d    d      }d|_        t        |dt        d    d      }d|_        nk|j                  dt        |    d<   |dk(  r$|d
k(  rt        |dt        d    d      }d|_        n(|d k(  r#|d!k(  rt        |dt        d"    d      }d#|_        t        |dt        d    d      }d|j                  dt        d    d<   d$t         |j                  dt        d    d%<   | j                  rt        |dt        d    d      }d|j                  dt        d    d<   t        |dt        d&    d'      }t        |dt        d    d(      }t        |dt        d    d)      }d*|j                  d+<   | j                  |_        | j                  rt        |dt        d    d      }d|j                  dt        d    d<   t        |dt        d&    d,      }t        |dt        d    d-      }| j                  D ]   }	t        |dt        d    d)      }
|	|
_        " | j                  rt        |dt        d    d      }d|j                  dt        d    d<   t        |dt        d&    d.      }t        |dt        d    d(      }t        |dt        d    d)      }d*|j                  d+<   | j                  |_        | j                  rht        |dt        d    d      }d|j                  dt        d    d<   t        |dt        d    d/      }d0j                  | j                        |_        | j                  rYt        |dt        d    d      }d|j                  dt        d    d<   t        |dt        d    d1      }| j                  |_        | j                  rYt        |dt        d    d      }d|j                  dt        d    d<   t        |dt        d    d2      }| j                  |_        | j                  rYt        |dt        d    d      }d|j                  dt        d    d<   t        |dt        d    d3      }| j                  |_        t!        |d45      S )6z&Generate RDF metadata as a bytestring.r   id{r   z}RDFz}Descriptionr
   z}aboutx   z}partr   z}GTS_PDFXVersionr   z}GTS_PDFXConformancez}TrappedFalser   z}MetadataDater   z}DocumentIDzxmp.did:z}RenditionClassz	proof:pdfz
}VersionID1z}conformancear   z}rev2020uar   r   2024zWeasyPrint z	}Producerr   z}titlez}Altz}liz	x-defaultzxml:langz}creatorz}Seqz}descriptionz	}Keywordsz, z}CreatorToolz}CreateDatez}ModifyDatezutf-8)encoding)r   NSr   attribstrtextr   r   r	   r   r   r   r   r,   r   r   r   )r"   r2   r3   r4   	namespacer   elementkey
subelementauthorauthor_elements              r#   r+   z&DocumentMetadata.generate_rdf_metadatae   s   '"%	2e9+U+, 2e9+]&CDG68GNNR5	{'23sNw!|=@\ByM?&9:N7#~H&78F$56F$9: 2C
 ",GS!9J&1JO2 (2bi[	1JK
")
a<==(=!+Gr"U)N5S!TJ&*mmJO!+Gr"W+l5S!TJ(0	&:JO!+Gr"W+FV5W!XJ&1JO!+Gr"W+k5R!SJ&)JODOByM?-@Ac>gl!+Gr"X,u5M!NJ&,JO_A!+Gr"Y-5N!OJ&,JOSBr%yk"?@24BuI;g./7B;-5PBuI;j12:: 2e9+]&CDG68GNNR5	{'23 Br$xj*@AG Br%yk*?@G Br%yk*>?G)4GNN:&::GL<< 2e9+]&CDG68GNNR5	{'23 Br$xj	*BCG Br%yk*?@G,, -!+Gr"U)D5I!J&,#-  2e9+]&CDG68GNNR5	{'23 Br$xj*FGG Br%yk*?@G Br%yk*>?G)4GNN:&++GL== 2e9+]&CDG68GNNR5	{'23 Br%yk*DEG99T]]3GL>> 2e9+]&CDG68GNNR5	{'23 Br%yk*GHG>>GL<< 2e9+]&CDG68GNNR5	{'23 Br%yk*FGG<<GL== 2e9+]&CDG68GNNR5	{'23 Br%yk*FGG==GLg..r%   )NNNNNNNNNNN)__name__
__module____qualname____doc__r$   r<   r+    r%   r#   r   r      s%     MQJN6:1/h5"Z/r%   r   )rV   uuidr   xml.etree.ElementTreer   r   r   r   r-   r
   r	   rI   itemsrO   valuer   rW   r%   r#   <module>r\      so    %  S S   9
,
).)/1/+ ((* #JCsE"#d/ d/r%   