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

Comment signer la connexion OKEx API version 5 avec websockets ?

La fonction GCP Cloud pour écrire des données dans BigQuery s'exécute avec succès, mais les données n'apparaissent pas dans la table BigQuery

Le shell POSIX (sh) redirige stderr vers stdout et capture stderr et stdout dans des variables