Hi,
For one of the products we’re building, we are having to parse the document and persist parts of it. Based on further user input, we need to put these various parts together and generate a new document. Assume a document like this:
#section#
#type#Introduction
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Proin egestas lacus sed
- ex lobortis volutpat.
- Vestibulum ultrices ipsum eu porta iaculis.
Nullam rutrum vehicula turpis. Sed vitae ante non tellus consectetur mattis.
- Praesent posuere
- vehicula scelerisque.
Fusce vestibulum eros eget tellus imperdiet consequat. Vestibulum rhoncus aliquet pharetra.
#section#
#type#Body
Suspendisse posuere vitae odio sit amet euismod. Cras rutrum, arcu lobortis faucibus pretium, libero nisl hendrerit diam, in dignissim ex tortor et neque. Integer quis erat vitae risus aliquam
Suspendisse | posuere |
---|---|
odio | euismod |
Donec | tellus |
sodales vel sit amet arcu. Maecenas ac rhoncus ante, eu tempor turpis. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Donec tellus nisi, finibus vel dapibus ac, mattis semper risus. Sed imperdiet elementum erat, a aliquet libero lobortis quis. Integer tincidunt felis nisl, non tempus enim sodales a. Donec sed risus vel enim auctor aliquam ut non erat. Duis rhoncus, arcu a placerat ornare, nunc nibh suscipit risus, sit amet placerat metus velit at mauris.
Since this is word, we can have a variety of content going in:
- Plain text
- Text with formatting
- Lists
- Images
- Equations
- Tables
The above document, we need to parse out, and persist in 2 parts:
{
"sections": [
{
"type": "Introduction",
"content": ["???"]
},
{
"type": "Body",
"content": ["???"]
}
]
}
My question is a method of persisting these blocks of content and load them back to recreate. One way to do it is to extract the required properties from a Aspose.Paragraph
to a custom MyParagraph
object but I’m sure how you see that can soon get cumbersome. Another thing I tried is to directly persist the Aspose.Paragraph
object but that approach didn’t work because it has a circular structure.
Your thoughts?