Example #1
0
 /// <summary>Processes a page break "before" property.</summary>
 /// <param name="context">the processor context</param>
 /// <param name="parentTagWorker">the parent tag worker</param>
 /// <param name="childElement">the child element</param>
 /// <param name="childTagWorker">the child tag worker</param>
 public static void AddPageBreakElementBefore(ProcessorContext context, ITagWorker parentTagWorker, IElementNode
                                              childElement, ITagWorker childTagWorker)
 {
     /* Handles left, right, always cases. Avoid is handled at different time along with other css property application */
     if (IsEligibleForBreakBeforeAfter(parentTagWorker, childElement, childTagWorker))
     {
         String        pageBreakBeforeVal = childElement.GetStyles().Get(CssConstants.PAGE_BREAK_BEFORE);
         HtmlPageBreak breakBefore        = CreateHtmlPageBreak(pageBreakBeforeVal);
         if (breakBefore != null)
         {
             parentTagWorker.ProcessTagChild(new PageBreakApplierUtil.HtmlPageBreakWorker(breakBefore), context);
         }
     }
 }
Example #2
0
        /// <summary>
        /// Creates an
        /// <see cref="iText.Html2pdf.Attach.Impl.Layout.HtmlPageBreak"/>
        /// instance.
        /// </summary>
        /// <param name="pageBreakVal">the page break value</param>
        /// <returns>
        /// the
        /// <see cref="iText.Html2pdf.Attach.Impl.Layout.HtmlPageBreak"/>
        /// instance
        /// </returns>
        private static HtmlPageBreak CreateHtmlPageBreak(String pageBreakVal)
        {
            HtmlPageBreak pageBreak = null;

            if (CssConstants.ALWAYS.Equals(pageBreakVal))
            {
                pageBreak = new HtmlPageBreak(HtmlPageBreakType.ALWAYS);
            }
            else
            {
                if (CssConstants.LEFT.Equals(pageBreakVal))
                {
                    pageBreak = new HtmlPageBreak(HtmlPageBreakType.LEFT);
                }
                else
                {
                    if (CssConstants.RIGHT.Equals(pageBreakVal))
                    {
                        pageBreak = new HtmlPageBreak(HtmlPageBreakType.RIGHT);
                    }
                }
            }
            return(pageBreak);
        }
Example #3
0
 /// <summary>
 /// Creates a new
 /// <see cref="HtmlPageBreakWorker"/>
 /// instance.
 /// </summary>
 /// <param name="pageBreak">the page break</param>
 internal HtmlPageBreakWorker(HtmlPageBreak pageBreak)
 {
     this.pageBreak = pageBreak;
 }