IOS库将PowerPoint演示文稿转换为图像
经过大量的search和search,我无法find从幻灯片演示中提取幻灯片的方式。 需要帮助,如果他们知道任何与此有关的事情或者已经实现了这样的事情,那么源代码将很棒,或者任何引用链接也将起作用。 我一直在使用QLPreviewController,但我没有覆盖它。
我不确定这是否仍然需要。 但无论如何,这是我已经实施
(1)使用UIWebView
显示PPT的内容。 格式良好的(!)HTML可以让你parsing它。 获取使用的HTML
NSString *htmlContent = [self.webView stringByEvaluatingJavaScriptFromString:@"document.body.innerHTML"];
(2)计算div class = 'slide
来得到幻灯片的数量
(4)你需要parsingHTML来获取样式和div
使用下面的代码
(5)获得所有样式
- (NSString *)getStyles:(int)slideCount forView:(UIWebView *)view { NSString *getElementByTag = [[NSString alloc] init]; NSString *allStyles = [[NSString alloc] init]; for (int i = 0; i < slideCount; i++) { getElementByTag = [NSString stringWithFormat:@"document.getElementsByTagName('style')[%d].innerHTML", i]; NSString *style = [[view stringByEvaluatingJavaScriptFromString:getElementByTag] stringByAppendingString:@"\n"]; allStyles = [allStyles stringByAppendingString:style]; } allStyles = [@"<style type='text/css'>" stringByAppendingString: allStyles]; return [allStyles stringByAppendingString:@"</style>"]; }
(6)将步骤5中的所有样式与div
标签内容连接起来。 定义一个NSMutableArray
variables来存储包含样式的所有幻灯片以供将来参考。 定义NSMutableArray *slides
来存储所有的幻灯片
- (void)makeSlides:(int)slideCount forView:(UIWebView *)view { self.slides = [[NSMutableArray alloc] init]; for (int i = 0; i < slideCount; i++) { NSString *slideBody = [NSString stringWithFormat:@"document.getElementsByClassName('slide')[%d].innerHTML", i]; NSString *div = [view stringByEvaluatingJavaScriptFromString:slideBody]; NSString *slide = [self.slideStyles stringByAppendingString:div]; [self.slides addObject:slide]; } }
希望这可以帮助