2016-03-28 19 views
2

Meta veri etiketlerine ekleyen programıma işlev eklemeyi denemek için PdfSharp başvuru kitaplığını kullanıyorum. Bir belgeye meta veri etiketlerini başarılı bir şekilde ekleyebiliyorum, ancak mevcut özel özelliklerdeki etiketlerin güncellenmesiyle ilgili bir sorun yaşıyorum. Ben özel özellikler güncelleştirmek için benim yöntemi kullanmak girişiminde zaman, ben aşağıdaki özel durumu alıyorsunuz: " 'System.Collections.Generic.KeyValuePair' 'Ad' için bir tanım içermiyor"PdfSharp, C# Hatası içindeki Meta Verileri Güncelleme

Ben var ve güncellenmesi gerekiyor eğer doğru PDF belgesinde, özel öğelerin tüm döngü görmek için aşağıdaki foreach döngüsünde eğer deyimi kodlama ediyorsam

siz söyler misiniz? Teşekkürler.

public void AddMetaDataPDF(string property, string propertyValue, string  
                    path) 
{ 
    PdfDocument document = PdfReader.Open(path); 
    bool propertyFound = false; 

    try { 
      dynamic properties = document.Info.Elements; 
      foreach(dynamic p in properties) 
      { 
       //Check to see if the property exists. If it does, update 
        value. 
       if(string.Equals(p.Name, property, 
       StringComparison.InvariantCultureIgnoreCase)) 
       { 
        document.Info.Elements.SetValue("/" + property, new 
          PdfString(propertyValue)); 
       } 
      } 
      // the property doesn't exist so add it 
      if(!propertyFound) 
      { 
       document.Info.Elements.Add(new KeyValuePair<String, PdfItem> 
        ("/"+ property, new PdfString(propertyValue))); 
      } 
     } 

     catch (Exception ex) 
     { 
      MessageBox.Show(path + "\n" + ex.Message); 
      document.Close(); 

     } 
     finally 
     { 
      if(document != null) 
      { 
       document.Save(path); 
       document.Close(); 
      } 
     } 
} 

cevap

1

Ben kodunuzu ama bu kütüphane ile çalışan ortak bir sorunu deneyin vermedi sen de bulunacak bir mülkün adından önce eğik çizgi eklemeniz gerekir olmasıdır. Aşağıdaki kod hile yapacaktır. Ayrıca, PDF dosyası yazmaya karşı korumalı olmamalıdır. Ayrıca, PDF dosyası da korunmalı olmamalıdır. Aksi takdirde, PdfSharp'ı aramadan önce dosyanın kilidini açmak için bir araç kullanmanız gerekir.

+0

Çok teşekkür ederim efendim. İşe yaradı. Sizler bu forumda harika ve yardımseversiniz. – Dwayne