В основном мне нужен совет по созданию динамических PDF-файлов с диаграммами, изображениями и некоторыми стилями в представлении или частичном представлении, которое пользователь может распечатать или, при желании, загрузить.
Я использовал TCPDF в прошлом, и мне было интересно, есть ли способ использовать мои php-файлы TCPDF для передачи сгенерированного PDF-файла в представление?
Я также смотрел на ITextSharp, но меня беспокоило отсутствие возможности настройки, включая динамические диаграммы, которые TCPDF предоставлял мне в прошлом.
Может ли кто-нибудь указать мне в правильном направлении? В настоящее время я пытаюсь установить модуль VS.PHP для Visual Studio 2010 в надежде, что смогу загрузить сгенерированный файл TCPDF в поток памяти и передать его в представление (встроенное).
Моя логика совершенно неверна? Пожалуйста, порекомендуйте.
Спасибо.
[РЕДАКТИРОВАТЬ]
Я добавил Phalanger (http://phalanger.codeplex.com/) в свой проект вместе с некоторыми примерами tcpdf в папке Content/reports.
код моего контроллера был довольно простым (большую его часть я получил из другого поста на форумах Phalanger):
public ActionResult SummaryReport()
{
var context = PHP.Core.ScriptContext.CurrentContext;
using (var request_context = PHP.Core.RequestContext.Initialize(PHP.Core.ApplicationContext.Default, System.Web.HttpContext.Current))
{
var output = request_context.ScriptContext.Include(Server.MapPath(Url.Content("~/Content/reports/testoutput.php")), false);
return Content("");
}
}
Однако теперь я получаю ошибки TCPDF, когда контроллер пытается выполнить пример TCPDF:
Warning: preg_match(): Invalid argument 'pattern': u0192\u2039\u008D\u203A\u017E\u0178\u00A1-\u00BA] # AL | Ù[\u20AC-\u0160\u00AD-\u00AF\u00B1-\u00BF] # AL | Ú[\u20AC-\u00BF] # AL | Û[\u20AC-\u2022\u009D\u00A5\u00A6\u00AE\u00AF\u00BA-\u00BF] # AL | Ü[\u20AC-\u008D\u0090\u2019-\u00AF] # AL | Ý[\u008D-\u00AD] # AL | Þ[\u20AC-\u00A5\u00B1] # AL | ï[\u0090-\u00BF] # AL | ï®[\u20AC-\u00B1] # AL | ï¯[\u201C-\u00BF] # AL | ï[\u00B0-\u00B3][\u20AC-\u00BF] # AL | ï´[\u20AC-\u00BD] # AL | ïµ[\u0090-\u00BF] # AL | ï¶[\u20AC-\u008F\u2019-\u00BF] # AL | ï·[\u20AC-\u2021\u00B0-\u00BC] # AL | ï¹[\u00B0-\u00B4\u00B6-\u00BF] # AL | ïº[\u20AC-\u00BF] # AL | ï»[\u20AC-\u00BC] ..." - [x-y] range in reverse order. in (MYPATH)\Content\reports\tcpdf\tcpdf.php on line 15859, column 7.
Warning: preg_match(): Invalid argument 'pattern': [x-y] range in reverse order. in (MYPATH)\Content\reports\tcpdf\tcpdf.php on line 15865, column 7.
Кто-нибудь знает, как это преодолеть? Я взял последнюю версию TCPDF по желанию, скорее всего, опубликую на форуме TCPDF. Я боюсь, что если я не смогу заставить их работать, я приведу к использованию библиотеки .NET PDF, поскольку у меня строгие временные ограничения.
Спасибо за ваше время.