|
27.11.2023, 15:47 | #1 |
Участник
|
В общем получилось решить меняя местами эти теги при сохранении. Код для этого ниже
X++: using DocumentFormat.OpenXml; [ExtensionOf(classstr(OxmlWorksheet_RU))] final class OxmlWorksheet_RUDEV_Extension { private OpenXmlElement DEVsavedLastDrawingElement; public void save() { if (this.rowBreaks().elements()) { this.DEVremoveDrawing(worksheet); } next save(); if (DEVsavedLastDrawingElement != null) { OXML_RU::appendChild(worksheet, DEVsavedLastDrawingElement); } } //fixing the bug where page break element should be before the drawing public void DEVremoveDrawing(DocumentFormat.OpenXml.OpenXmlElement _parent) { OpenXmlElement lastDrawingElement; int i; i = worksheet.ChildElements.get_Count(); lastDrawingElement = _parent.get_LastChild(); str name = lastDrawingElement.get_LocalName(); if (name == "drawing") { DEVsavedLastDrawingElement = lastDrawingElement.CloneNode(true); lastDrawingElement.Remove(); } } } |
|
|
За это сообщение автора поблагодарили: SRF (1). |