Image — Aspose.Note FOSS for Python API Reference

类:Image

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

Image 表示存储在 OneNote 中的嵌入式图像 .one 文件。它公开原始图像字节、原始文件名、渲染尺寸、替代文本、超链接 URL(如果有),以及附加到图像的任何 OneNote 标签。.


Properties

PropertiesPropertiesPropertiesProperties
FileName`strNone`Properties
BytesbytesProperties原始图像数据(PNG、JPEG 或其他取决于来源的二进制格式)
Width`floatNone`Properties
Height`floatNone`Properties
AlternativeTextTitle`strNone`Properties
AlternativeTextDescription`strNone`Properties
HyperlinkUrl`strNone`Properties
Tagslist[NoteTag]Properties附加到此图像的 OneNote 标签

继承自 CompositeNode / Node

PropertiesProperties
ParentNode包含的节点(OutlineElement,TableCell)
Document根文档

Properties

Replace(image)

img.Replace(image: Image) -> None

替换此 Image 节点的内容为另一个 Image 节点,内存中。保存回 .one 不受支持。.


Accept(visitor)

img.Accept(visitor: DocumentVisitor) -> None

Properties 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)")

从字节检测图像格式

from aspose.note import Document, Image

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}")

查找所有已链接的图像

from aspose.note import Document, Image

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

读取替代文本

from aspose.note import Document, Image

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}")

检查图像上的标签

from aspose.note import Document, Image

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 安全性

  • FileNameNone 当未存储文件名时:写入磁盘时始终提供后备方案。.
  • Bytes 始终是一个 bytes 对象且永不 None.
  • WidthHeightNone 用于没有尺寸元数据的图像。.
  • AlternativeTextTitle, AlternativeTextDescription,,并且 HyperlinkUrlNone 当未设置时。.

另见

 中文