【问题标题】:Aspose.Word MailMerge FieldMergingCallback set font sizeAspose.Word MailMerge FieldMergingCallback 设置字体大小
【发布时间】:2018-06-21 13:19:32
【问题描述】:

是否可以在 FieldMergingCallback 中检索字段大小、计算字体大小并更改字体大小以合并文本?
在我的模板中,我有固定大小的单元格的表格。表不能增长。
因此,当我将长文本放入单元格时,当文本不适合时,我希望字体更小。
Word 中表格设置中的“适合文本”选项无法正常工作。

【问题讨论】:

标签: c# aspose aspose.words


【解决方案1】:

在执行 Mail Merge 之前,您可以使用以下代码对 Merge Field 内的所有 Run 节点应用一些 Font 格式:

foreach (Field field in doc.Range.Fields)
{
    if (field.Type.Equals(Aspose.Words.Fields.FieldType.FieldMergeField))
    {
        Node currentNode = field.Start;
        bool isContinue = true;
        while (currentNode != null && isContinue)
        {
            if (currentNode.NodeType.Equals(NodeType.FieldEnd))
            {
                FieldEnd end = (FieldEnd)currentNode;
                if (end == field.End)
                    isContinue = false;
            }

            if (currentNode.NodeType.Equals(NodeType.Run))
            {
                // Specify Font formatting here
                Run run = ((Run)currentNode);
                run.Font.Size = 6;
            }

            Node nextNode = currentNode.NextPreOrder(currentNode.Document);
            currentNode = nextNode;
        }
    }
}

希望,这会有所帮助。我与 Aspose 合作,担任开发人员宣传员。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-03-01
    • 2020-06-12
    • 2017-04-29
    • 2014-10-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多