CGContextSetTextMatrix 适用于屏幕外位图吗?

2023-12-22

我正在使用上下文创建屏幕外图像CGBitmapContextCreate().

在绘制文本时,我尝试使用:

CGContextSetTextMatrix(contextRef, CGAffineTransformMake(1.0, 0.0, 0.0, -1.0, 0.0, 0.0));

但我的文字仍然是颠倒的。如果我使用标准转换,它是正确的:

CGContextTranslateCTM(contextRef, 0.0, contextRect.size.height);
CGContextScaleCTM(contextRef, 1.0, -1.0);

我的问题是应该CGContextSetTextMatrix适用于屏幕外位图?也许我做错了什么。


不会。文本矩阵,顾名思义,只影响文本。

所有绘图都会经过当前的变换矩阵,只有文本也会经过文本矩阵。因此,对于非文本的任何内容,您需要更改 CTM。

您可以使用CGContextConcatCTM函数在一个函数调用中将翻转矩阵连接到 CTM 上,尽管我发现平移 + 缩放更容易阅读。请注意,将一个矩阵连接到另一个矩阵与用新矩阵替换旧矩阵不同。

Core Graphics中没有用不同矩阵替换CTM的功能;你只能连接到它。你可以得到CTM,将其求逆,然后将逆矩阵连接到当前矩阵上,得到单位矩阵;然后,将您想要的矩阵连接到该矩阵上,该矩阵将成为您想要的矩阵,没有其他影响。然而,没有太多理由去付出所有这些努力。

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

