Add an item to the EmbeddedFiles array. Args: name: name of the new item, must not already exist. buffer_: (binary data) the file content. filename: (str) the file name, default: the name ufilename: (unicode) the file name, default: filename
(self,
name: str,
buffer_: ByteString,
filename: OptStr =None,
ufilename: OptStr =None,
desc: OptStr =None,
)
| 4422 | self._reset_page_refs() |
| 4423 | |
| 4424 | def embfile_add(self, |
| 4425 | name: str, |
| 4426 | buffer_: ByteString, |
| 4427 | filename: OptStr =None, |
| 4428 | ufilename: OptStr =None, |
| 4429 | desc: OptStr =None, |
| 4430 | ) -> None: |
| 4431 | """Add an item to the EmbeddedFiles array. |
| 4432 | |
| 4433 | Args: |
| 4434 | name: name of the new item, must not already exist. |
| 4435 | buffer_: (binary data) the file content. |
| 4436 | filename: (str) the file name, default: the name |
| 4437 | ufilename: (unicode) the file name, default: filename |
| 4438 | desc: (str) the description. |
| 4439 | """ |
| 4440 | filenames = self.embfile_names() |
| 4441 | if name in filenames: |
| 4442 | raise ValueError(f"Name '{name}' already exists.") |
| 4443 | if filename is None: |
| 4444 | filename = name |
| 4445 | if ufilename is None: |
| 4446 | ufilename = filename |
| 4447 | if desc is None: |
| 4448 | desc = name |
| 4449 | xref = self._embfile_add( |
| 4450 | name, |
| 4451 | buffer_=buffer_, |
| 4452 | filename=filename, |
| 4453 | ufilename=ufilename, |
| 4454 | desc=desc, |
| 4455 | ) |
| 4456 | date = get_pdf_now() |
| 4457 | self.xref_set_key(xref, "Type", "/EmbeddedFile") |
| 4458 | self.xref_set_key(xref, "Params/CreationDate", get_pdf_str(date)) |
| 4459 | self.xref_set_key(xref, "Params/ModDate", get_pdf_str(date)) |
| 4460 | return xref |
| 4461 | |
| 4462 | def embfile_count(self) -> int: |
| 4463 | """Get number of EmbeddedFiles.""" |