PDF в виде текста в браузере - PullRequest
2 голосов
/ 01 июня 2010

Я пытаюсь отобразить PDF из базы данных (байт []) для пользователя.

Я использую код ниже для рендеринга PDF. Это дает мне PDF в виде двоичного текста, как показано ниже. Вместо открытия в приложении PDF он отображает PDF как текст.

Response.Buffer = true;
        Response.Charset = "";
        Response.Cache.SetCacheability(HttpCacheability.NoCache);
        //Response.AddHeader("Content-Length", fileToDownload.Length.ToString());
        //Response.AddHeader("Content-Disposition", "inline; name=RemoteUserGuide.pdf");
        Response.AppendHeader("content-length", fileToDownload.Length.ToString());
        Response.ContentType = "application/pdf";
        Response.BinaryWrite(fileToDownload);
        Response.Flush();
        ////Response.Close();
        Response.End();

ОБНОВЛЕНИЕ: только что заметил, эта страница приложения корректно отображает PDF в CHROME, но по-прежнему отображает текст в IE. (на сервере нет FF3 для тестирования). Возможно, это какая-то проблема с браузером?

Есть идеи? альтернативный текст http://img442.imageshack.us/img442/9242/pdfdisplay.jpg

Ответы [ 4 ]

3 голосов
/ 01 июня 2010

Поврежденная установка Adobe делает это. переустановите Adobe Reader на целевой (клиентской) машине.

Иногда Adobe Installer дает сбой и делает это.

1 голос
/ 01 июня 2010

Если вы уверены, что ваш браузер может просматривать pdf, тогда вы должны использовать директиву @PAGE ContentType="application/pdf" вместо Response.ContentType = "application/pdf";

Также вы должны использовать Response.AddHeader("content-disposition", "filename=\"document.pdf\"" ); для установки имени файла

0 голосов
/ 01 июня 2010

Как говорили другие, попробуйте установить тип / заголовок MIME в application / pdf. Если это не сработает, последнее, что закрывает ваш браузер и снова открывает ту же страницу, у меня раньше была эта проблема с FPDF (генерация PDF) библиотека в PHP), похоже, что браузер кэширует MIME страницы (php) и сохраняет его навсегда, закрыв браузер и снова открыв его, он будет работать # 1.

0 голосов
/ 01 июня 2010

Убедитесь, что ваш тип MIME для расширения .pdf в IIS (Internet Information Services) установлен на «application / pdf».

...