Установите HTML в комментариях в Excel, используя Aspose.Cells - PullRequest
0 голосов
/ 02 июля 2018

Я работаю, экспортируя excel, используя Aspose.Cells. В этом мне нужно показать некоторые HTML отформатированный комментарий в определенном столбце. Но когда я устанавливаю заметку в комментарии, используя строку HTML, она автоматически изменяет эту HTML. Я использую ниже код

Workbook workbook = GetExcelWorkbook<AuditLogExport>(auditLogExportData, templatePath);
        CommentCollection comments = workbook.Worksheets[0].Comments;
        for (int i = 0; i < exportData.Count; i++)
        {
            if (exportData[i].IsDetailedChange)
            {
                int commentIndex = comments.Add(string.Format("E{0}", (i + 2)));
                Aspose.Cells.Comment comment = comments[commentIndex];
                **comment.HtmlNote = GetAuditLogCommentNote(exportData[i]);**
                comment.WidthCM = 8.0;
                comment.HeightCM = 20.0;
            }
        }


public static string GetAuditLogCommentNote(AuditLog auditLog)
    {
        string note = string.Empty;
        note = "<table width='400px' style='border:solid 1px black'><tr><th>Changed Field</th><th>Previous</th><th>Current</th></tr>";
        foreach (var history in auditLog.DetailChanges)
        {
            note += string.Format("<tr><td>{0}</td><td>{1}</td><td>{2}</td></tr>", history.FieldName, history.FirstChange, history.LastChange);
        }
        note += "</table>";

        return note;
    }

Когда я присваиваю значение свойству комментария HtmlNote, оно автоматически меняет HTML-код с тегами шрифта и удаляет все теги таблицы из строки. Может кто-нибудь помочь с этим?

1 Ответ

0 голосов
/ 02 июля 2018

Update-1

Что ж, мы думаем, что ваше требование невозможно выполнить с помощью Microsoft Excel. Если что-то невозможно с Microsoft Excel, то это также будет невозможно с Aspose.Cells или любым другим API автоматически.

Пожалуйста, смотрите следующий скриншот. Он показывает, как выглядит ваш HTML, когда он просматривается в веб-браузере и когда он копируется / вставляется в комментарий Excel.

enter image description here

Если вы считаете, что ваше требование выполнимо с помощью Microsoft Excel, предоставьте нам пример файла Excel, который вы создали вручную с помощью Microsoft Excel. Мы проверим и продолжим расследование этой проблемы.


Update-2

Мы протестировали эту проблему с помощью следующего кода и обнаружили, что если мы попытаемся создать комментарий со свойством HtmlNote , он не будет работать.

Мы зарегистрировали эту проблему в нашей базе данных для расследования и исправления. Как только проблема будет решена, мы сообщим вам об этом в этом сообщении.

Эта проблема была зарегистрирована как

  • CELLSNET-46210 - Создание комментария с использованием свойства HtmlNote не работает

C #

Workbook wb = new Workbook();

Worksheet ws = wb.Worksheets[0];

int idx = ws.Comments.Add("E4");
Comment cm = ws.Comments[idx];
//cm.HtmlNote = "<Font Style=\"FONT-WEIGHT: bold;FONT-FAMILY: Tahoma;FONT-SIZE: 9pt;COLOR: #000000;TEXT-ALIGN: left;\">Heading: </Font><Font Style=\"FONT-FAMILY: Tahoma;FONT-SIZE: 9pt;COLOR: #000000;TEXT-ALIGN: left;\">This is some para. </Font><Font Style=\"FONT-WEIGHT: bold;FONT-FAMILY: Tahoma;FONT-SIZE: 9pt;COLOR: #000000;TEXT-ALIGN: left;\">Heading2:</Font><Font Style=\"FONT-FAMILY: Tahoma;FONT-SIZE: 9pt;COLOR: #000000;TEXT-ALIGN: left;\"> This is some para2.</Font>";
cm.HtmlNote = new Workbook("input.xlsx").Worksheets[0].Comments[0].HtmlNote;
cm.IsVisible = true;

wb.Save("output.xlsx");

Update-3

Ваша проблема, зарегистрированная как CELLSNET-46210 , была исправлена ​​в Aspose.Cells для .NET v18.7. Пожалуйста, загрузите его по этой ссылке.

https://www.nuget.org/packages/Aspose.Cells/18.7.0


Примечание: Я работаю адвокатом разработчика в Aspose

...