@@ -159,8 +159,7 @@ Any convert to elements workflow of course doesn't have a PdfDocument.
159
159
[ NUnit . Framework . Test ]
160
160
[ LogMessage ( iText . StyledXmlParser . Logs . StyledXmlParserLogMessageConstant . UNABLE_TO_RETRIEVE_STREAM_WITH_GIVEN_BASE_URI
161
161
, Count = 1 ) ]
162
- [ LogMessage ( Html2PdfLogMessageConstant . WORKER_UNABLE_TO_PROCESS_OTHER_WORKER , Count = 1 ) ]
163
- [ LogMessage ( Html2PdfLogMessageConstant . PDF_DOCUMENT_NOT_PRESENT , Count = 1 ) ]
162
+ [ LogMessage ( Html2PdfLogMessageConstant . WORKER_UNABLE_TO_PROCESS_OTHER_WORKER ) ]
164
163
public virtual void HtmlObjectMalformedUrlTest ( ) {
165
164
String html = "<object data ='htt://as' type='image/svg+xml'></object>" ;
166
165
IList < IElement > lst = HtmlConverter . ConvertToElements ( html ) ;
@@ -279,14 +278,66 @@ public virtual void ConvertToElementsAndCreateTwoDocumentsTest() {
279
278
}
280
279
281
280
[ NUnit . Framework . Test ]
282
- //TODO: DEVSIX-3891 change the Assert after supporting the svg tag
283
- [ LogMessage ( Html2PdfLogMessageConstant . WORKER_UNABLE_TO_PROCESS_OTHER_WORKER , LogLevel = LogLevelConstants
284
- . ERROR ) ]
285
281
public virtual void HtmlToElementsSvgTest ( ) {
286
282
String html = "<svg height=\" 100\" width=\" 100\" >" + "<circle cx=\" 50\" cy=\" 50\" r=\" 40\" stroke=\" black\" stroke-width=\" 3\" fill=\" red\" />"
287
283
+ "</svg>" ;
284
+ String cmpPdf = sourceFolder + "cmp_htmlToElementsSvg.pdf" ;
285
+ String outPdf = destinationFolder + "htmlToElementsSvg.pdf" ;
288
286
IList < IElement > lst = HtmlConverter . ConvertToElements ( html ) ;
289
- NUnit . Framework . Assert . AreEqual ( 0 , lst . Count ) ;
287
+ NUnit . Framework . Assert . AreEqual ( 1 , lst . Count ) ;
288
+ using ( Document document = new Document ( new PdfDocument ( new PdfWriter ( outPdf ) ) ) ) {
289
+ foreach ( IElement element in lst ) {
290
+ document . Add ( ( Image ) element ) ;
291
+ }
292
+ }
293
+ NUnit . Framework . Assert . IsNull ( new CompareTool ( ) . CompareByContent ( outPdf , cmpPdf , destinationFolder ) ) ;
294
+ }
295
+
296
+ [ NUnit . Framework . Test ]
297
+ public virtual void HtmlToElementsSvgInTheTableTest ( ) {
298
+ String html = "<table style=\" border: 1pt solid black\" >\n " + " <tr>\n " + " <td>\n " + " <svg height=\" 100\" width=\" 100\" >\n "
299
+ + " <circle cx=\" 50\" cy=\" 50\" r=\" 40\" stroke=\" black\" stroke-width=\" 3\" fill=\" red\" />\n "
300
+ + " </svg>\n " + " </td>\n " + " <td>\n " + " test\n " + " </td>\n " + " </tr>\n "
301
+ + "</table>" ;
302
+ String cmpPdf = sourceFolder + "cmp_htmlToElementsSvgInTheTable.pdf" ;
303
+ String outPdf = destinationFolder + "htmlToElementsSvgInTheTable.pdf" ;
304
+ IList < IElement > elements = HtmlConverter . ConvertToElements ( html ) ;
305
+ using ( Document document = new Document ( new PdfDocument ( new PdfWriter ( outPdf ) ) ) ) {
306
+ foreach ( IElement element in elements ) {
307
+ document . Add ( ( IBlockElement ) element ) ;
308
+ }
309
+ }
310
+ NUnit . Framework . Assert . IsNull ( new CompareTool ( ) . CompareByContent ( outPdf , cmpPdf , destinationFolder ) ) ;
311
+ }
312
+
313
+ [ NUnit . Framework . Test ]
314
+ public virtual void HtmlToElementsSvgImgTest ( ) {
315
+ String html = "<img src=\" lines.svg\" height=\" 500\" width=\" 500\" />" ;
316
+ String cmpPdf = sourceFolder + "cmp_htmlToElementsSvgImg.pdf" ;
317
+ String outPdf = destinationFolder + "htmlToElementsSvgImg.pdf" ;
318
+ IList < IElement > elements = HtmlConverter . ConvertToElements ( html , new ConverterProperties ( ) . SetBaseUri ( sourceFolder
319
+ ) ) ;
320
+ using ( Document document = new Document ( new PdfDocument ( new PdfWriter ( outPdf ) ) ) ) {
321
+ foreach ( IElement element in elements ) {
322
+ document . Add ( ( IBlockElement ) element ) ;
323
+ }
324
+ }
325
+ NUnit . Framework . Assert . IsNull ( new CompareTool ( ) . CompareByContent ( outPdf , cmpPdf , destinationFolder ) ) ;
326
+ }
327
+
328
+ [ NUnit . Framework . Test ]
329
+ public virtual void HtmlToElementsSvgObjectTest ( ) {
330
+ String html = "<object data ='lines.svg' type='image/svg+xml'></object>" ;
331
+ String cmpPdf = sourceFolder + "cmp_htmlToElementsSvgObject.pdf" ;
332
+ String outPdf = destinationFolder + "htmlToElementsSvgObject.pdf" ;
333
+ IList < IElement > elements = HtmlConverter . ConvertToElements ( html , new ConverterProperties ( ) . SetBaseUri ( sourceFolder
334
+ ) ) ;
335
+ using ( Document document = new Document ( new PdfDocument ( new PdfWriter ( outPdf ) ) ) ) {
336
+ foreach ( IElement element in elements ) {
337
+ document . Add ( ( Image ) element ) ;
338
+ }
339
+ }
340
+ NUnit . Framework . Assert . IsNull ( new CompareTool ( ) . CompareByContent ( outPdf , cmpPdf , destinationFolder ) ) ;
290
341
}
291
342
292
343
private static void AddElementsToDocument ( Document document , IList < IElement > elements ) {
0 commit comments