Image

Класс: Image

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

Image представляет собой встроенное изображение, хранящееся в OneNote .one файл. Он раскрывает необработанные байты изображения, оригинальное имя файла, отрисованные размеры, alt text, URL гиперссылки (если есть) и любые теги OneNote, прикреплённые к изображению.


ImageRenderOptions

NameTypeAccessDescription
FileName`strNone`Read
FilePath`strNone`Read
Format`strNone`Read
BytesbytesReadGets the bytes.
OriginalWidth`floatNone`Read
OriginalHeight`floatNone`Read
Tagslist[NoteTag]ReadGets the tags.
Alignment`HorizontalAlignmentNone`Read/Write
Width``ReadGets the width.
Height``ReadGets the height.
HorizontalOffset``ReadGets the horizontal offset.
VerticalOffset``ReadGets the vertical offset.
IsBackground``ReadGets the is background.
LastModifiedTime``ReadGets the last modified time.
AlternativeTextTitle``ReadGets the alternative text title.
AlternativeTextDescription``ReadGets the alternative text description.
HyperlinkUrl``ReadGets the hyperlink url.
FirstChild`NodeNone`Read
LastChild`NodeNone`Read
ParentNode`NodeNone`Read
Document`DocumentNone`Read

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

SignatureDescription
`init(FileName: strNone, FilePath: str
Replace(image: Image)Replaces the current image data with the provided Image instance
AppendChildLast(node: TNode)TNode
AppendChildFirst(node: TNode)TNode
InsertChild(index: int, node: TNode)TNode
RemoveChild(node: Node)
GetEnumerator()Iterator[Node]
GetChildNodes(node_type: type[TNode])list[TNode]
Accept(visitor: DocumentVisitor)

ImageRenderOptions

Replace(image)

img.Replace(image: Image) -> None

Заменяет содержимое этого Image узла содержимым другого Image узла, в памяти. Сохранение обратно в .one не поддерживается.


Accept(visitor)

img.Accept(visitor: DocumentVisitor) -> None

ImageRenderOptions VisitImageStart(img) и VisitImageEnd(img) на посетителе.


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

Сохранить все изображения на диск

from aspose.note import Document, Image

doc = Document("MyNotes.one")
for i, img in enumerate(doc.GetChildNodes(Image), start=1):
    filename = img.FileName or f"image_{i}.bin"
    with open(filename, "wb") as f:
        f.write(img.Bytes)
    print(f"Saved: {filename}  ({img.Width} x {img.Height} pts)")

Определить формат изображения по байтам

doc = Document(“MyNotes.one”) for img in doc.GetChildNodes(Image): b = img.Bytes if b[:4] == b’\x89PNG’: fmt = “png” elif b[:2] == b’\xff\xd8’: fmt = “jpeg” elif b[:4] == b’GIF8’: fmt = “gif” else: fmt = “bin” print(f" {img.FileName!r} detected as {fmt}")


### Найти все связанные изображения

doc = Document("MyNotes.one")
for img in doc.GetChildNodes(Image):
    if img.HyperlinkUrl:
        print(f"  Linked image: {img.FileName!r} -> {img.HyperlinkUrl}")

Прочитать альтернативный текст

doc = Document(“MyNotes.one”) for img in doc.GetChildNodes(Image): if img.AlternativeTextTitle or img.AlternativeTextDescription: print(f" Alt title: {img.AlternativeTextTitle!r}") print(f" Alt desc: {img.AlternativeTextDescription!r}")


### Проверить теги на изображениях

doc = Document("MyNotes.one")
for img in doc.GetChildNodes(Image):
    for tag in img.Tags:
        print(f"  Image tag: label={tag.label!r}  completed={tag.completed}")

Изображения на странице

from aspose.note import Document, Page, Image

doc = Document("MyNotes.one")
for page_num, page in enumerate(doc.GetChildNodes(Page), start=1):
    images = page.GetChildNodes(Image)
    print(f"Page {page_num}: {len(images)} image(s)")

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

  • FileName является None когда имя файла не было сохранено: всегда предоставляйте запасной вариант при записи на диск.
  • Bytes всегда является bytes объектом и никогда не None.
  • Width и Height являются None для изображений без метаданных размеров.
  • AlternativeTextTitle, AlternativeTextDescription, и HyperlinkUrl являются None если не задано.

См. также

 Русский