Esempio n. 1
0
        /// <summary>Writes a log message reporting that orphans constraint is violated.</summary>
        /// <remarks>
        /// Writes a log message reporting that orphans constraint is violated.
        /// This method is to be overridden if violation scenarios need to be handled in some other way.
        /// </remarks>
        /// <param name="renderer">a renderer processing orphans</param>
        /// <param name="message">
        ///
        /// <see cref="System.String"/>
        /// explaining the reason for violation
        /// </param>
        public virtual void HandleViolatedOrphans(ParagraphRenderer renderer, String message)
        {
            ILog logger = LogManager.GetLogger(typeof(iText.Layout.Properties.ParagraphOrphansControl));

            if (renderer.GetOccupiedArea() != null && renderer.GetLines() != null)
            {
                int    pageNumber = renderer.GetOccupiedArea().GetPageNumber();
                String warnText   = MessageFormatUtil.Format(iText.IO.LogMessageConstant.ORPHANS_CONSTRAINT_VIOLATED, pageNumber
                                                             , minOrphans, renderer.GetLines().Count, message);
                logger.Warn(warnText);
            }
            else
            {
                logger.Warn(iText.IO.LogMessageConstant.PREMATURE_CALL_OF_HANDLE_VIOLATION_METHOD);
            }
        }