AttachedFile — Aspose.Note FOSS for Python API Reference

Класс: AttachedFile

ImageRenderOptions: aspose.note ImageRenderOptions: from aspose.note import AttachedFile ImageRenderOptions: CompositeNode

AttachedFile представляет собой бинарный файл, встроенный в раздел OneNote. Это дочерний элемент OutlineElement. Bytes свойство; оригинальное имя файла находится в FileName. Теги OneNote, прикреплённые к вложению, доступны через Tags.


ImageRenderOptions

ImageRenderOptionsImageRenderOptionsImageRenderOptionsImageRenderOptions
FileName`strNone`ImageRenderOptions
BytesbytesImageRenderOptionsСырой бинарный контент вложенного файла. По умолчанию b"" когда данные вложения не удалось прочитать.
Tagslist[NoteTag]ImageRenderOptionsТеги OneNote, прикреплённые к этому узлу файла.

Наследуется от CompositeNode / Node

ImageRenderOptionsImageRenderOptionsImageRenderOptions
FirstChild`NodeNone`
LastChild`NodeNone`
ParentNode`NodeNone`
Document`DocumentNone`

ImageRenderOptions

  • Контент только для чтения: Bytes и FileName парсятся напрямую из бинарного файла MS-ONE. Нет API для замены встроенных данных файла в версии v26.3.1.
  • ImageRenderOptions: Сохранение документа, содержащего AttachedFile узлы в PDF встраивают метаданные вложения, но не бинарное содержимое в самом PDF.
  • Пустые байты: Если блок данных файла отсутствует или имеет нулевую длину в источнике .one файл, Bytes возвращает b"".

Пример использования

Извлечь все вложения на диск

import os
from aspose.note import Document, AttachedFile

doc = Document("MyNotes.one")
output_dir = "attachments"
os.makedirs(output_dir, exist_ok=True)

for af in doc.GetChildNodes(AttachedFile):
    name = af.FileName or "unnamed_attachment"
    dest = os.path.join(output_dir, name)
    with open(dest, "wb") as f:
        f.write(af.Bytes)
    print(f"Saved: {dest}  ({len(af.Bytes)} bytes)")

Список вложений с их тегами

from aspose.note import Document, AttachedFile

doc = Document("MyNotes.one")
for af in doc.GetChildNodes(AttachedFile):
    tag_labels = [t.label for t in af.Tags if t.label]
    print(f"{af.FileName!r}  tags={tag_labels}  size={len(af.Bytes)}B")

Безопасность при None

FileName может быть None; всегда указывайте резервное имя при записи файлов. Bytes всегда является bytes (никогда None), но может быть пустым (b""). Tags всегда является списком (может быть пустым).


См. также

 Русский