Tôi đã thử phương pháp được đề xuất bởi ClayB mà không thành công.
Tôi đã sử dụng kết hợp IKVM 0,44 và 0,46 với FOP 0,95 và 1,0. Nhưng không có gì làm việc! Có một số thư viện java bị thiếu và gây ra lỗi. Ngoài ra còn có một ngoại lệ .net xảy ra: không thể tải loại trong không gian tên System.Security. Tôi thậm chí còn cố gắng biên dịch từng tệp .jar thành một dll theo đề xuất của Avik Sengupta tại số http://onjava.com/pub/a/onjava/2004/08/18/ikvm.html, nhưng bị kẹt trên lib \ batik-all-1.7.jar. Trừ khi bất cứ ai có thêm bất kỳ workround, tôi tin rằng cách tiếp cận này không còn làm việc với các bộ dụng cụ mới nhất.
Tuy nhiên, tôi đã tìm thấy một cách tiếp cận khác cho phép một người gọi FOP từ .net. Tôi hy vọng điều này sẽ giúp ai đó:
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() {
}
Vui lòng đọc bài viết gốc tại địa chỉ: http://www.ptperalta.net/index.php/technology/using-apache-fop-in-net.html
bạn đã thử http://fonet.codeplex.com/ thay vào đó? –
xem thêm: http://stackoverflow.com/questions/1099485/generating-pdf-in-net-using-xsl-fo –
Chúng tôi hiện đang sử dụng nFop, nhưng muốn chuyển sang ApacheFOP v1.0 để tận dụng 508 tính năng trợ năng. – ClayB