Проект, над которым я сейчас работаю, использует MigraDoc и PDFsharp.До сих пор использовалась последняя стабильная версия 1.32.2608, но мы пытаемся перейти на более новую, предварительную версию (из-за подключенного проекта, использующего 1.50.4619-beta4c).И почти все выглядит хорошо, но есть одна вещь, которую я не знаю, как обойти.
Есть функция, измеряющая размер строки, которая ищет (проще говоря) кое-что об этом:
protected SSize GetSize(string text, MigraDoc.DocumentObjectModel.Font font)
{
var doc = new PdfDocument();
var page = doc.AddPage;
var sizer = XGraphics.FromPdfPage(page);
var style = XFontStyle.Regular;
//some style checks
var xf = new XFont(font.Name, font.Size, style);
var st = new XStringFormat();
st.FormatFlags = XStringFormatFlags.MeasureTrailingSpaces;
var xs = sizer.MeasureString(text, xf, st);
return new SSize {
Height = XUnit.FromPoint(xs.Height * _measureCorrection).Centimeter,
Width = XUnit.FromPoint(xs.Width * _measureCorrection).Centimeter
};
}
и проблемная строка:
st.FormatFlags = XStringFormatFlags.MeasureTrailingSpaces;
, поскольку XStringFormat потерял свойство FormatFlags, и перечисление XStringFormatFlags больше не существует.Кто-нибудь имеет подобный опыт и может дать подсказку, как правильно преобразовать его в новую версию?