iTextSharp.text.pdf.PdfDictionary.Contains C# (CSharp) Method

Contains() public method

public Contains ( PdfName key ) : bool
key PdfName
return bool
        public bool Contains(PdfName key)
        {
            return hashMap.ContainsKey(key);
        }

Usage Example

コード例 #1
0
 /**
 * Retrieves the page labels from a PDF as an array of String objects.
 * @param reader a PdfReader object that has the page labels you want to retrieve
 * @return  a String array or <code>null</code> if no page labels are present
 */
 public static String[] GetPageLabels(PdfReader reader) {
     
     int n = reader.NumberOfPages;
     
     PdfDictionary dict = reader.Catalog;
     PdfDictionary labels = (PdfDictionary)PdfReader.GetPdfObjectRelease(dict.Get(PdfName.PAGELABELS));
     if (labels == null)
         return null;
     
     String[] labelstrings = new String[n];
     Dictionary<int, PdfObject> numberTree = PdfNumberTree.ReadTree(labels);
     
     int pagecount = 1;
     String prefix = "";
     char type = 'D';
     for (int i = 0; i < n; i++) {
         if (numberTree.ContainsKey(i)) {
             PdfDictionary d = (PdfDictionary)PdfReader.GetPdfObjectRelease(numberTree[i]);
             if (d.Contains(PdfName.ST)) {
                 pagecount = ((PdfNumber)d.Get(PdfName.ST)).IntValue;
             }
             else {
                 pagecount = 1;
             }
             if (d.Contains(PdfName.P)) {
                 prefix = ((PdfString)d.Get(PdfName.P)).ToUnicodeString();
             }
             if (d.Contains(PdfName.S)) {
                 type = ((PdfName)d.Get(PdfName.S)).ToString()[1];
             }
             else {
                 type = 'e';
             }
         }
         switch (type) {
         default:
             labelstrings[i] = prefix + pagecount;
             break;
         case 'R':
             labelstrings[i] = prefix + RomanNumberFactory.GetUpperCaseString(pagecount);
             break;
         case 'r':
             labelstrings[i] = prefix + RomanNumberFactory.GetLowerCaseString(pagecount);
             break;
         case 'A':
             labelstrings[i] = prefix + RomanAlphabetFactory.GetUpperCaseString(pagecount);
             break;
         case 'a':
             labelstrings[i] = prefix + RomanAlphabetFactory.GetLowerCaseString(pagecount);
             break;
         case 'e':
             labelstrings[i] = prefix;
             break;
         }
         pagecount++;
     }
     return labelstrings;
 }
All Usage Examples Of iTextSharp.text.pdf.PdfDictionary::Contains