Генерация PDF в ASP.NET MVC с TCPDF

В основном мне нужен совет по созданию динамических 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, поскольку у меня строгие временные ограничения.

Спасибо за ваше время.


person Sykth    schedule 15.06.2012    source источник
comment
Привет, да, я просмотрел ABCpdf, и я стремлюсь реализовать решение, используя их программное обеспечение или ItextSharp, если вариант PHP не работает. В настоящее время я почти готов. Я опубликую свой код для всех, кто заинтересован.   -  person Sykth    schedule 19.06.2012
comment
Я решил использовать ABCpdf, так как он дешевле и имеет много отличной документации, которая поможет мне создавать нужные мне PDF-файлы. ЭльЮсубов, не могли бы вы вставить свой комментарий в качестве ответа, и я его приму? :) Осталось только генерировать диаграммы, но это уже совсем другая тема :)   -  person Sykth    schedule 20.06.2012


Ответы (1)


Вы уже смотрели на ABCpdf? Кажется, это подходящее решение для вас :)

пс: ссылка есть в моем комментарии

person Yusubov    schedule 20.06.2012