예제 #1
0
        /// <summary>
        /// Setups the shading pattern from the specified brush.
        /// </summary>
        internal void SetupFromBrush(XLinearGradientBrush brush, XMatrix matrix, XGraphicsPDFRenderer renderer)
        {
            if (brush == null)
            {
                throw new ArgumentNullException("brush");
            }

            PDFShading shading = new PDFShading(_document);

            shading.SetupFromBrush(brush, renderer);
            Elements[Keys.Shading] = shading;
            //Elements[Keys.Matrix] = new PDFLiteral("[" + PDFEncoders.ToString(matrix) + "]");
            Elements.SetMatrix(Keys.Matrix, matrix);
        }
예제 #2
0
 /// <summary>
 /// Adds the specified shading to this resource dictionary
 /// and returns its local resource name.
 /// </summary>
 public string AddShading(PDFShading shading)
 {
     if (!_resources.TryGetValue(shading, out string name))
     {
         name = NextShadingName;
         _resources[shading] = name;
         if (shading.Reference == null)
         {
             Owner.IrefTable.Add(shading);
         }
         Shadings.Elements[name] = shading.Reference;
     }
     return(name);
 }