-(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];?
}?
?
?
?
?
CGPDFDocumentRef GetPDFDocumentRef(NSString *filename)?
{?
??? CFStringRef path;?
??? CFURLRef url;?
??? CGPDFDocumentRef document;?
??? size_t count;?
?????
??? path = CFStringCreateWithCString (NULL, [filename UTF8String], kCFStringEncodingUTF8);?
??? url = CFURLCreateWithFileSystemPath (NULL, path, kCFURLPOSIXPathStyle, 0);?
?????
??? CFRelease (path);?
??? document = CGPDFDocumentCreateWithURL (url);?
??? CFRelease(url);?
??? count = CGPDFDocumentGetNumberOfPages (document);?
??? if (count == 0) {?
??????? printf("[%s] needs at least one page!/n", [filename UTF8String]);?
??????? return NULL;??
??? } else {?
??????? printf("[%ld] pages loaded in this PDF!/n", count);?
??? }?
??? return document;?
}?
?
void DisplayPDFPage (CGContextRef myContext, size_t pageNumber, NSString *filename)?
{?
??? CGPDFDocumentRef document;?
??? CGPDFPageRef page;?
?????
??? document = GetPDFDocumentRef (filename);?
??? page = CGPDFDocumentGetPage (document, pageNumber);?
??? CGContextDrawPDFPage (myContext, page);?
??? CGPDFDocumentRelease (document);?
}?
?
CGContextRef context = UIGraphicsGetCurrentContext();?
CGContextTranslateCTM(context, 80, self.frame.size.height-60);?
CGContextScaleCTM(context, 1, -1);?
?
?
- (PDFViewController *)viewControllerAtIndex:(NSUInteger)index??
{?
??? //Return the PDFViewController for the given index.?
??? if (([self.pagePDF count] == 0 )|| (index > [self.pagePDF count]) ) {?
??????? return nil;?
??? }?
?????
??? //Create a new view controller and pass suitable data.?
??? PDFViewController *dataViewController = [[PDFViewController alloc]initWithNibName:@"PDFViewController" bundle:nil];?
??? //dataViewController.pdfview = [self.pagePDF objectAtIndex:index];?
??? dataViewController.pdfview = [[PDFView alloc]initWithFrame:self.view.frame atPage:index];?
??? [dataViewController.view addSubview:dataViewController.pdfview];?
??? NSLog(@"index = %d",index);?
??? return dataViewController;?
}?
?
- (NSUInteger) indexOfViewController:(PDFViewController *)viewController?
{?
??? return [self.pagePDF indexOfObject:viewController.pdfview];?
}?
?
- (UIViewController *)pageViewController:(UIPageViewController *)pageViewController viewControllerBeforeViewController:(UIViewController *)viewController?
{?
??? NSUInteger index = [self indexOfViewController:(PDFViewController *)viewController];?
??? if ((index == 0 ) || (index == NSNotFound)){?
??????? return nil;?
??? }?
?????
??? index--;?
??? return? [self viewControllerAtIndex:index];?
}?
?
- (UIViewController *)pageViewController:(UIPageViewController *)pageViewController viewControllerAfterViewController:(UIViewController *)viewController?
{?
??? NSUInteger index = [self indexOfViewController:(PDFViewController *)viewController];?
??? if (index == NSNotFound)?
??? {?
??????? return nil;?
??? }?
?????
??? index++;?
?????
??? if (index == [self.pagePDF count]){?
??????? return? nil;?
??? }?
?????
??? return [self viewControllerAtIndex:index];?
}?
?
?
- (void)drawLayer:(CALayer *)layer inContext:(CGContextRef)ctx
?
?
2. 觸摸事件touches族那些event
- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event
- (void)touchesMoved:(NSSet *)touches withEvent:(UIEvent *)event
……
?
?
3. 初始化單頁view傳頁碼
- (id)initWithFrame:(CGRect)frame onPage:(NSInteger)page
?
?
CG_EXTERN void CGPathMoveToPoint(CGMutablePathRef path,
? const CGAffineTransform *m, CGFloat x, CGFloat y)
CG_EXTERN void CGPathAddLineToPoint(CGMutablePathRef path,
? const CGAffineTransform *m, CGFloat x, CGFloat y)
?
?