2011-02-27 4 views
3

현재 QLPreviewController를 사용하여 PDF (250MB 이상)를 볼 수 있지만 실제 대형 파일은 처리 할 수 ​​없습니다. 나는 전체 파일이로드되지 않았거나 전체 응용 프로그램이 죽지 않는다는 정보를 얻습니다. 또한 QLPreviewController를 사용하여 가능한보기를 사용자 정의해야합니다. 어떻게해야합니까? UIWebView를 대신 사용 하시겠습니까? 아니면 CGContextDrawPDFPage를 사용해야합니까? 후자를 사용하면 확대/축소가 어떻게 구현됩니까?iOS에서 큰 PDF를 보는 가장 좋은 방법은 무엇입니까?

+0

나는 FreeAsInBeer의 대답에 동의하지만이 PDF 파일을 더 작은 파일들로 나눌 수 있습니까? 어쨌든 큰 파일이 너무 큽니다 ... –

+0

아래 내 의견을 참조하십시오. 고객이 거대한 PDF를보기로 결정한 경우이를 분리 할 수 ​​없습니다. 난 그냥 내 애플 리케이션을 처리하고 충돌하지 싶습니다. – Krumelur

답변

0

나는 UIWebView 사용에 대한 귀하의 제안과 함께 갈 것입니다. 이렇게하면 줌 지원이 자동으로 제공되며 UIWebView는 매우 큰 PDF를로드 할 때 처리해야합니다. 당신은 석영과 함께 가기로 결정 한 경우


this link 줌 지원을위한 매우 유망한 보인다.

+0

약간의 테스트를 거쳤습니다. 내 테스트 PDF에는 630 페이지가 있습니다. 크기는 230MB입니다. 악기에서 UIWebView 또는 UIDocumentIteractionController를 사용하면 메모리 사용량이 최대 260MB가되고 VM은 530MB가됩니다. 이것은 iPhone4에서 작동하지만 256MB의 RAM으로 iPad를 종료합니다. 내가 보는 주된 차이점은 UIWebView가 매우 느리다는 것입니다. UIDocumentInteractionController를 사용하면 스크롤이 거의 불가능합니다. 아직도, 어느 쪽도 페이지마다 읽는 것 같지 않습니다. 쿼트 구현이 얼마나 힘든지 보려고 노력할 것입니다. – Krumelur

+0

이제 Quartz를 사용해 보았습니다. 문서를 열고 페이지 1을 볼 때 10MB의 RAM을 사용합니다. 그러나 기존의 코드가있을 경우 모든 확대/축소, 스크롤링 등을 구현해야합니다. – Krumelur

+0

샘플 페이지로 연결해 주셔서 감사합니다! 코드를 가져 와서 Mono를 터치했다. 내 다른 질문은 여기에, 내 블로그에 코드 링크가 포함되어 있습니다. http://stackoverflow.com/questions/5140079/catiledlayer-render-zoomable-pdf-page-what-are-levelsofdetail-and-levelsofd – Krumelur

관련 문제