преобразование XML в PDF-документ? - PullRequest
1 голос
/ 30 января 2012

У меня есть сетка, я экспортировал все данные из таблицы данных в XML-документ

Теперь мне нужно преобразовать этот XML-документ в PDF-документ.Может кто-нибудь сказать, как преобразовать XML-документ в PDF-файл в C #?

Ответы [ 3 ]

0 голосов
/ 30 января 2012

вам понадобится библиотека, которая может генерировать PDF.Большинство библиотек отчетов имеют эту встроенную функцию, обычно это опция экспорта или печати. ​​

, как указано @danielCrabbe.отчет состоит из данных и шаблона.Данные загружаются в шаблон и экспортируются в формате PDF.

0 голосов
/ 02 августа 2016

Сначала вам нужно будет создать файл преобразования XSL-FO . Посмотрите на эти примеры .

Затем вы можете использовать FoNET в качестве средства визуализации XSL-FO в PDF.

public static bool XMLToPDF(string pXmlFile, string pXslFile, string pFoFile, string pPdfFile)
{
    string lBaseDir = System.IO.Path.GetDirectoryName(pXslFile);
    XslCompiledTransform lXslt = new XslCompiledTransform();
    lXslt.Load(pXslFile);
    lXslt.Transform(pXmlFile, pFoFile);
    FileStream lFileInputStreamFo = new FileStream(pFoFile, FileMode.Open);
    FileStream lFileOutputStreamPDF = new FileStream(pPdfFile, FileMode.Create);
    FonetDriver lDriver = FonetDriver.Make();
    lDriver.BaseDirectory = new DirectoryInfo(lBaseDir);
    lDriver.CloseOnExit = true;
    lDriver.Render(lFileInputStreamFo, lFileOutputStreamPDF);
    lFileInputStreamFo.Close();
    lFileOutputStreamPDF.Close();
    return System.IO.File.Exists(pPdfFile);
}
0 голосов
/ 30 января 2012

Возможно, нужно немного расширить вашу проблему!

Но обычно вам сначала понадобится шаблон с местом / координатой для каждого элемента. Не уверен насчет c #, но мы используем шаблоны indesign, которые вместе с пользовательским приложением Adobe Air импортируют данные xml в шаблон, сохраняют версию, а затем экспортируют ее в несколько PDF-файлов для печати и в Интернете.

...