在ios中使用Quartz 2d进行注释(注释、评论)

2023-12-27

我正在为 iPad 做基于 PDF 的应用程序。它支持缩略图视图、徒手注释和注释(Notes)。我和我在网上搜索了很多,但没有找到任何使用 Quartz 2d 在 PDF 上进行注释的相关答案。

我们可以使用以下方法获取 PDF 页面信息
CGPDFDictionaryRef CGPDFPageGetDictionary ( CGPDFPageRef page );
并使用Annots key.
bool CGPDFDictionaryGetArray ( CGPDFDictionaryRef dict, "Annots", CGPDFArrayRef *value );
您可以获得特定页面的注释。如果我是对的,那么关键是什么Notes如果有的话如何更新页面字典。
如果我在上述问题上完全错误,请告诉我如何Notes呈现在 PDF 上。或者 PDF 渲染器从哪里获取有关信息Notes.?
如果有人知道请尽快告诉我。真的提前致谢。


我目前正在我的框架中实现注释。苹果根本不评估“Annots”词典 - 所以你只能靠自己了。

我基本上重新实现了所有流行的注释类型、它们的绘制方式,并编写了我自己的解析器,该解析器从每个 CGPDFPage 的 Annots 字典中创建对象。然后在让 QuartzCore 绘制默认的 pdf 页面后绘制它们。

要获取所有密钥(注释等),请查看 Adob​​e 的 PDF 参考。这是一本值得读的书(> 1000 页)。

我不允许命名我正在开发的框架,因此请单击我的个人资料来查看链接。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在ios中使用Quartz 2d进行注释(注释、评论) 的相关文章

随机推荐

  • cordova Phonegap 在应用程序中使用外部网页,同时维护页眉/页脚(用于导航)

    到目前为止 我已经尝试过 inappbrowser 和 iframes iframe 可以工作 但我在使用 iframe 的实现中遇到了一些破坏应用程序的错误 是否有一种更类似于本机的解决方案可以在phonegap内显示外部网页 同时仍然保
  • Android 后退按钮无法返回到上一个 Activity

    我有一个有两个活动的应用程序 MainActivity 和 SettingsActivity MainActivity 有一个菜单 其中有一个 设置 菜单项 单击此菜单项时 它会有意启动 SettingsActivity 活动启动后 我单击
  • 如何避免独立android服务中的ANR

    您好 感谢您的帮助 我想将 java 系统移植到 Android 并且我想通过透明的独立服务将其提供给第三方应用程序 因此它将类似于系统库 该系统是一个 VoiceXML 解释器 它将解释由第 3 方应用程序处理的文档并将结果发送回它 这些
  • iPhone4 960x640 - 对应用程序有影响吗? [复制]

    这个问题在这里已经有答案了 可能的重复 如何适配iPhone 4不同的屏幕分辨率 https stackoverflow com questions 2992360 how to accommodate for the different
  • 来自 Java 的 CloudFlare(会员)post 请求产生 403 错误

    我正在尝试使用 Spring Boot 应用程序中的 Memberful 对用户进行身份验证 根据会员文档 https memberful com help integrate advanced oauth authorization co
  • Rails -TypeError:无法将 ActionController::Parameters 转换为文本

    我正在开发一个网站 使用 jQuery Preview 来获取任何链接的标题 描述或 favction url jQuery 预览 https github com embedly jquery preview https github c
  • 从多个 MPI 输出组成 VTK 文件

    对于盖驱动腔 CFD 的格子玻尔兹曼模拟 我将立方域分解为 也是立方 8 个子域 这些子域按 8 个等级独立计算 每个 MPI 等级都会为每个时间步生成一个 VTK 文件 并且由于我使用的是 ParaView 所以我希望将整个事物可视化为一
  • 直播视频延迟

    尝试确定造成延迟的 最大 原因 我的视频从编码器到服务器的往返行程 然后返回到浏览器中的播放器 我现在和我喜欢的球员的距离大约是 12 秒 它在我的播放器中缓冲吗 FMLE 退出时缓冲 我问的原因是我觉得我已经通过下面概述的小测试场景消除了
  • 使用 CSS 在嵌套 div 上重复一组颜色

    我有一组四种颜色 我想将它们应用到嵌套的 div 所以接下来的每个孩子都有不同的颜色 如果有第五层嵌套 我想从第一种颜色开始 并继续进行 即使我有无限深的嵌套 这是否可以仅使用 CSS 选择器来完成 避免 JavaScript 我目前陷入了
  • 如何在没有证书的情况下将 HTTPS 请求重定向到 HTTP (Apache VirtualHosts) 并避免证书警告

    我首先想说 这不是一个好的做法 我们应该努力让所有内容 100 都在 HTTPS 上 但在这种情况下 我对不保存敏感信息的系统提出了一系列尴尬的要求 当我还是初级学生的时候 当我问这个问题时 我对 HTTPS TLS 的工作原理一无所知 但
  • 使用CSS更改当前页面的链接颜色

    当前页面的一种样式链接与其他样式有何不同 我想交换文本和背景的颜色 li a color A60500 li a hover color 640200 background color 000000 ul li class a a href
  • 如何在ANTLR4中实现错误处理

    我有以下语法用于解析应用于图形的一阶逻辑公式 grammar Graph PARSER RULES input formula EOF formula TRUE FALSE formula AND formula formula OR fo
  • 搭建 dbcontext 时出现不明确的列名“name”错误

    我正在尝试从现有数据库构建脚手架 但该数据库有多个具有多个模式的表 并且某些表具有相同的名称但在不同的模式中 我 认为 这是我的问题的根源 我想知道您是否已经遇到过类似的情况吗 例如mySchema1 contacts and mySche
  • 如何从字符串中查找斜杠出现的次数

    如何使用 Excel VBA 宏查找字符串中正斜杠字符 的出现次数 老问题 但我想我会通过在 Excel 论坛上找到的答案来提高答案的质量 显然计数也可以使用找到 count Len string Len Replace string 答案
  • NodeJS:如何从文件中读取(最多)前 N 个字节?

    在 NodeJS 中 从文件中最多读取前 N 个字节的简洁 健壮且优雅的方法是什么 如果数据较少 那么我不希望抛出错误 如果有更多数据 那么我不希望将其读入内存 理想情况下无需安装外部软件包 也许涉及自 NodeJS 12 以来似乎是新的
  • 服务器在rails 3生产环境中找不到公用文件夹

    我正在使用最新的 Rails 3 beta 该应用程序在开发模式下工作正常 但是当我通过以下方式在生产模式下启动服务器时rails server e production 似乎public找不到文件夹 我收到如下错误消息 ActionCon
  • 在PHP中接收UDP数据包数据报

    我正在用 php 为 GPS 跟踪系统构建监听服务器 GPS 通过 UDP 数据包发送数据 我可以通过运行以下脚本来显示数据 然而 实际数据以符号形式出现 所以我猜我错过了转换 Reduce errors error reporting E
  • 以不同顺序遍历 3D 数组

    我有一个 3D 节点数组 我想通过从数组的中间节点开始 并向角落移动来遍历它 就像这样 and So on but for visualization purposes I ve shown in 2D but actually it is
  • swift xcode 从播放器列表中播放声音文件

    我正在寻找一种快速编码 可以从播放器列表中播放声音 而不是将声音作为资源添加到您的项目中 我主要找到了用法 NSURL fileURLWithPath NSBundle mainBundle pathForResource sound na
  • 在ios中使用Quartz 2d进行注释(注释、评论)

    我正在为 iPad 做基于 PDF 的应用程序 它支持缩略图视图 徒手注释和注释 Notes 我和我在网上搜索了很多 但没有找到任何使用 Quartz 2d 在 PDF 上进行注释的相关答案 我们可以使用以下方法获取 PDF 页面信息 CG