using ceTe.DynamicPDF; using Consulenza.ReportWriter.Business.Entity; namespace Consulenza.ReportWriter.Business.OBJ_PDF { /// /// Rappresenta una linea. /// Se non specificato il colore della linea di base è ColorPDF.ConsulenzaBase_Grigio_BordoColonnaHeaderFooterTabella. /// Di default viene disegnata una linea orizzonatale. /// Impostando la _deltay2forverticalline la linea viene disegnata verticalmente. /// Utilizza la classe primitiva ceTe.DynamicPDF.PageElements.Line. /// public class LinePDF : ObjectPDF { #region Fields private float _width = 0.5F; private ColorPDF _color = ColorPDF.ConsulenzaBase_Grigio_BordoColonnaHeaderFooterTabella; private LineStyle _borderStyle = LineStyle.Solid; /// /// Imposta o ottiene l'elemento base (PageElement) /// public ceTe.DynamicPDF.PageElements.Line BaseElement { get; set; } /// /// Imposta o recupera la X iniziale del documento su cui disegnare la linea. /// public float X1 { get; set; } /// /// Imposta o recupera la Y iniziale del documento su cui disegnare la linea. /// public float Y1 { get; set; } /// /// Imposta o recupera la X finale del documento su cui disegnare la linea. /// public float X2 { get; set; } /// /// Imposta o recupera la Y finale del documento su cui disegnare la linea. /// public float Y2 { get; set; } /// /// Imposta o recupera la larghezza intesa come spessore della linea. /// public float Width { get { return _width; } set { _width = value; } } public LineStyle BorderStyle { get{ return _borderStyle; } set{ _borderStyle = value; } } /// /// Imposta o recupera un valore che è l'incremento algebrigo della Y2. /// Questa proprietà va utilizzata per disegnare linee verticali. /// Di default=0; /// public float DeltaY2ForVerticalLine { get; set; } /// /// Imposta o recupera un valore che indica l'incremento algebrico dell'incremento standard di Y1 e Y2. /// Utilizzare questa proprietà se si vuole incrementare o decrementare la Y assegnata automaticamente dal motore di renderizzazione. /// Di default=0; /// public float DeltaY { get; set; } /// /// Imposta o recupera il colore della linea. /// Di default = ColorPDF.ConsulenzaBase_Grigio_BordoColonnaHeaderFooterTabella. /// public ColorPDF Color { get { return _color; } set { _color = value; } } #endregion #region Costruttori /// /// Costruttore /// public LinePDF() { DeltaY = 0; DeltaY2ForVerticalLine = 0; ObjectType = ObjectTypePdf.LINE; } /// /// Costruttore /// /// X iniziale da cui iniziare a disegnare la linea. /// X finale in cui terminare il disegno della linea. public LinePDF(float x1, float x2) : this() { X1 = x1; X2 = x2; Y1 = 0; Y2 = 0; } /// /// Costruttore /// /// X iniziale da cui iniziare a disegnare la linea. /// X finale in cui terminare il disegno della linea. /// Spessore della linea.Se non impostato=1. public LinePDF(float x1, float x2, float width) : this(x1, x2) { _width = width; } /// /// Costruttore /// /// X iniziale da cui iniziare a disegnare la linea. /// X finale in cui terminare il disegno della linea. /// Spessore della linea.Se non impostato=1. /// Colore della linea.Se non impostato è ColorPDF.ConsulenzaBase_Grigio_BordoColonnaHeaderFooterTabella. public LinePDF(float x1, float x2, float width, ColorPDF color) : this(x1, x2, width) { _color = color; } /// /// Costruttore /// /// X iniziale da cui iniziare a disegnare la linea. /// Y iniziale da cui iniziare a disegnare la linea. /// X finale in cui terminare il disegno della linea. /// Y finale in cui terminare il disegno della linea. public LinePDF(float x1, float y1, float x2, float y2) : this() { X1 = x1; Y1 = y1; X2 = x2; Y2 = y2; } /// /// Costruttore /// /// X iniziale da cui iniziare a disegnare la linea. /// Y iniziale da cui iniziare a disegnare la linea. /// X finale in cui terminare il disegno della linea. /// Y finale in cui terminare il disegno della linea. /// Spessore della linea.Se non impostato=1. public LinePDF(float x1, float y1, float x2, float y2, float width) : this(x1, y1, x2, y2) { _width = width; } /// /// Costruttore /// /// X iniziale da cui iniziare a disegnare la linea. /// Y iniziale da cui iniziare a disegnare la linea. /// X finale in cui terminare il disegno della linea. /// Y finale in cui terminare il disegno della linea. /// Spessore della linea.Se non impostato=1. /// Colore della linea.Se non impostato è ColorPDF(118, 136, 155). public LinePDF(float x1, float y1, float x2, float y2, float width, ColorPDF color) : this(x1, y1, x2, y2, width) { _color = color; } #endregion #region Metodi /// /// Ritorna l'oggetto che sarà stampato sulla pagina del documento. /// /// public override PageElement ToElement() { return BaseElement; } #endregion } }