当前位置: 首页>>代码示例>>C#>>正文


C# Cairo.FillRectangleInUnit方法代码示例

本文整理汇总了C#中Cairo.FillRectangleInUnit方法的典型用法代码示例。如果您正苦于以下问题:C# Cairo.FillRectangleInUnit方法的具体用法?C# Cairo.FillRectangleInUnit怎么用?C# Cairo.FillRectangleInUnit使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在Cairo的用法示例。


在下文中一共展示了Cairo.FillRectangleInUnit方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。

示例1: Render

        public override void Render(Cairo.Context c)
        {
            InvalidateBound ();
            c.Save ();
            c.FillRectangleInUnit (AbsoluteBound, section.BackgroundColor.ToCairoColor ());
            Cairo.Gradient pat = new Cairo.LinearGradient (0, AbsoluteBound.Y * SectionRenderer.UnitMulitipier, 0, (AbsoluteBound.Y + SectionheaderHeight) * SectionRenderer.UnitMulitipier);
            pat.AddColorStop (0, sectionHeaderColor);
            pat.AddColorStop (1, sectionHeaderColor1);
            c.FillRectangleInUnit (HeaderAbsoluteBound, pat);

            c.DrawText (new Cairo.PointD (HeaderAbsoluteBound.X + 2, HeaderAbsoluteBound.Y + 1), "Arial", Cairo.FontSlant.Normal, Cairo.FontWeight.Normal, 12, blackColor, 600, Section.Name);
            c.FillRectangleInUnit (GripperAbsoluteBound, SectionGripperColor);
            c.Translate (AbsoluteDrawingStartPoint.X, AbsoluteDrawingStartPoint.Y * SectionRenderer.UnitMulitipier);

            for (int j = 0; j < Controls.Count; j++) {
                var ctrl = Controls [j];
                ctrl.Render (c);
            }

            c.Restore ();
        }
开发者ID:elsupergomez,项目名称:monoreports,代码行数:21,代码来源:SectionView.cs

示例2: Render

        public void Render(Cairo.Context c,Control control)
        {
            TextBlock textBlock = control as TextBlock;
            Rectangle borderRect;
            c.Save();
            borderRect = new Rectangle (textBlock.Location.X * unitMulitipier , textBlock.Location.Y  * unitMulitipier, textBlock.Width  * unitMulitipier, textBlock.Height  * unitMulitipier);
            if(!textBlock.CanGrow || DesignMode)
                c.ClipRectangle(borderRect);

            var rect = c.DrawTextBlock (textBlock,false);
            if(!DesignMode && (textBlock.CanGrow && rect.Height > textBlock.Height  || textBlock.CanShrink && rect.Height < textBlock.Height )){
                borderRect = new Rectangle (textBlock.Location.X, textBlock.Location.Y, textBlock.Width, rect.Height);
            } else {
                borderRect = new Rectangle (textBlock.Location.X, textBlock.Location.Y, textBlock.Width, textBlock.Height);

            }

            c.FillRectangleInUnit(borderRect,textBlock.BackgroundColor.ToCairoColor());
            if(DesignMode){
                c.DrawInsideSelectorInUnits  (borderRect, new Border(1),4);
            }
            c.DrawTextBlock (textBlock,true);
            c.DrawInsideBorderInUnit  (borderRect, textBlock.Border,true);
            c.Restore();
            if(MonoreportsSettings.debugMode)
                c.DrawDebug( string.Format(Catalog.GetString("bottom: {0}"),textBlock.Bottom.ToUnitString()),borderRect.X,textBlock.Bottom);
        }
开发者ID:elsupergomez,项目名称:monoreports,代码行数:27,代码来源:TextBlockRenderer.cs


注:本文中的Cairo.FillRectangleInUnit方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。