Я попробовал подход, предложенный ClayB, но безуспешно.
Я использовал комбинации IKVM 0,44 и 0,46 с FOP 0,95 и 1,0.Но ничего не сработало!Там некоторые java-библиотеки отсутствуют и вызывают ошибки.Также произошло исключение .net: не удалось загрузить тип в пространстве имен System.Security.Я даже пытался скомпилировать каждый файл .jar в dll, как предложено Avik Sengupta на http://onjava.com/pub/a/onjava/2004/08/18/ikvm.html,, но застрял на lib \ batik-all-1.7.jar.Если у кого-то нет дополнительных рабочих мест, я убежден, что этот подход больше не работает с последними наборами.
Однако я нашел другой подход, который позволяет вызывать FOP из .net.Я надеюсь, что это поможет кому-то:
try {
ProcessStartInfo p = new ProcessStartInfo(fopPath + "fop.bat");
p.Arguments = String.Format("{0} {1}", foFilePath, pdfFilePath);
p.WindowStyle = ProcessWindowStyle.Hidden;
p.WorkingDirectory = fopPath;
Process proc = new System.Diagnostics.Process();
proc.StartInfo = p;
proc.Start();
proc.WaitForExit();
}
catch() {
}
Пожалуйста, прочитайте оригинальную статью по адресу: http://www.ptperalta.net/index.php/technology/using-apache-fop-in-net.html