c# - 如果图像不存在则插入文本 Aspose Mail Merge

标签 c# mailmerge aspose.words

我正在插入图片,这是我的代码:

void IFieldMergingCallback.ImageFieldMerging(ImageFieldMergingArgs e)
{
    if (this.mBuilder == null)
        this.mBuilder = new DocumentBuilder(e.Document);

    string filename = GetFilePath();
    if (!File.Exists(filename))
    {
        //todo insert text "<Image not found>" instead image
        this.mBuilder.MoveToField(e.Field, false);
        this.mBuilder.Write("<Image not found>");
        e.ImageFileName = string.Empty;
        return;
    }

    e.ImageFileName = filename;
}

我想插入文本 "<Image not found>"如果图像不存在。但是这段代码抛出错误 Cannot load image from field '...'. The field contains data in unsupported format. Could not find file .

我应该插入什么来修复我的错误?

最佳答案

这解决了我的问题。我只需要将字段删除到我的 if 语句中:

this.mBuilder.MoveToField(e.Field, false);
this.mBuilder.Write("<Image not found>");
e.Field.Remove();
return;

关于c# - 如果图像不存在则插入文本 Aspose Mail Merge,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55703698/

相关文章:

mandrill - *|UNSUB|* 不会在山魈模板中解析

pdf - Aspose PDF内存泄漏问题

c# - Func<T, TResult> 和 Converter<TInput, TOutput> 有什么区别?

c# - 来自程序集的 WPF 自定义 FontFamily?

c# - 将文件上传到 Hbase HDInsight

java - 将 Docx 文件转换为图像

c# - 异步/等待模型 View 演示者winforms

c# - 程序在 oWord.Documents.Open(oTemplatePath) 处卡住?

vba - Excel 邮件合并运行时错误 4198