What problems is Aspose.Total solving and how is that benefiting you?
Apose.Words for .NET allowed us to quickly develop a custom PDF report for our embedded measurement device. Apose.Words has 3 different interfaces to create Word documents which are then converted to PDFs: LINQ Reporting Engine, Word Mail Merge, and the Document Builder. The conversion works like Word’s Print to PDF option and works very consistently. The integration was very convenient using the NuGet Package manager which is already integrated into Visual Studio and the library is updated very frequently. There is no need for any additional software. With the available documentation and examples for all three interfaces, it was very easy to get started.
We opted to use the LINQ Reporting Engine which allowed us to design the report template with Microsoft Word including custom font family, headings, colors, and page numbers, and allows us to create tables with a dynamic number of rows. The LINQ Reporting Engine works with a custom syntax resembling a somewhat similar appearance as HTML (Picture 1). We made use of the foreach-syntax which allows us to iterate through lists and insert dictionaries of strings. It is also possible to redefine nested variables (e.g., sample.Header = h) so that the template stays simple. The data is fed to the Apose Library using an object with defined properties which then replaces the pre-defined template placeholders. The spacing is somewhat tricky, where the foreach-opening tags must be placed cautiously to prevent empty lines. The PDF output file (Picture 2) resembles the exact same layout and allows text to be selected. The Dictionaries are inserted with key and value pairs separated by a tab. In this example, only the table’s first four rows are filled with values.
Picture 1 (Template File written in Microsoft Word): https://ibb.co/Z8wRzP1
Picture 2 (PDF output file with filled data): https://ibb.co/NNtM9wH
The Apose library supports MemoryStreams as output for the generated PDF file, which is a very convenient way to circumvent filenames.
Our decision to go with Apose.Words was reinforced by the Aspose.Words Document Builder which is available with the same license. The Document Builder should allow us in the future to build PDF reports fully dynamically using only code. The Document Builder also seems to be well-rounded since it supports all necessary word properties. This would significantly simplify changing page size (A4 to letter), and company logo, having tables with a dynamic number of columns, and dynamically hiding certain areas from the report completely according to our customer’s needs. Review collected by and hosted on G2.com.