我正在尝试使用基于QuartzDemo的CGPDFDocument编写一个简单的PDF查看器 有共同的渲染:
-(void)drawInContext:(CGContextRef)context
{
// PDF page drawing expects a Lower-Left coordinate system,
// so we flip the coordinate system before we start drawing.
CGContextTranslateCTM(context, 0.0, self.bounds.size.height);
CGContextScaleCTM(context, 1.0, -1.0);
// Grab the first PDF page
CGPDFPageRef page = CGPDFDocumentGetPage(pdf, pageNumber);
// We're about to modify the context CTM to draw the PDF page
// where we want it, so save the graphics state
// in case we want to do more drawing
CGContextSaveGState(context);
// CGPDFPageGetDrawingTransform provides an easy way
// to get the transform for a PDF page. It will scale down to fit,
// including any base rotations necessary to display the PDF page correctly.
CGAffineTransform pdfTransform =
CGPDFPageGetDrawingTransform(page,
kCGPDFCropBox, self.bounds, 0, true);
// And apply the transform.
CGContextConcatCTM(context, pdfTransform);
// Finally, we draw the page
// and restore the graphics state for further manipulations!
CGContextDrawPDFPage(context, page);
CGContextRestoreGState(context);
}
据我所知,它是唯一的绘图,所以所有结构导航或外出链接都应该手动处理(例如触摸事件)。
有which will set URL或create element with URL函数。
问题是:如何从某个PDF块获取外发链接网址?
谢谢!
类似的问题:
PDF hyperlinks on iPhone/iPad
How to access hyperlinks in PDF documents (iPhone)?
同上
iPhone SDK Dev GGroup
macRumors Forum
iPhone Dev SDK Forum
Dev Shed Forum
iphonedevbook.com
答案 0 :(得分:17)
这是一个非常重要的问题,这就是为什么你找不到简单的答案。解决方案是:您必须解析PDF文档。好消息是,Apple提供的功能允许您这样做。坏消息是,它们是程序性的,男人,这是一个令人费解的混乱。
非常粗略的伪代码:
Adobe已发布了document,其中列出了PDF规范。祝你好运!