CGContextSetTextMatrix 适用于屏幕外位图吗? 的相关文章

  • iPhone OS:从匿名对象获取方法和变量列表

    我正在构建我的第一个 iPhone Obj c 应用程序 并且我有大量的数据保存子类 我将它们传递给引用函数 对于 cite 函数 这些对象是匿名的 我需要找到一种方法来访问每个传递对象的所有变量 我一直在使用预构建的 NSArray 和选
  • iPhone SDK - orkut API

    我曾使用 gData 库从 iPhone 中的 Google 联系人中检索联系人信息 同样 我将与 Orkut 合作 有没有像 gData 这样适用于 Orkut 的库 如果是这样 请给我链接 提前致谢 对于 orkut 我们有 orkut
  • 在 iOS 中擦除绘图

    我正在开发一个绘图应用程序 我有一个UIBezierPath 我用它在touchesMoved中绘制 并将其转换为CGPath 然后在tCGplayer上绘制 这是我的代码 void touchesMoved NSSet touches w
  • 方向改变时重新定位控件

    我知道自动布局可用于在方向改变时使尺寸和位置保持一致 当方向改变时 是否可以完全改变布局 例如 请查看下面的纵向模式下简单登录屏幕的线框 现在 如果我旋转设备 我想完全重新定位控件 这种事情可以用自动布局来完成吗 如果没有 我该怎么办 谢谢
  • 使用 AVMutableVideoCompositionLayerInstruction 旋转视频

    我正在 iPhone 4 上使用前置摄像头拍摄视频 并将视频与其他一些媒体资源结合起来 我希望该视频为纵向 所有视频的默认方向都是横向 在某些情况下 您必须手动管理 我正在使用 AVFoundation 特别是 AVAssetExportS
  • 如何使用 iOS 可达性

    我正在开发一个使用网络的 iPhone 应用程序 iPhone 通过 HTTP 请求与我的服务器通信 并且应该可以在 WiFi 和 3G 上运行 我目前使用NSURLConnection initWithRequest向我的服务器发送异步请
  • 无法从 iOS 中的框架访问 .nib(XIB) 文件

    我已经从现有的代码库中创建了一个框架 并尝试在新的代码库中使用它 这很好用 但是当我尝试访问属于我的框架包的一部分的 nib 文件时 我的应用程序崩溃了 这是我用来访问视图控制器 XIB 文件的代码 testViewController c
  • 将静态库合并为单个

    如何将静态库合并为一个 我确实有三个静态库 libSignatureLibary armv6 a libSignatureLibary armv7 a 和 libSignatureLibary i368 a 现在我想将这三个文件合并到一个库
  • 将 NSData 转换回音频文件

    我已经转换了我的 caf音频文件到NSData使用以下代码行对象 NSData audioData NSData dataWithContentsOfFile MyRecorderFilePathURL path options 0 err
  • UITableViewCell显示多种字体

    我想在 uitableviewcell 中以类似于 iPhone 地址簿的不同字体显示两个单词 例如 约翰Buchanan 您应该使用两个 UILable 或者您可以使用OH属性标签 https github com AliSoftware
  • iPhone:UIApplication WillResignActiveNotification 从未被调用

    我正在视图控制器中播放视频 当用户按下硬件主页按钮并且当前正在播放视频时 应用程序崩溃并显示EXC BAD ACCESS在模拟器中 我读到我应该使用applicationWillResignActive停止视频播放的消息应该可以解决崩溃问题
  • 隐藏选项卡栏项目并对齐其他选项卡项目

    在我的应用程序中 我有 4 个选项卡栏项目 我正在 XIB 文件中添加这 4 个选项卡栏项目 最初我必须显示 3 个选项卡栏项目 同步后我必须在我的应用程序中显示第 4 个选项卡栏项目 因此 为此 我使用以下代码隐藏第四个选项卡栏项目 se
  • 我可以通过 SDK 访问 iPhone 上的可视语音邮件文件吗?

    我想访问存储在 iPhone 上的可视语音邮件文件 有没有办法通过SDK访问这些文件 有人有处理这些文件的经验吗 我假设它们是从网络下载并存储在 iPhone 本地的文件 不 iPhone 上的每个应用程序都是独立的 因此您无法访问任何其他
  • iPhone 核心数据:无法找到 NSManagedObjectModel

    我使用 Apple 的 CoreDataBooks 示例项目作为核心数据的学习辅助工具 我修改了应用程序 以便在加载应用程序时我首先显示菜单页面 而不是图书表视图 RootViewController 我做了以下事情 我在界面生成器中创建了
  • 尽早检测有问题的 XIB 视图

    我的笔尖名称有一个拼写错误 当我推向导航控制器时 它在代码中被破坏了 弄清楚它并没有花太长时间 但我认为最好尽早断言格式良好 以便更容易弄清楚 问题是它不是零 它只是无法从笔尖正确地形成自己 在 initWithNib 之后是否有更好的断言
  • 如何在禁用状态下更改 UIButton 图像 alpha?

    我有一个带有图像的 UIButton 在其禁用状态下 该图像应具有 0 3 alpha UIButton button UIButton buttonWithType UIButtonTypeCustom UIImage arrowImag
  • Xcode 在我的 iPhone 应用程序上运行 codesign 后如何运行脚本?

    我编写了一个脚本 它执行一些步骤来将我的构建打包为临时发行版 我的第一个猜测是在我的 Ad Hoc 目标中使用运行脚本阶段 但看起来协同设计被固定在构建 iPhone 应用程序链的最后位置 有人知道如何在构建过程的最后一刻运行我的脚本 Up
  • UISearchDisplayController—为什么我的搜索结果视图包含空单元格?

    我快要疯了 在我的核心数据数据库中 我有很多用户 我已经通过 NSFetchedResultController 将数据库连接到 tableviewcontroller 当视图加载时 我看到了所有用户 我可以通过 Storyboard Se
  • 我可以安全地将 UInt32 存储到 NSUInteger 吗?

    在标头中 它的定义如下 if LP64 TARGET OS EMBEDDED TARGET OS IPHONE TARGET OS WIN32 NS BUILD 32 LIKE 64 typedef long NSInteger typed
  • 从应用程序打开/关闭 iPhone 的 Wifi

    我需要打开或关闭 iPhone 中的 wifi 有什么方法可以做到吗 还是被禁止了 私有框架 所有使用公共 SDK 编写的应用程序都经过沙箱处理 他们只能访问苹果认为可以在该沙箱中使用的属性和数据 恐怕 Wi fi 不在列表中 请看一下这个

