Advertisement
Guest User

Untitled

a guest
Jun 27th, 2012
5,462
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.21 KB | None | 0 0
  1. itextsharp - CSS not getting applied - C# .NET
  2. .mystyle
  3. {
  4. color: red;
  5. width: 400px;
  6. }
  7.  
  8. StyleSheet css = new StyleSheet();
  9. css.LoadStyle("mystyle", "color", "red");
  10. css.LoadStyle("mystyle", "width", "400px");
  11.  
  12. div .myclass
  13. {
  14. /*some styles*/
  15. }
  16.  
  17. td a.hover
  18. {
  19. /*some styles*/
  20. }
  21.  
  22. td .myclass2
  23. {
  24. /*some styles*/
  25. }
  26. .myclass .myinnerclass
  27. {
  28. /*some styles*/
  29. }
  30.  
  31. <%@ WebHandler Language='C#' Class='styles' %>
  32. using System;
  33. using System.Collections.Generic;
  34. using System.IO;
  35. using System.Text;
  36. using System.Web;
  37. using iTextSharp.text.html;
  38. using iTextSharp.text.html.simpleparser;
  39. using iTextSharp.text;
  40. using iTextSharp.text.pdf;
  41.  
  42. public class styles : IHttpHandler {
  43. public void ProcessRequest (HttpContext context) {
  44. HttpResponse Response = context.Response;
  45. Response.ContentType = "application/pdf";
  46. string Html = @"
  47. <h1>h1</h1>
  48. <p>A paragraph</p>
  49. <ul>
  50. <li>one</li>
  51. <li>two</li>
  52. <li>three</li>
  53. </ul>";
  54. StyleSheet styles = new StyleSheet();
  55. styles.LoadTagStyle(HtmlTags.H1, HtmlTags.FONTSIZE, "16");
  56. styles.LoadTagStyle(HtmlTags.P, HtmlTags.FONTSIZE, "10");
  57. styles.LoadTagStyle(HtmlTags.P, HtmlTags.COLOR, "#ff0000");
  58. styles.LoadTagStyle(HtmlTags.UL, HtmlTags.INDENT, "10");
  59. styles.LoadTagStyle(HtmlTags.LI, HtmlTags.LEADING, "16");
  60. using (Document document = new Document()) {
  61. PdfWriter.GetInstance(document, Response.OutputStream);
  62. document.Open();
  63. List<IElement> objects = HTMLWorker.ParseToList(
  64. new StringReader(Html), styles
  65. );
  66. foreach (IElement element in objects) {
  67. document.Add(element);
  68. }
  69. }
  70. }
  71. public bool IsReusable {
  72. get { return false; }
  73. }
  74. }
  75.  
  76. var reader = new StringReader(text);
  77. var styles = new StyleSheet();
  78. styles.LoadTagStyle("body", "face", "Arial");
  79. styles.LoadTagStyle("body", "size", fontSize + "px");
  80. styles.LoadTagStyle("body", "font-weight", "bold");
  81.  
  82. ArrayList list = HTMLWorker.ParseToList(reader, styles);
  83. for (int k = 0; k < list.Count; k++)
  84. {
  85.  
  86. var element = (IElement)list[k];
  87.  
  88. if (element is Paragraph)
  89. {
  90. var paragraph = (Paragraph)element;
  91. paragraph.SpacingAfter = 10f;
  92. cell.AddElement(paragraph);
  93. }
  94. else
  95. cell.AddElement((IElement)list[k]);
  96. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement