You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Swift中为PDF添加自定义元数据:自定义属性不显示问题

在iOS中为PDF设置可在Adobe显示的自定义元数据

我正尝试为PDF设置自定义元数据,但相关资料较少。以下是我目前的尝试代码,不确定如何正确设置xmpPdfMetadata字符串,或是否有更优的自定义元数据设置方式:

func createPDF() -> Data {

  let pageWidth = 8.5 * 72.0
  let pageHeight = 11 * 72.0
  let pageRect = CGRect(x: 0, y: 0, width: pageWidth, height: pageHeight)

  let renderer = UIGraphicsPDFRenderer(bounds: pageRect)

  let data = renderer.pdfData { (context) in
      
      context.beginPage()
      
      _ = addImage(pageRect: pageRect, imageTop: 30.0)
      
      // Custom metadata
      let pdfContext = UIGraphicsGetCurrentContext()
      let xmpPdfMetadata = "<test>test</test>"
      let metaData = xmpPdfMetadata.data(using: .utf8) as CFData?
      pdfContext?.addDocumentMetadata(metaData)
  }

  return data
}

使用如下xmpPdfMetadata时,可在附加元数据中查看内容,但在Adobe自定义属性中无法看到"Referencia"字段,暂未找到解决方案:

let xmpPdfMetadata = """
                <?xpacket begin="" id="W5M0MpCehiHzreSzNTczkc9d"?>
                    <x:xmpmeta xmlns:x="adobe:ns:meta" x:xmptk="Adobe XMP Core 5.6-c016 91.163616, 2018/10/29-16:58:49">
                       <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
                            <rdf:Description rdf:about=""
                                xmlns:xmp="http://ns.adobe.com/xap/1.0/"
                                xmlns:pdf="http://ns.adobe.com/pdf/1.3/"
                                xmlns:dc="http://purl.org/dc/elements/1.1/"
                                xmlns:pdfx="http://ns.adobe.com/pdfx/1.3/">
                             <pdfx:Referencia>Referencia</pdfx:Referencia>
                          </rdf:Description>
                       </rdf:RDF>
                    </x:xmpmeta>
                <?xpacket end="w"?>
                """

Adobe自定义属性界面

内容的提问来源于stack exchange,提问作者user19929426

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.20 07:01:27