internal override void ProcessRenderingElementContent(RPLElement rplElement, GdiContext context, RectangleF bounds) { Color = GdiContext.GetStylePropertyValueColor(InstanceProperties, 0); Width = GdiContext.GetStylePropertyValueSizeMM(InstanceProperties, 10); switch ((RPLFormat.BorderStyles)SharedRenderer.GetStylePropertyValueObject(InstanceProperties, 5)) { case RPLFormat.BorderStyles.Dotted: Style = DashStyle.Dot; break; case RPLFormat.BorderStyles.Dashed: Style = DashStyle.Dash; break; default: Style = DashStyle.Solid; break; } }
internal void ProcessBackgroundColorAndImage(GdiContext context, RPLElementProps properties) { m_backgroundColor = GdiContext.GetStylePropertyValueColor(properties, 34); object stylePropertyValueObject = SharedRenderer.GetStylePropertyValueObject(properties, 33); if (stylePropertyValueObject != null) { m_backgroundImage = GetImage(context, (RPLImageData)stylePropertyValueObject); object stylePropertyValueObject2 = SharedRenderer.GetStylePropertyValueObject(properties, 35); if (stylePropertyValueObject2 == null) { m_backgroundRepeat = RPLFormat.BackgroundRepeatTypes.Repeat; } else { m_backgroundRepeat = (RPLFormat.BackgroundRepeatTypes)stylePropertyValueObject2; } } }
internal void ProcessBorders(GdiWriter writer, RPLItemProps properties, RectangleF bounds, byte state) { RPLFormat.BorderStyles stylePropertyValueBorderStyle = SharedRenderer.GetStylePropertyValueBorderStyle(properties, 5, RPLFormat.BorderStyles.None); m_borderLeft.Style = SharedRenderer.GetStylePropertyValueBorderStyle(properties, 6, stylePropertyValueBorderStyle); m_borderRight.Style = SharedRenderer.GetStylePropertyValueBorderStyle(properties, 7, stylePropertyValueBorderStyle); m_borderTop.Style = SharedRenderer.GetStylePropertyValueBorderStyle(properties, 8, stylePropertyValueBorderStyle); m_borderBottom.Style = SharedRenderer.GetStylePropertyValueBorderStyle(properties, 9, stylePropertyValueBorderStyle); if (m_borderLeft.Style == RPLFormat.BorderStyles.None && m_borderRight.Style == RPLFormat.BorderStyles.None && m_borderTop.Style == RPLFormat.BorderStyles.None && m_borderBottom.Style == RPLFormat.BorderStyles.None) { return; } float stylePropertyValueSizeMM = GdiContext.GetStylePropertyValueSizeMM(properties, 10); m_borderLeft.Width = GdiContext.GetStylePropertyValueSizeMM(properties, 11); if (float.IsNaN(m_borderLeft.Width) && !float.IsNaN(stylePropertyValueSizeMM)) { m_borderLeft.Width = stylePropertyValueSizeMM; } m_borderRight.Width = GdiContext.GetStylePropertyValueSizeMM(properties, 12); if (float.IsNaN(m_borderRight.Width) && !float.IsNaN(stylePropertyValueSizeMM)) { m_borderRight.Width = stylePropertyValueSizeMM; } m_borderTop.Width = GdiContext.GetStylePropertyValueSizeMM(properties, 13); if (float.IsNaN(m_borderTop.Width) && !float.IsNaN(stylePropertyValueSizeMM)) { m_borderTop.Width = stylePropertyValueSizeMM; } m_borderBottom.Width = GdiContext.GetStylePropertyValueSizeMM(properties, 14); if (float.IsNaN(m_borderBottom.Width) && !float.IsNaN(stylePropertyValueSizeMM)) { m_borderBottom.Width = stylePropertyValueSizeMM; } if (!float.IsNaN(m_borderLeft.Width) || !float.IsNaN(m_borderRight.Width) || !float.IsNaN(m_borderTop.Width) || !float.IsNaN(m_borderBottom.Width)) { Color stylePropertyValueColor = GdiContext.GetStylePropertyValueColor(properties, 0); m_borderLeft.Color = GdiContext.GetStylePropertyValueColor(properties, 1); if (m_borderLeft.Color == Color.Empty && stylePropertyValueColor != Color.Empty) { m_borderLeft.Color = stylePropertyValueColor; } m_borderRight.Color = GdiContext.GetStylePropertyValueColor(properties, 2); if (m_borderRight.Color == Color.Empty && stylePropertyValueColor != Color.Empty) { m_borderRight.Color = stylePropertyValueColor; } m_borderTop.Color = GdiContext.GetStylePropertyValueColor(properties, 3); if (m_borderTop.Color == Color.Empty && stylePropertyValueColor != Color.Empty) { m_borderTop.Color = stylePropertyValueColor; } m_borderBottom.Color = GdiContext.GetStylePropertyValueColor(properties, 4); if (m_borderBottom.Color == Color.Empty && stylePropertyValueColor != Color.Empty) { m_borderBottom.Color = stylePropertyValueColor; } if (!(m_borderLeft.Color == Color.Empty) || !(m_borderRight.Color == Color.Empty) || !(m_borderTop.Color == Color.Empty) || !(m_borderBottom.Color == Color.Empty)) { ProcessBorders(writer, ref m_borderTop, ref m_borderLeft, ref m_borderBottom, ref m_borderRight, base.Position, bounds, state); } } }