ITextSharp Nouvelles lignes dans le dictionnaire

Actuellement coincé à produire des informations sur les pièces (malgré l'obsolescence) sur les PDF, et j'ai un problème pour répondre à l'exigence en raison de la façon dont itextsharp crache le dictionnaire dans le PDF.

En gros je fais juste

dictionary.Put(Field1, new PdfString("Value1"));
dictionary.Put(Field2, new PdfString("Value2"));
dictionary.Put(Field3, new PdfString("Value3"));
dictionary.Put(Field4, new PdfString("Value4"));

ce qui donne ceci dans le PDF:

/Field1(Value1)/Field2(Value2)/Field3(Value3)/Field4(Value4)

Cela devrait être tout à fait correct... mais puisque l'analyseur des personnes pour lesquelles je produis ceci lit chaque ligne individuellement... je dois le produire pour qu'il sorte dans le PDF comme ceci:

/Field1(Value1)
/Field2(Value2)
/Field3(Value3)
/Field4(Value4)

Quelqu'un connaît-il un moyen d'obtenir des dictionnaires iTextSharp pour lancer une nouvelle ligne entre chaque entrée?


Solution du problème

Vous pouvez créer votre propre implémentation PdfDictionary et la remplacer ToPdf(...)et l'utiliser à la place de l'original

public class MyPdfDictionary: PdfDictionary
{
public override void ToPdf (PdfWriter writer, Stream os)
{
// Do it your way
}
}

Ici vous pouvez trouver l'implémentation originale PdfDictionary

Commentaires

Posts les plus consultés de ce blog

Erreur Symfony : "Une exception a été levée lors du rendu d'un modèle"

Détecter les appuis sur les touches fléchées en JavaScript

Une chaîne vide donne "Des erreurs ont été détectées dans les arguments de la ligne de commande, veuillez vous assurer que tous les arguments sont correctement définis"