问题标签 [cfdata]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
231 浏览

python - Python:绘图不保存图像中的数据

我正在为传感器绘图并将图像另存为 png...文件保存但它们是空白的,当我运行文件时,只有第一个绘​​图填充了信息。我需要将它们分成自己的数组而不用硬编码

0 投票
0 回答
403 浏览

objective-c - 使用 base64 来自 std::string 的新 CGIImage 或 CGImageRef

每个人:

我已经为此工作了好几天。这里有一点背景。我正在使用 protobuf 将图像发送到服务器。图像直接来自相机,因此它不是 jpeg 也不是 png。我找到了使用 CGImage 从 UIImage 获取数据的代码来创建 CGImageRef。请参阅以下代码:

Google protobuf 使用 C++ 代码向服务器发送和接收字节。当我尝试将数据字节取回 NSData 并使用该数据分配初始化 UIImage 时,UIImage 始终为零。 This tells me that my NSData is not in the correct format.

起初,我认为我的问题与 C++ 转换有关,如我之前的问题所示。但是在经历了很多挫折之后,我把中间的所有东西都剪掉了,然后用 CGImageRef 创建了一个 UIImage 并且它起作用了。请参阅以下代码:

以下是我最终需要做的事情的描述。有两个部分。第 1 部分采用 UIImage 并将其转换为 std::string。

  1. 取一个 UIImage
  2. 从中获取 NSData
  3. 将数据转换为无符号字符 *
  4. 将 unsigned char * 填充到 std::string

该字符串是我们将从 protobuf 调用中收到的内容。第 2 部分从字符串中获取数据并将其转换回 NSData 格式以填充 UIImage。以下是执行此操作的步骤:

  1. 将 std::string 转换为 char 数组
  2. 将 char 数组转换为 const char *
  3. 将 char * 放入 NSData
  4. 返回 NSData

现在,有了这些背景信息并掌握了使用 CGImageRef 填充 UIImage 有效的事实,这意味着该格式的数据是填充 UIImage 的正确格式,我正在寻求帮助以了解如何获取 base64。 data() 到 CFDataRef 或 CGImageRef 中。下面是我的测试方法:

正如任何不经意的观察者所见,我需要帮助。帮助!!!我已经尝试过关于 SO 的其他一些问题,例如这个这个这个,但找不到解决方案所需的信息。我承认我的部分问题是我不太了解图像(如 RGBA 值和其他东西)。

0 投票
1 回答
1112 浏览

swift - Swift CGPDFContextBeginPage 和 CFData

我想在 Swift 中创建一些 PDF 页面。

这是我创建 PDF 页面的代码

我对“aDictionary”变量有疑问。我想在 kCGPDFContextMediaBox 键下添加媒体框(它是 CGRect 类型变量)值。该文档告诉我以下内容: The media box for the document or for a given page. This key is optional. If present, the value of this key must be a CFData object that contains a CGRect (stored by value, not by reference).

在 Objective-c 中,从 CGRect 创建 CFData 相当容易,但在 Swift 中我不知道如何创建它。这是我的objective-c代码:

Swift 变体应该是什么?

假设我以某种方式创建了一个 CFData 对象,下一个“困难”步骤是将其添加到 CFDictionary。这是我尝试过的方法:

对于这两行,我收到以下错误:CFString is not convertible to '@lvalue inout $T3'

您有什么线索可以解决这两个错误吗?

0 投票
3 回答
7681 浏览

ios - 将 NSData 转换为!swift 2.0 中的 CFDataRef

我的代码中有一行已被弃用,XCode 中有建议用什么替换它,但我无法理解其中的区别,这是我的三行有效:

现在根据警告和建议,我将代码更改为:

这给了我一个错误:

0 投票
1 回答
394 浏览

objective-c - objective-c 从调整大小的图像中获取像素值

我在从调整大小的 UIimage 中获取值时遇到问题。初始图像尺寸为 500x500。我使用的方法只有在调整图像大小(甚至大小相等)时才会失败

  1. 我正在使用 ImageContext 和 drawInRect 创建新的调整大小的图像。

  2. 我在另一种方法中使用 CFDataRef 和 CFDataGetBytePtr 来获取 x,y 处的像素值。

CFDataRef 为所有默认图像返回 @1000000。调整图像大小后,此值将更改为 @90240000。与调整图像大小后为空的 CFDataGetBytePtr 相同。

现在我怀疑这与调整大小的图像实际上是一个新图像这一事实有关,但我不能确定,所以我非常感谢任何关于如何解决这个问题的解释或建议。

感谢您花时间查看我的问题。

0 投票
3 回答
120 浏览

ios - 在读取 NSData/CFData 对象时获取通知?

我正在使用一个接受CFData对象的 API,我需要动态生成数据,这是一个耗时的操作。消费者以随机、非连续的CFData方式读取它,它实际上很少需要数据的整个长度——它只需要其中的某些随机片段。

我想通过仅实际生成消费者请求的位来提高性能,因为它们是请求的。

有什么方法可以子类化CFData/NSData这样我会在读取数据块时得到回调并即时生成它们?

更新:不幸的是,消费者是第 3 方代码,因此其他类不是一个选项,除非它们以某种方式神奇地与CFData.

0 投票
1 回答
111 浏览

macos - 应用启动时 CFData(存储)分配的来源

在应用启动时,我的 Cocoa 应用会立即创建两个CFData对象。一个大小为 34 MB,另一个大小为 57 MB。我似乎无法弄清楚这些对象是什么或它们来自 Instruments 的何处。

仪器

两者都在applicationWillFinishLaunching完成之前分配。

我已经尝试清除NSURLCache和清除我的Kingfisher图像缓存,并且愿意接受其他想法来清除这些数据。我怎样才能找到这些分配的来源?

0 投票
1 回答
450 浏览

arrays - 在 Swift 中将图像十六进制转储转换为二进制数组的更快方法

我需要编辑图像的像素原始二进制值。为此,我执行了以下步骤:

  1. 我获得了包含图像十六进制转储的 CFData。

  2. 我将获得的 CFData 转换为字符数组(使用 convertToArray 函数)

  3. 之后,我使用 convertToBinaryString 函数来获取一个字符串,该字符串表示十六进制转储的以 2 为底的值。

它确实有效,并且可以处理小文件,但是当涉及到较大的文件时,它需要很长时间才能完成。我在寻找更快方法的斗争中失败了。你可以帮帮我吗?

下面你可以看看我需要优化的功能:

0 投票
1 回答
553 浏览

ios - Xcode IOS 中无法识别 CGDataProviderCreateWithCFData 函数

我正在看IOS的相机教程,并且CGDataProviderCreateWithCFData使用了该功能。但是 Xcode 似乎无法识别它。此功能是否已从最新的 Xcode Swift 更新中删除?我正在使用 Xcode 8.1 版和 Swift 3。我还有以下导入:

0 投票
1 回答
560 浏览

terminal - OpenFoam:在 polyMesh 文件夹中找不到 blockMeshDict 文件

使用命令终端,我尝试从 docker 访问 blockMeshDict 文件。我访问空腔文件夹、常量文件夹,然后是 polyMesh 文件夹。我知道 blockMeshDict 文件应该在 polyMesh 文件夹中,但是当我输入“ls”来查看 polyMesh 文件夹包含的内容时,它会显示文件“点”、“所有者”、“边界”、“面”和“邻居” ",如我上传的第一张截图所示。

然后我尝试了另一条路径,首先进入教程文件夹,如我上传的第二个屏幕截图所示。从教程中,我去了不可压缩 -> icoFoam -> 腔 -> 常量 -> polyMesh。但 polyMesh 文件夹仅包含“TransportProperties”,如屏幕截图所示。

总之,请帮我找到blockMeshDict文件。在此处输入图像描述

在此处输入图像描述