this tutorial을 기본으로 사용하려고했지만 아래에 지정된 줄에 null 참조 예외가 발생했습니다. 내가 다른 방식으로해야할까요? 그렇지 않은 경우 null 참조 예외가 발생합니다 (page
및 cb
은 모두 null이 아닙니다). 코드 :iTextSharp를 사용하여 두 PDF를 결합하는 방법은 무엇입니까?
string filePath = @"c:\temp\test_new.pdf";
string attachPath = @"c:\temp\test.pdf";
Console.WriteLine("Begin!");
Document d = new Document();
if(File.Exists(filePath)){File.Delete(filePath);}
FileStream fs = new FileStream(filePath, FileMode.Create);
PdfWriter pw = PdfWriter.GetInstance(d, fs);
d.Open();
d.Add(new Paragraph("New document! Now lets add an attachment!"));
PdfReader pRdr = new PdfReader(new FileStream(attachPath,FileMode.Open));
PdfReaderContentParser parser = new PdfReaderContentParser(pRdr);
MemoryStream ms = new MemoryStream();
PdfWriter writer = PdfWriter.GetInstance(d, ms);
writer.Open();
PdfContentByte cb = writer.DirectContent;
PdfImportedPage page;
int rotation;
d.SetPageSize(PageSize.LETTER);
for (int i = 1; i <= pRdr.NumberOfPages; i++)
{
d.NewPage();
page = writer.GetImportedPage(pRdr, i);
rotation = pRdr.GetPageRotation(i);
if (rotation == 90 || rotation == 270)
{
cb.AddTemplate(page, 0, -1.0F, 1.0F, 0, 0, pRdr.GetPageSizeWithRotation(i).Height);
}
else
{
/*NULL EXCEPTION HERE!!!*/cb.AddTemplate(page, 1.0F, 0, 0, 1.0F, 0, 0); //NULL EXCEPTION HERE!!!
}
}
예외가있을 경우'page' 또는'pRdr'도 null이 아니십니까? – Bolu
'pRdr'가 null 인 경우, 위의 7 행은 오류가 발생하지 않을까요? 'page'와'cb'는 모두 null이 아닙니다. –
나는 이보다 적은 수의 라인에서 2 개의 문서를 병합 할 수 있다고 확신한다 ... 내 google-fu doens't가 나를 실패 시키길 희망한다. –