Как установить ширину столбца в BestFit при использовании OpenXml.Spreadsheet - PullRequest
1 голос
/ 08 октября 2019

Я создаю файл xlsx и пытаюсь установить ширину столбца для наилучшей ширины (в зависимости от шрифта, например, «Calibri», и размера шрифта, например, 10), который в моем случае будет только длинойзаголовок заголовка столбца. Я использую OpenXml и работаю с net-Core.

Я знаю, что он не работает с MeasureString и AutoFit, поскольку для этого мне нужно включить System.Drawing, что приведет к перегрузкам, например new Font.

Я также нашел методы BestFit ( здесь ) и Width ( здесь ), которые мне, вероятно, нужно каким-то образом использовать.

Columns columns = new Columns();

// headerTitles is just some list of strings which should define the length of the column
foreach (string columnName in headerTitles)
{

    // somehow I need to include this
    FontName ftn = new FontName();
    ftn.Val = "Calibri";
    FontSize ftsz = new FontSize();
    ftsz.Val = 10;

    // here the Width should be the width_of_column or something like AutoFit
    // ! width_of_columnName is what I am looking for !
    columns.Append(new Column() { Min = 2, Max = 2, Width = width_of_columnName, CustomWidth = true });
}

worksheetPart.Worksheet.Append(columns);

Я действительно борюсь с этим. Я знаю, что это легко при использовании System.Drawing, но с OpenXml и в net-core я не смог найти никакого рабочего решения.

Я надеюсь, что кто-то может помочь.

Я оченьновичок в C #.

...