在 iOS 中有很多关于 PDF 的讨论,我在这里找到了所有问题的答案,除了一个:我有一个包含简单矢量形状的 PDF 文件。是否可以提取该形状的路径数据,以便我可以使用它直接在 Quartz 层上绘制形状?
到目前为止,我能够浏览 PDF 文档,产生如下输出:
Object key Resources type: kCGPDFObjectTypeDictionary
Object key ProcSet type: kCGPDFObjectTypeArray with length 4
Object key Array Object type: kCGPDFObjectTypeName PDF
Object key Array Object type: kCGPDFObjectTypeName ImageB
Object key Array Object type: kCGPDFObjectTypeName ImageC
Object key Array Object type: kCGPDFObjectTypeName ImageI
Object key ColorSpace type: kCGPDFObjectTypeDictionary
Object key Cs1 type: kCGPDFObjectTypeArray with length 2
Object key Array Object type: kCGPDFObjectTypeName ICCBased
Object key Array Object type: kCGPDFObjectTypeStream
Object key Length type: kCGPDFObjectTypeInteger 737
Object key N type: kCGPDFObjectTypeInteger 3
Object key Alternate type: kCGPDFObjectTypeName DeviceRGB
Object key Filter type: kCGPDFObjectTypeName FlateDecode
Object key XObject type: kCGPDFObjectTypeDictionary
Object key Im1 type: kCGPDFObjectTypeStream
Object key Length type: kCGPDFObjectTypeInteger 125
Object key Type type: kCGPDFObjectTypeName XObject
Object key Subtype type: kCGPDFObjectTypeName Image
Object key Width type: kCGPDFObjectTypeInteger 62
Object key Height type: kCGPDFObjectTypeInteger 49
Object key Interpolate type: kCGPDFObjectTypeBoolean 1
Object key ColorSpace type: kCGPDFObjectTypeArray with length 2
Object key Array Object type: kCGPDFObjectTypeName ICCBased
Object key Array Object type: kCGPDFObjectTypeStream
Object key Length type: kCGPDFObjectTypeInteger 737
Object key N type: kCGPDFObjectTypeInteger 3
Object key Alternate type: kCGPDFObjectTypeName DeviceRGB
Object key Filter type: kCGPDFObjectTypeName FlateDecode
Object key SMask type: kCGPDFObjectTypeStream
Object key Length type: kCGPDFObjectTypeInteger 36
Object key Type type: kCGPDFObjectTypeName XObject
Object key Subtype type: kCGPDFObjectTypeName Image
Object key Width type: kCGPDFObjectTypeInteger 62
Object key Height type: kCGPDFObjectTypeInteger 49
Object key ColorSpace type: kCGPDFObjectTypeName DeviceGray
Object key Interpolate type: kCGPDFObjectTypeBoolean 1
Object key BitsPerComponent type: kCGPDFObjectTypeInteger 8
Object key Filter type: kCGPDFObjectTypeName FlateDecode
Object key BitsPerComponent type: kCGPDFObjectTypeInteger 8
Object key Filter type: kCGPDFObjectTypeName FlateDecode
显然有一个大小为 62x49 的图像和一个大小相同的蒙版(围绕形状,PDF 是透明的)。该图像绝对是矢量图形,我可以将其缩放到各种尺寸而不会造成质量损失。那么路径信息到底在哪里呢?
感谢您提供任何信息!
最好的,本杰明