我正在做一些PDF格式的绘图,我发现在PDF格式处理pdf维度时可能会出现问题,然后在触发CGPDFDocumentCreateWithURL时会变得清晰。
我有两个PDF。一个是A4纵向尺寸(612w x 792h),显示效果很好。另一个更接近A4风景,842w x 595h。当它显示在我正在使用的UIScrollview中时,CGContextTranslateCTM中页面高度(pageRect.size.height)的垂直偏移导致它在视图中移动太远。我NSlog pageRect维度,发现高度和宽度已被翻转。然后我在支持文档中检查了pdf的列表,同时清楚地将pdf显示为横向,尺寸显示为595x842,而A4肖像的尺寸正确为612x792。
是否还有其他人遇到此问题,并且有解决方法。
原始横向文件的链接是here。
答案 0 :(得分:1)
您可以通过两种方式创建横向页面:
在您的情况下,我假设您有一个旋转的纵向页面(2)。
获得页面宽度和高度后,您还必须获得页面旋转,如果旋转为90/270,则必须更换宽度/高度。
您还必须考虑坐标系的原点。当页面未旋转时,原点位于页面的可视左下角,视觉上X从左到右增长,Y从下到上增长。当页面旋转90度时,原点位于视觉左上角,视觉X从上到下增长,Y从左到右增长。
当页面旋转时,实际的PDF坐标系统不会改变,PDF协调系统如何映射到您在屏幕上实际看到的内容会有什么变化,这就是“视觉上”所指的内容。