2012-02-29 18 views
10

Quiero mostrar un documento RTF en una vista. Este documento se desarrollará en Microsoft Word y contendrá imágenes.iOS Objetivo C: Mostrar documento RTF

¿Cuál es la mejor manera de hacerlo utilizando rutinas estándar proporcionadas?

Me gustaría realmente el código de muestra para cargar un documento RTF del paquete. Saludos cordiales, Jason

+1

[aquí] (http://stackoverflow.com/a/4779065/335858) es una respuesta a una pregunta diferente que puede ser de utilidad para usted. La idea es usar 'UIWebView'. – dasblinkenlight

+1

Ese es un verdadero choque de culturas, porque RTF es un estándar propietario de Microsoft, y muy antiguo en eso. Pero, ¿por qué una aplicación de Word guarda un documento en formato RTF? ¿Alguien pensó que era una buena idea? –

+0

Muchas gracias por los comentarios y respuestas. –

Respuesta

19

UIWebView abre documentos .rtf. Pruebe algo como

NSURL *rtfUrl = [[NSBundle mainBundle] URLForResource:@"MyFileName" withExtension:@"rtf"]; 
NSURLRequest *request = [NSURLRequest requestWithURL:rtfUrl]; 
[_webview loadRequest:request]; 

Ver el documentation for UIWebView file types.

+0

Muchas gracias. Voy a probar esto. –

+1

En mi caso, tuve que cambiar @ ". Rtf" a @ "rtf" de lo contrario URLForResource: withExtension: devolvería nil. – Mike

1

Si necesita hacer esto en Swift en lugar de Obective-C aquí hay un equivalente de Swift de la respuesta de @ pmf como una función que puede llamar.

func loadRTFDocument() { 
    let urlPath = NSBundle.mainBundle().pathForResource("TermsOfUse", ofType: "rtf") 
    let url = NSURL.fileURLWithPath(urlPath!) 
    let request = NSURLRequest.init(URL: url) 
    self.webView.loadRequest(request) 
}