2010-01-25 9 views
3

J'ai utilisé la classe CGPDFDocument pour lire des documents .pdf et récupérer le nombre de pages ou retirer une page par numéro.Lecture de documents Open-XML dans IOS

Je suis à la recherche d'une bibliothèque similaire qui fera de même pour les documents au format Microsoft Word. Je ne suis pas intéressé à utiliser Safari pour voir le document.

J'ai vu certaines applications dans l'App Store qui prétendent lire des documents MS Office tels que .docx, .xlsx, etc, mais je cherche une bibliothèque pour permettre le développement de ma propre application pour faire la même chose. Est-ce que quelqu'un peut-il me montrer la bonne direction?

Répondre

-3

Chargement d'un fichier PDF locale dans la vue Web

- (void)viewDidLoad { 
    [super viewDidLoad]; 

    NSString *thePath = [[NSBundle mainBundle] pathForResource:@"iPhone_User_Guide" ofType:@"doc"]; 
    if (thePath) { 
     NSData *pdfData = [NSData dataWithContentsOfFile:thePath]; 
     [(UIWebView *)self.view loadData:pdfData MIMEType:@"application/doc" 
      textEncodingName:@"utf-8" baseURL:nil]; 
    } 
} 

et si à travers le réseau puis

[self.myWebView loadRequest:[NSURLRequest requestWithURL:[NSURL URLWithString:@"http://www.apple.com/iphone_user_guide.pdf"]]]; 
+2

Il doit charger un document Word et non un document PDF. – pabloruiz55

1

Chargement d'un document à l'aide d'un UIWebView:

-(void)loadDocument:(NSString*)documentName inView:(UIWebView*)webView 
{ 
    NSString *path = [[NSBundle mainBundle] pathForResource:documentName ofType:nil]; 
    NSURL *url = [NSURL fileURLWithPath:path]; 
    NSURLRequest *request = [NSURLRequest requestWithURL:url]; 
    [webView loadRequest:request]; 
} 

// Calling -loadDocument:inView: 
[self loadDocument:@"mydocument.rtfd.zip" inView:self.myWebview]; 

REPRISES DE here. En outre, consultez également cette forum discussion.

+0

Ne fonctionne pas pour moi pour un fichier doc. Je vois "EXCEPTION CPMessageException: (null)" sur la console. Des indices? J'ai vérifié le chemin du fichier et ouvert le fichier pour m'assurer qu'il n'y a aucun problème –

4

Les types de documents produits à partir des dernières versions de Microsoft Office (ceux qui ont un x à la fin, comme .docx, .xlsx, .pptx, etc.) sont effectivement enregistrées selon la norme OpenXML, qui est assez bien documenté. Je mentionne cela parce que cela vous sera utile dans la recherche d'aide supplémentaire pour lire et analyser les formats de document pour vos applications. Cela dit, il semble que vous cherchiez une bibliothèque standard avec laquelle vous pouvez lire et manipuler ces types de documents à partir d'Objective-C.

Une discussion avec des exemples de la façon d'effectuer cela à l'aide de OpenXML SDK 2.0 peut être trouvée here. En tant Exerpt:

using (WordprocessingDocument document = WordprocessingDocument.Open(fileName, false)) 
{ 
    int pageCount = (int) document.ExtendedFilePropertiesPart.Properties.Pages.Text; 
} 

Un didacticiel pour utiliser le SDK OpenXML de Objective-C se trouvent here (bien que les images de l'article semblent brisés). Le tutoriel base son code sur le GData Objective-C Client trouvé sur Google Code.

Vous pouvez également vous référer à this SO Question et c'est réponse, qui se réfère à la bibliothèque open-source libOPC, la page web pour laquelle donne des exemples de la façon de construire la manipulation de documents Word dans une application iPhone.

Malheureusement, aucune de ces ressources n'est susceptible de vous aider à lire un ancien fichier .doc, qui est dans un format Microsoft beaucoup plus propriétaire. Donc - j'espère que ce n'est pas ce que vous devez faire. De toute façon, j'espère que ces ressources vous aideront! Faites-nous savoir si vous le faites fonctionner.

Questions connexes