Проблема с ITextSharp - Преобразование XML в PDF - PullRequest
1 голос
/ 06 мая 2010

Хорошо ... Я пытаюсь использовать самую последнюю версию ITextSharp, чтобы превратить файл XML в PDF. Это не работает.

Документация на SourceForge, похоже, не поспевает за фактическими выпусками; код в приведенном примере даже не будет компилироваться в последней версии.

Вот мой тестовый XML:

<Remittance>
<RemitHeader>
<Payer>BlueCross</Payer>
<Provider>Maricopa</Provider>
<CheckDate>20100329</CheckDate>
<CheckNumber>123456789</CheckNumber>
</RemitHeader>
<RemitDetail>
<NPI>NPI_GOES_HERE</NPI>
<Patient>Patient Name</Patient>
<PCN>0034567</PCN>
<DateOfService>20100315</DateOfService>
<TotalCharge>125.57</TotalCharge>
<TotalPaid>55.75</TotalPaid>
<PatientShare>35</PatientShare>
</RemitDetail>
</Remittance>

А вот код, который я пытаюсь использовать, чтобы превратить его в PDF.

Document doc = new Document(PageSize.LETTER, 36, 36, 36, 36);
  iTextSharp.text.pdf.PdfWriter.GetInstance(doc, 
    new StreamWriter(fileOutputPath).BaseStream);
  doc.Open();
  SimpleXMLParser.Parse((ISimpleXMLDocHandler)doc, 
    new StreamReader(fileInputPath).BaseStream);
  doc.Close();

Теперь я был почти уверен, что кусок (ISimpleXMLDocHandler)doc не сработает, но я не могу найти ничего в исходном коде, который а) реализует ISimleXMLDocHandler и б) примет стандартный документ XML и проанализирует в PDF.

Кстати, я попробовал старую версию, которая компилировалась с использованием примера кода из sourceforge, но он тоже не работал.

Ответы [ 2 ]

2 голосов
/ 07 мая 2010

После просмотра кода 5.0.2 похоже, что нет документа, который бы просто взял XML и превратил его в PDF для вас. Поэтому, если вы не можете найти подобный код в Интернете или в старой версии iTextSharp, вам придется написать его самостоятельно.

0 голосов
/ 10 августа 2010

iText XML в PDF требует, чтобы XML был отформатирован в соответствии с itext.dtd (пожалуйста, ответьте Google). Вы также можете использовать tagmap.xml для сопоставления ваших XML-сущностей с соответствующими в соответствии с DTD.

...