2012-08-24 73 views
9

Estoy diseñando una aplicación web en la que una gran parte del sitio mostrará documentos generados por el usuario. Ahora, ya he implementado el código fuente de LaTeX y la representación de pdf en el sitio web, pero todavía no puedo procesar archivos de Microsoft Word (.doc y .docx) en el sitio. Miré alrededor y encontré una pregunta similar (here), pero nunca fue respondida. Me pregunto si usar o no una solución basada en la web como Google Docs o hacerlo programáticamente en el servidor con OpenOffice son soluciones viables. Sin embargo, una solución de JavaScript pura sería ideal.Renderizar un documento de Microsoft Word en una página web

Respuesta

5

Sobre la base de la respuesta de Vikram, podría utilizar Google Docs Viewer con el fin para renderizar los archivos. De esta forma, debería funcionar en todos los navegadores.

En lugar de

<a href="doc1.doc" target="awindow">Doc 1</a> 

uso

<a href="http://docs.google.com/viewer?url=[URLToDoc1.doc]" target="awindow">Doc 1</a> 

Pero hay que urlencode la URL. Por ejemplo,

http://research.google.com/archive/bigtable-osdi06.pdf 

convierte

http%3A%2F%2Fresearch.google.com%2Farchive%2Fbigtable-osdi06.pdf 

se puede ir a https://docs.google.com/viewer con el fin de generar los enlaces fácilmente.

Además, el código de Vikram es viejo y feo. Deberías usar algo como:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml"> 
<head> 
<meta http-equiv="content-type" content="text/html; charset=UTF-8" /> 
<title>Open Doc</title> 
<style type="text/css"> 
/*<![CDATA[*/ 
.clear{clear:both;} 
#list{float:left;margin-right:50px;} 
#wrapper{overflow:hidden;} 
#awindow{width:100%;height:440px;} 
/*]]>*/ 
</style> 
</head> 
<body> 
<ul id="list"> 
    <li><a href="http://docs.google.com/viewer?url=[URLToDoc1.doc]" target="awindow">Doc 1</a></li> 
    <li><a href="http://docs.google.com/viewer?url=[URLToDoc2.docx]" target="awindow">Doc 2</a></li> 
    <li><a href="http://docs.google.com/viewer?url=[URLToDoc3.doc]" target="awindow">Doc 3</a></li> 
</ul> 
<div id="wrapper"> 
    <iframe id="awindow" name="awindow" src="title.html"></iframe> 
</div> 
<div class="clear"></div> 
</body> 
</html> 
0

Ha intentado algo como esto ya se ?:

<html> 
<head> 
<title>Open Doc</title> 
</head> 
<body> 
<DIV align="CENTER"> 
<TABLE BORDER="1" CELLSPACING="1" CELLPADDING="1" WIDTH="100%"> 
<TR> 
<TD WIDTH="25%" ALIGN="left" VALIGN="TOP"> 
<a href="doc1.doc" target="awindow">Doc 1</A><br> 
<a href="doc2.docx" target="awindow">Doc 2</A><br> 
<a href="doc3.doc" target="awindow">Doc 3</A> 
</TD> 
<TD WIDTH="75%" ALIGN="CENTER" VALIGN="TOP"> 
<iframe name="awindow" frameborder=2 width=580 height=440 src="title.html"></iframe> 
</TD></TR></TABLE></CENTER> 
</DIV> 
</body> 
</html> 

modificar el href atributos de ruta en su servidor donde se va a colocar estos documentos

+0

Pero eso solo funciona en IE, ¿no? – Oriol

Cuestiones relacionadas