Вам нужно построить URL-адрес, используя javascript / jquery. В представлении измените ссылку на
<a id="export" href=#">Export as CSV</a>
Затем в скрипте
var baseurl = '@Url.Action("Export")';
$('#export').click(function() {
var url = baseurl + '?SelectedAccountType=' + $('#SelectedAccountType').val() + '&FromDate=' + $('#FromDate').val() + '&ToDate=' + $('#ToDate').val() + ...etc
location.href=url;
});
Однако, если ваша форма отмечена FormMethod.Get
, вы можете просто использовать обычный режим отправки и не требуется jquery
@using (Html.BeginForm("Export", "yourControllerName", FormMethod.Get))
{
@Html.TextBoxForm(m => m.SelectedAccountType)
....
<input type="submit" value="Export" />
}
Вы не можете избежать зависимости Ghostscript. Даже Imagemagick полагается на Ghostscript для своих функций чтения PDF. Причиной этого является сложность формата PDF: PDF только содержит растровую информацию, но главным образом векторные формы, диапозитивы и т.д., Кроме того, которые это довольно сложно для выяснения, какой из этих объектов появляется на который страница.
, Таким образом, корректный рендеринг Страницы PDF ясно вне объема для чистой библиотеки Python.
хорошие новости - то, что Ghostscript предварительно установлен на многих окнах и системах Linux, потому что он также необходим всем тем Принтерам PDF (кроме Adobe Acrobat).
Если вы используете linux, то некоторые версии поставляются с утилитой командной строки, называемой 'pdftopbm'. Проверьте netpbm