iTextSharp.text.pdf.PdfFormField.MergeResources C# (CSharp) Method

MergeResources() static private method

static private MergeResources ( PdfDictionary result, PdfDictionary source, PdfStamperImp writer ) : void
result PdfDictionary
source PdfDictionary
writer PdfStamperImp
return void
        internal static void MergeResources(PdfDictionary result, PdfDictionary source, PdfStamperImp writer)
        {
            PdfDictionary dic = null;
            PdfDictionary res = null;
            PdfName target = null;
            for (int k = 0; k < mergeTarget.Length; ++k) {
                target = mergeTarget[k];
                PdfDictionary pdfDict = source.GetAsDict(target);
                if ((dic = pdfDict) != null) {
                    if ((res = (PdfDictionary)PdfReader.GetPdfObject(result.Get(target), result)) == null) {
                        res = new PdfDictionary();
                    }
                    res.MergeDifferent(dic);
                    result.Put(target, res);
                    if (writer != null)
                        writer.MarkUsed(res);
                }
            }
        }

Same methods

PdfFormField::MergeResources ( PdfDictionary result, PdfDictionary source ) : void

Usage Example

Ejemplo n.º 1
0
        /**
         * Closes the AcroForm.
         */
        public bool IsValid()
        {
            if (documentFields.Size == 0)
            {
                return(false);
            }
            Put(PdfName.FIELDS, documentFields);
            if (sigFlags != 0)
            {
                Put(PdfName.SIGFLAGS, new PdfNumber(sigFlags));
            }
            if (calculationOrder.Size > 0)
            {
                Put(PdfName.CO, calculationOrder);
            }
            if (fieldTemplates.Count == 0)
            {
                return(true);
            }
            PdfDictionary dic = new PdfDictionary();

            foreach (PdfTemplate template in fieldTemplates.Keys)
            {
                PdfFormField.MergeResources(dic, (PdfDictionary)template.Resources);
            }
            Put(PdfName.DR, dic);
            Put(PdfName.DA, new PdfString("/Helv 0 Tf 0 g "));
            PdfDictionary fonts = (PdfDictionary)dic.Get(PdfName.FONT);

            if (fonts != null)
            {
                writer.EliminateFontSubset(fonts);
            }
            return(true);
        }
All Usage Examples Of iTextSharp.text.pdf.PdfFormField::MergeResources