¿Cuál es la forma recomendada para incrustar un PDF en un HTML?
¿Qué dice el propio Adobe al respecto?
En mi caso, el PDF se genera sobre la marcha, por lo que no se puede cargar en una solución de terceros antes de descargarlo.
Probablemente el mejor enfoque es utilizar la biblioteca PDF.JS. Se trata de un renderizador puro de HTML5/JavaScript para documentos PDF, sin necesidad de plugins de terceros.
Demostración en línea: http://mozilla.github.com/pdf.js/web/viewer.html
FDView combina PDF2SWF (que a su vez está basado en xpdf) con un visor SWF para que pueda convertir e incrustar documentos PDF sobre la marcha en su servidor.
xpdf no es un convertidor de PDF perfecto. Si necesitas mejores resultados, Ghostview tiene la capacidad de convertir documentos PDF a otros formatos para los que puedes crear más fácilmente un visor Flash.
Pero para documentos PDF simples, FDView debería funcionar razonablemente bien.
Para transmitir el archivo al navegador, consulte la pregunta de Stack Overflow Cómo transmitir un archivo PDF como binario al navegador utilizando .NET 2.0 - tenga en cuenta que, con pequeñas variaciones, esto debería funcionar tanto si está sirviendo un archivo desde el sistema de archivos como si se genera dinámicamente.
Dicho esto, el artículo de MSDN al que se hace referencia tiene una visión bastante simplista del mundo, por lo que es posible que desee leer Transmitir con éxito un PDF al navegador a través de HTTPS también para algunas de las cabeceras que puede necesitar suministrar.
Usando ese enfoque, un iframe es probablemente la mejor manera de hacerlo. Tenga un formulario web que transmita el archivo, y luego ponga el iframe en otra página con su atributo src
establecido en el primer formulario.