Skip to content
Demo示例API 参考文档FAQ

PDF 生成模板编辑器

开源可视化 PDF 生成引擎,支持自定义模板,并提供面向开发者的 API,灵活构建文档生成流程。

查看 GitHub

读取正文资源和附件 ​

PDF 中只显示附件清单,不包含附件内容。可以通过转换结果读取附件字节,由应用自行处理。下面是示例:

c#
using (CEmailResult result = CEmailConverter.ConvertToHtml("/mail.eml"))
{
    // 选中的主正文来源
    CEmailBodySource body = result.GetSelectedBodySource();
    Console.WriteLine($"正文:{body.MediaType}({body.Origin})");

    // 正文资源,如图片
    foreach (CEmailResource resource in result.GetResources())
    {
        Console.WriteLine($"资源:{resource.RelativePath},{resource.MediaType},{resource.Data.Length} 字节");
    }

    // 附件
    foreach (CEmailAttachment attachment in result.GetAttachments())
    {
        // 附件数据损坏时只保留名称和类型,HasData 为 false
        if (attachment.HasData)
        {
            File.WriteAllBytes(Path.Combine("/attachments/", Path.GetFileName(attachment.DisplayName)), attachment.Data);
        }
    }
}

CEmailAttachment 的主要属性:

属性说明
OriginalName邮件中的原始文件名
DisplayName经过清理、用于显示的文件名
MediaTypeMIME 类型
HasData / Data是否有数据 / 附件字节,HasData 为 false 时 Data 为 null
Hidden是否为隐藏附件,例如被正文引用的内联资源
ReferencedByBody是否被正文引用
NestedMessage是否为内嵌邮件