2010-01-27 5 views
1

У меня возникла проблема с отображением PDF-файла в iframe в asp.net. Когда появляется pdf-файл, он появляется без панели инструментов Acrobat, которая позволяет пользователю масштабировать и печатать. Это вызывает серьезную проблему для наших клиентов, потому что они не могут читать PDF в том размере, который он имеет. Если вы попробуете установить Acrobat, чтобы не показывать PDF в браузере и перейти на эту страницу, вы получите сообщение о том, что оно пытается открыть его в полноэкранном режиме. Любые идеи, как я могу это сделать, не делают этого из кода? Ниже приведен код, который я использую для потоковой PDF в браузере:Открытие Acrobat в полноэкранном режиме

Public Shared Sub StreamPdfToBrowser(ByVal doc As Document) 
    Dim Ctx As HttpContext = HttpContext.Current 
    '// Clear any part of this page that might have already been buffered for output. 
    Ctx.Response.Clear() 
    Ctx.Response.ClearHeaders() 

    '// Tell the browser this is a PDF document so it will use an appropriate viewer. 
    Ctx.Response.ContentType = doc.DisplayFileType 

    Ctx.Response.ContentType = "application/pdf" 
    Ctx.Response.AddHeader("content-type", "application/pdf") 

    '// IE & Acrobat seam to require "content-disposition" header being in the response. If you don't add it, the doc still works most of the time, but not always. 
    '// this makes a new window appear: 
    Response.AddHeader("content-disposition","attachment[inline]; filename=MyPDF.PDF"); 
    Ctx.Response.AddHeader("Content-Length", doc.DisplayFile.Length) 
    Ctx.Response.AddHeader("Content-Disposition", "inline; filename=E-Sign Specification Report.pdf") 

    '// TODO: Added by KN to possibly fix UA issue 
    Ctx.Response.ContentType = "application/pdf" 
    Ctx.Response.AddHeader("content-type", "application/pdf") 

    '// Write the PDF stream out 
    Ctx.Response.BinaryWrite(doc.DisplayFile) 

    '// Send all buffered content to the client 
    Ctx.Response.End() 
End Sub 

ответ

0

Запустить PDF в Adobe Acrobat, перейдите в меню Файл, Свойства и нажмите на закладке Вид Initial. Здесь вы можете установить представление по умолчанию, когда люди открывают этот конкретный PDF-файл, это похоже на «Открыть в полноэкранном режиме».

+0

Я попытался установить параметр PDF, когда он создан, чтобы не использовать полноэкранный режим, но он не изменил все. Есть ли способ принудительно использовать этот параметр в Response.Write? – bechbd

+0

После создания PDF откройте его в Acrobat. Включена ли опция «Полный экран»? –

+0

У меня нет полной версии Acrobat, поэтому я не вижу. Вы можете увидеть это как-то в Acrobat Reader? – bechbd

Смежные вопросы