随机推荐

  • 在 Rails 4 中使用图像作为单选按钮标签

    我正在尝试使用助手 collection radio buttons 将图像显示为标签 并希望将 image id 保存到模型中 以便我可以检索 url 到目前为止 我已经想出了一个显示单选按钮和 image url 的方法标签 我已经注意
  • mixLatest 中的可选 Observables

    正如 rx 中定义的 mixLatest 仅当所有值至少更改一次时才会发出 只要每个源 Observables 已发出至少一个 物品 我用它来操作我的 android 视图中的视图 例如 一旦所有可观察量发出有效值 我就会启用号召性用语按钮
  • 如何从依赖jar中删除签名?

    我有一个Maven项目 foo 这是一个网络启动 为了可以通过浏览器分发 内容需要进行 jarsigned 我使用的是maven jarsigner plugin
  • 释放 UIPageViewController 中未使用的页面

    我正在使用一个单独的 h m and xib每个文件UIViewController的基础页面UIPageViewController基于图画书 每个页面加载动画 音乐等 大约占用4MB内存 在 Instruments 中 每加载一页 可用
  • 如何知道我的商店 ID 是什么?

    如何知道我的商店视图 ID 是什么 修改数据库中的表时需要这样做 截图说明了 Jevgeni Smirnov 的回答 正如他所说 你应该去系统 gt 管理店铺然后在右栏中单击所需的商店名称
  • Package.json 中的新字段 false

    升级到后npm 5 我注意到了一个新字段package json这实在是晦涩难懂 What false means name test devDependencies dependencies What that means What s
  • 在 RSpec 自动化测试期间使 Sprockets 缓存失效

    在我的 Rails 应用程序中 我有一个 js erb 文件 其中有一个基于某些 Ruby 代码动态设置的变量 var myTimer 该应用程序工作正常 但我在一些自动化测试中遇到问题 该问题发生在使用此 JavaScript 的 RSp
  • xcodebuild 生成空的compile_commands.json

    我正在使用以下命令将 oclint 与 xcode 5 一起使用 步骤1 xcodebuild target OClintDemo configuration Debug scheme OClintDemo sdk iphonesimula
  • 即使定义了函数,我也必须在类中实现函数的错误[重复]

    这个问题在这里已经有答案了 我收到错误 Class QueryParameterComparer must implement Function Compare x As QueryParameter y As QueryParameter
  • CPU什么时候可以忽略LOCK前缀并使用缓存一致性?

    我原本以为MESI等缓存一致性协议可以提供伪原子性but仅跨个人内存加载 存储指示 如果我执行获取 修改 写入指令组合 仅使用 MESI 将无法在第一条指令到最后一条指令之间强制执行原子性 然而 英特尔参考手册第 3a 卷第 8 节说 8
  • java: ClassCastException - [Ljava.lang.Long;无法转换为 java.lang.Long

    我使用 red5 并使用 IConnection 类设置 获取属性 但这确实不相关 L 在java中是长的意思 所以 0L 是 0 类型长整型 而不仅仅是 0 即 0 类型整数 有什么区别 Ljava lang Long and java
  • 使用 Gulp 时如何将 React 设置为生产模式

    我需要在生产模式下运行 React 这可能需要在环境中的某个位置定义以下内容 process env NODE ENV production 问题是我在 Tornado 一个 python Web 服务器 而不是 Node js 后面运行它
  • iOS / iPhone 上的正常运行时间冻结

    有人知道为什么我使用以下方法会遇到奇怪的正常运行时间吗 NSProcessInfo processInfo NSProcessInfo processInfo NSTimeInterval systemUptime processInfo
  • 如何拆分Tailwind生成的CSS代码?

    我正在寻找一种解决方案 将 Tailwind PostCSS 插件 与 purgecss 插件结合 生成的大 CSS 文件拆分为多个 CSS 文件 每个消费者 JS 文件一个 CSS 文件 JS 文件使用的 CSS 规则可以通过查看 JS
  • Android 4G 上如何查找互联网连接是否可用?

    我使用了以下代码来了解互联网连接是否可用 它在 3G 系统上运行良好 但它不适用于 4G 技术 有人知道如何查找 4g 上的互联网连接是否可用吗 如果有人有演示代码 请提供 Code public static boolean checkC
  • 为什么 EMR 5.x 版本中取消了对 Amazon S3 的直接写入?

    读完本页后 http docs aws amazon com emr latest ReleaseGuide emr hive differences html http docs aws amazon com emr latest Rel
  • Galaxy选项卡的布局设计

    我是 Android 新人 我想为 Galaxy 选项卡设计布局以及其他布局 我设计了四种布局 布局 小 大 超大和正常布局 但是当我尝试在 Galaxy 选项卡中检查这一点时 布局被拉伸 那么我如何开发在 Galaxy Tab 中运行的布
  • 具有固定大小 FIFO 队列的生产者/消费者模式

    我需要围绕固定大小的 FIFO 队列实现生产者 消费者模式 我thinkConcurrentQueue 周围的包装类可能适用于此 但我不完全确定 而且我以前从未使用过 ConcurrentQueue 这样做的不同之处在于队列只需要保存固定数
  • (0, someFunction)() 在javascript中的含义是什么[重复]

    这个问题在这里已经有答案了 我在某人的代码中发现了这段代码 听起来像这样 0 function arg this 在我尝试像下面这样玩之后 0 function arg console log arg 2 console log 0 1 2
  • CGContextSetTextMatrix 适用于屏幕外位图吗?

    我正在使用上下文创建屏幕外图像CGBitmapContextCreate 在绘制文本时 我尝试使用 CGContextSetTextMatrix contextRef CGAffineTransformMake 1 0 0 0 0 0 1