Пример #1
0
        public static PdfShading Type3(PdfWriter writer, BaseColor colorSpace, float[] coords, float[] domain, PdfFunction function, bool[] extend)
        {
            PdfShading sp = Type2(writer, colorSpace, coords, domain, function, extend);

            sp.shadingType = 3;
            sp.shading.Put(PdfName.SHADINGTYPE, new PdfNumber(sp.shadingType));
            return(sp);
        }
Пример #2
0
        public override void paintShading(PdfShading shading)
        {
            writer.addSimpleShading(shading);
            shadingDictionary.put(shading.ShadingName, shading.ShadingReference);
            content.Append(shading.ShadingName.toPdf(null)).Append(" sh").Append_i(separator);
            ColorDetails details = shading.ColorDetails;

            if (details != null)
            {
                colorDictionary.put(details.ColorName, details.IndirectReference);
            }
        }
Пример #3
0
        public static PdfShading Type1(PdfWriter writer, BaseColor colorSpace, float[] domain, float[] tMatrix, PdfFunction function)
        {
            PdfShading sp = new PdfShading(writer);

            sp.shading     = new PdfDictionary();
            sp.shadingType = 1;
            sp.shading.Put(PdfName.SHADINGTYPE, new PdfNumber(sp.shadingType));
            sp.SetColorSpace(colorSpace);
            if (domain != null)
            {
                sp.shading.Put(PdfName.DOMAIN, new PdfArray(domain));
            }
            if (tMatrix != null)
            {
                sp.shading.Put(PdfName.MATRIX, new PdfArray(tMatrix));
            }
            sp.shading.Put(PdfName.FUNCTION, function.Reference);
            return(sp);
        }
Пример #4
0
        public static PdfShading Type2(PdfWriter writer, BaseColor colorSpace, float[] coords, float[] domain, PdfFunction function, bool[] extend)
        {
            PdfShading sp = new PdfShading(writer);

            sp.shading     = new PdfDictionary();
            sp.shadingType = 2;
            sp.shading.Put(PdfName.SHADINGTYPE, new PdfNumber(sp.shadingType));
            sp.SetColorSpace(colorSpace);
            sp.shading.Put(PdfName.COORDS, new PdfArray(coords));
            if (domain != null)
            {
                sp.shading.Put(PdfName.DOMAIN, new PdfArray(domain));
            }
            sp.shading.Put(PdfName.FUNCTION, function.Reference);
            if (extend != null && (extend[0] || extend[1]))
            {
                PdfArray array = new PdfArray(extend[0] ? PdfBoolean.PDFTRUE : PdfBoolean.PDFFALSE);
                array.Add(extend[1] ? PdfBoolean.PDFTRUE : PdfBoolean.PDFFALSE);
                sp.shading.Put(PdfName.EXTEND, array);
            }
            return(sp);
        }
Пример #5
0
        public static PdfShading Type2(PdfWriter writer, BaseColor colorSpace, float[] coords, float[] domain, PdfFunction function, bool[] extend)
        {
            PdfShading sp = new PdfShading(writer);

            sp.Shading     = new PdfDictionary();
            sp.ShadingType = 2;
            sp.Shading.Put(PdfName.Shadingtype, new PdfNumber(sp.ShadingType));
            sp.SetColorSpace(colorSpace);
            sp.Shading.Put(PdfName.Coords, new PdfArray(coords));
            if (domain != null)
            {
                sp.Shading.Put(PdfName.Domain, new PdfArray(domain));
            }
            sp.Shading.Put(PdfName.Function, function.Reference);
            if (extend != null && (extend[0] || extend[1]))
            {
                PdfArray array = new PdfArray(extend[0] ? PdfBoolean.Pdftrue : PdfBoolean.Pdffalse);
                array.Add(extend[1] ? PdfBoolean.Pdftrue : PdfBoolean.Pdffalse);
                sp.Shading.Put(PdfName.Extend, array);
            }
            return(sp);
        }
Пример #6
0
 internal void AddSimpleShading(PdfShading shading) {
     if (!documentShadings.ContainsKey(shading)) {
         documentShadings[shading] = null;
         shading.Name = documentShadings.Count;
     }
 }
Пример #7
0
 /** Creates new PdfShadingPattern */
 public PdfShadingPattern(PdfShading shading)
 {
     writer = shading.Writer;
     Put(PdfName.PATTERNTYPE, new PdfNumber(2));
     this.shading = shading;
 }
 /** Creates new PdfShadingPattern */
 public PdfShadingPattern(PdfShading shading)
 {
     writer = shading.Writer;
     Put(PdfName.PATTERNTYPE, new PdfNumber(2));
     this.shading = shading;
 }
Пример #9
0
 /**
 * Paints using a shading object.
 * @param shading the shading object
 */
 public virtual void PaintShading(PdfShading shading)
 {
     writer.AddSimpleShading(shading);
     PageResources prs = PageResources;
     PdfName name = prs.AddShading(shading.ShadingName, shading.ShadingReference);
     content.Append(name.GetBytes()).Append(" sh").Append_i(separator);
     ColorDetails details = shading.ColorDetails;
     if (details != null)
         prs.AddColor(details.ColorName, details.IndirectReference);
 }
Пример #10
0
 public static PdfShading Type2(PdfWriter writer, BaseColor colorSpace, float[] coords, float[] domain, PdfFunction function, bool[] extend) {
     PdfShading sp = new PdfShading(writer);
     sp.shading = new PdfDictionary();
     sp.shadingType = 2;
     sp.shading.Put(PdfName.SHADINGTYPE, new PdfNumber(sp.shadingType));
     sp.SetColorSpace(colorSpace);
     sp.shading.Put(PdfName.COORDS, new PdfArray(coords));
     if (domain != null)
         sp.shading.Put(PdfName.DOMAIN, new PdfArray(domain));
     sp.shading.Put(PdfName.FUNCTION, function.Reference);
     if (extend != null && (extend[0] || extend[1])) {
         PdfArray array = new PdfArray(extend[0] ? PdfBoolean.PDFTRUE : PdfBoolean.PDFFALSE);
         array.Add(extend[1] ? PdfBoolean.PDFTRUE : PdfBoolean.PDFFALSE);
         sp.shading.Put(PdfName.EXTEND, array);
     }
     return sp;
 }
Пример #11
0
 public static PdfShading Type1(PdfWriter writer, BaseColor colorSpace, float[] domain, float[] tMatrix, PdfFunction function) {
     PdfShading sp = new PdfShading(writer);
     sp.shading = new PdfDictionary();
     sp.shadingType = 1;
     sp.shading.Put(PdfName.SHADINGTYPE, new PdfNumber(sp.shadingType));
     sp.SetColorSpace(colorSpace);
     if (domain != null)
         sp.shading.Put(PdfName.DOMAIN, new PdfArray(domain));
     if (tMatrix != null)
         sp.shading.Put(PdfName.MATRIX, new PdfArray(tMatrix));
     sp.shading.Put(PdfName.FUNCTION, function.Reference);
     return sp;
 }
Пример #12
0
 /// <summary>
 /// Creates new PdfShadingPattern
 /// </summary>
 public PdfShadingPattern(PdfShading shading)
 {
     Writer = shading.Writer;
     Put(PdfName.Patterntype, new PdfNumber(2));
     this.shading = shading;
 }