Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- itextsharp - CSS not getting applied - C# .NET
- .mystyle
- {
- color: red;
- width: 400px;
- }
- StyleSheet css = new StyleSheet();
- css.LoadStyle("mystyle", "color", "red");
- css.LoadStyle("mystyle", "width", "400px");
- div .myclass
- {
- /*some styles*/
- }
- td a.hover
- {
- /*some styles*/
- }
- td .myclass2
- {
- /*some styles*/
- }
- .myclass .myinnerclass
- {
- /*some styles*/
- }
- <%@ WebHandler Language='C#' Class='styles' %>
- using System;
- using System.Collections.Generic;
- using System.IO;
- using System.Text;
- using System.Web;
- using iTextSharp.text.html;
- using iTextSharp.text.html.simpleparser;
- using iTextSharp.text;
- using iTextSharp.text.pdf;
- public class styles : IHttpHandler {
- public void ProcessRequest (HttpContext context) {
- HttpResponse Response = context.Response;
- Response.ContentType = "application/pdf";
- string Html = @"
- <h1>h1</h1>
- <p>A paragraph</p>
- <ul>
- <li>one</li>
- <li>two</li>
- <li>three</li>
- </ul>";
- StyleSheet styles = new StyleSheet();
- styles.LoadTagStyle(HtmlTags.H1, HtmlTags.FONTSIZE, "16");
- styles.LoadTagStyle(HtmlTags.P, HtmlTags.FONTSIZE, "10");
- styles.LoadTagStyle(HtmlTags.P, HtmlTags.COLOR, "#ff0000");
- styles.LoadTagStyle(HtmlTags.UL, HtmlTags.INDENT, "10");
- styles.LoadTagStyle(HtmlTags.LI, HtmlTags.LEADING, "16");
- using (Document document = new Document()) {
- PdfWriter.GetInstance(document, Response.OutputStream);
- document.Open();
- List<IElement> objects = HTMLWorker.ParseToList(
- new StringReader(Html), styles
- );
- foreach (IElement element in objects) {
- document.Add(element);
- }
- }
- }
- public bool IsReusable {
- get { return false; }
- }
- }
- var reader = new StringReader(text);
- var styles = new StyleSheet();
- styles.LoadTagStyle("body", "face", "Arial");
- styles.LoadTagStyle("body", "size", fontSize + "px");
- styles.LoadTagStyle("body", "font-weight", "bold");
- ArrayList list = HTMLWorker.ParseToList(reader, styles);
- for (int k = 0; k < list.Count; k++)
- {
- var element = (IElement)list[k];
- if (element is Paragraph)
- {
- var paragraph = (Paragraph)element;
- paragraph.SpacingAfter = 10f;
- cell.AddElement(paragraph);
- }
- else
- cell.AddElement((IElement)list[k]);
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement