Tag: quartz graphics

如何从CGPoint和CGSize创buildCGRect?

我需要从CGSize和CGPoint的不同集合中为UIImageView创build一个框架,根据用户的select,这两个值将始终不同。 那么我怎样才能让CGRect成为CGPoint和CGSize呢? 先谢谢你。

我在哪里可以find一个Mac虚拟键码的列表?

我正在使用CGEventCreateKeyboardEvent ,需要知道使用什么CGKeyCode值。 具体来说,我是在Command键的关键代码之后。 文档给出了其他键的例子: z是6 , shift是56 。 必须有某个Mac虚拟键码的列表?

NSAttributedString背景颜色和圆angular

我有一个关于自定义UIView圆angular和文本背景颜色的问题。 基本上,我需要在自定义UIView中实现像这样的效果(图片附加 – 注意一侧的圆angular): 我正在考虑使用的方法是: 使用核心文本来获得字形运行。 检查高亮范围。 如果当前运行在高亮范围内,在绘制字形运行之前绘制一个带圆angular的背景矩形和所需的填充颜色。 绘制字形运行。 不过,我不确定这是否是唯一的解决scheme(或者说这是否是最有效的解决scheme)。 使用UIWebView不是一个选项,所以我必须在自定义的UIView做到这一点。 我的问题是,这是最好的方法来使用,我在正确的轨道上? 或者我错过了一些重要的东西,或者错误地做了什么? 在此先感谢您的帮助! 🙂 干杯!

如何将ASCII字符转换为CGKeyCode?

我需要一个函数,给定一个字符,返回与当前键盘布局上该字符位置相关联的CGKeyCode 。 例如,给定“b”,如果使用US QWERTY,它应该返回kVK_ANSI_B kVK_ANSI_N如果使用Dvorak,则返回kVK_ANSI_B 。 为此,Win32 API具有函数VkKeyScan() 。 X11具有函数XStringToKeySym() 。 在CG API中有这样一个函数吗? 我需要这个为了传递一个参数到CGEventCreateKeyboardEvent() 。 我已经尝试使用CGEventKeyboardSetUnicodeString()来代替,但显然不支持修饰符标志(我需要)。 我已经广泛search这个,但找不到一个体面的答案。 目前我正在使用下面的代码( 可以在线find ),它可以工作,但并不完美(而且很难破译如何简化),我不想在生产代码中使用它: #include <stdint.h> #include <stdio.h> #include <ApplicationServices/ApplicationServices.h> CGKeyCode keyCodeForCharWithLayout(const char c, const UCKeyboardLayout *uchrHeader); CGKeyCode keyCodeForChar(const char c) { CFDataRef currentLayoutData; TISInputSourceRef currentKeyboard = TISCopyCurrentKeyboardInputSource(); if (currentKeyboard == NULL) { fputs("Could not find keyboard layout\n", stderr); […]