2010-07-15 4 views
0

J'ai plusieurs fichiers pdf, disons file1.pdf, file2.pdf .......... Maintenant, je veux créer un nouveau document pdf dit MainDoc.pdf. Et ce MainDoc.pdf contiendra File1.pdf, File2.pdf ... comme pièces jointes.Pièces jointes en pdf

Essayé ce code, mais il donne l'erreur: "Object Refrence not set to an instance"

its.Document PDFD = new its.Document(its.PageSize.LETTER); 
its.pdf.PdfWriter writer; 
writer = its.pdf.PdfWriter.GetInstance(PDFD, new FileStream(targetpath, FileMode.Create)); 
its.pdf.PdfFileSpecification pfs = its.pdf.PdfFileSpecification.FileEmbedded(writer, "C:\\test.xml", "New.xml", null); 
writer.AddFileAttachment(pfs); 

Il Ressemble est question avec l'écrivain.

La référence d'objet n'est pas définie sur une instance d'un objet. à iTextSharp.text.pdf.PdfWriter.get_PdfIndirectReference()

+0

Avez-vous comprendre cela? J'ai le même problème. – Tigran

Répondre

0

Je suppose que l'erreur se produit sur cette dernière ligne? Vérifiez pfs - a-t-il été attribué?

its.Document PDFD = new its.Document(its.PageSize.LETTER); 
its.pdf.PdfWriter writer = its.pdf.PdfWriter.GetInstance(PDFD, new FileStream(targetpath, FileMode.Create)); 
its.pdf.PdfFileSpecification pfs = its.pdf.PdfFileSpecification.FileEmbedded(writer, "C:\\test.xml", "New.xml", null); 
if(pfs) 
{ 
    writer.AddFileAttachment(pfs); 
} 
else 
{ 
    // An error occurred! 
} 
+0

salut jon, J'écris ce code. Et l'erreur arrive sur la ligne "pfs = its.pdf.PdfFileSpecification.FileEmbedded". L'erreur est la suivante: L'objet Ref n'est pas défini sur l'instance de l'objet Veuillez suggérer writer = son.pdf.PdfWriter.GetInstance (PDFD, nouveau FileStream (targetchem, FileMode.Create)); its.pdf.PdfFileSpecification pfs; pfs = its.pdf.PdfFileSpecification.FileEmbedded (rédacteur, "D: \\ Test.xml", "Driving.pdf", null); if (pfs! = Null) { writer.AddFileAttachment (pfs); } sinon { Response.Write ("Err"); } – Richa

+0

On dirait que le problème est avec l'auteur. La référence d'objet n'est pas définie sur une instance d'un objet. à iTextSharp.text.pdf.PdfWriter.get_PdfIndirectReference() – Richa

1

Avez-vous vérifié que 'writer' et 'PdfFileSpecification' ne sont pas null?

+0

Bonjour Andre L'auteur n'est pas nul J'ai vérifié. ET its.pdf.PdfFileSpecification est une classe et "FileEmbedded" est une fonction STATIQUE. Il peut donc être appelé par l'instance de classe PdfFileSpecification. Par exemple: its.pdf.PdfFileSpecification.FileEmbedded – Richa

1

Null est tiré du document.

Ajouter

PDFD.Open();

après

its.pdf.PdfWriter writer = its.pdf.PdfWriter.GetInstance(PDFD, new FileStream(targetpath, FileMode.Create));

Questions connexes