/// <summary> /// Add paragraph of text at the current page's vertical position /// </summary> /// <param name="text"></param> /// <param name="options"></param> public void AddParagraph(string text, ParagraphOptions options = null) { this.checkBuilderState(); if (options == null) { options = new ParagraphOptions() { FontOptions = this.documentOptions.ParagraphFontOptions }; } // convert TextAlignment to TextBoxJustify var texBoxJustify = Helpers.Convert.ToTextBoxJustify(options.TextAlignment); this.pagePosition.X = this.documentOptions.MarginLeft; double width = this.pageDimensions.Width - (this.documentOptions.MarginLeft + this.documentOptions.MarginRight); var pdfFont = this.getPdfFont(options.FontOptions); TextBox textBox = new TextBox(width, 0, 0.5); textBox.AddText(pdfFont, options.FontOptions.FontSize, DrawStyle.Normal, options.FontOptions.FontColor, text, (AnnotAction)null); // initial Y position double positionY = this.pagePosition.Y + (options.FontOptions.FontSize / this.document.ScaleFactor); this.contents.DrawText(this.documentOptions.MarginLeft, ref positionY, this.documentOptions.MarginBottom, 0, 0.15, 0, texBoxJustify, textBox); this.pagePosition.Y = positionY; this.NewLine(); }
/// <summary> /// Return a ParagraphOptions with parameters to set specific properties /// </summary> /// <param name="FontFamily"></param> /// <param name="FontStyle"></param> /// <param name="FontWeight"></param> /// <param name="FontSize"></param> /// <param name="FontColor"></param> /// <param name="TextAlignment"></param> /// <returns></returns> public static ParagraphOptions Set( TextFontFamily FontFamily = null, TextFontStyle?FontStyle = null, TextFontWeight?FontWeight = null, double?FontSize = null, Color?FontColor = null, TextAlignment?TextAlignment = null ) { var value = new ParagraphOptions(); if (FontFamily != null) { value.FontOptions.FontFamily = FontFamily; } if (FontStyle.HasValue) { value.FontOptions.FontStyle = FontStyle.Value; } if (FontWeight.HasValue) { value.FontOptions.FontWeight = FontWeight.Value; } if (FontSize.HasValue) { value.FontOptions.FontSize = FontSize.Value; } if (FontColor.HasValue) { value.FontOptions.FontColor = FontColor.Value; } if (TextAlignment.HasValue) { value.TextAlignment = TextAlignment.Value; } return(value); }