gpt4 book ai didi

iphone - Ios从字节数组创建pdf

转载 作者:行者123 更新时间:2023-11-28 22:52:43 25 4
gpt4 key购买 nike

我想从字节流(我从 wsdl 接收)创建一个 pdf,我已经在 NSArray 上插入了这个字节流,但我不知道如何编写 pdf。(这个字节流是pdf)谢谢!

                //to convert NSData to pdf
NSData *data = [NSKeyedArchiver archivedDataWithRootObject:arrayOfByte];

CFDataRef myPDFData = (__bridge_retained CFDataRef)data;
CGDataProviderRef provider = CGDataProviderCreateWithCFData(myPDFData);
CGPDFDocumentRef pdf = CGPDFDocumentCreateWithProvider(provider);

NSArray *docDirectories = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *docDirectory = [docDirectories objectAtIndex:0];
NSString *fileName = [docDirectory stringByAppendingPathComponent:@"abcd.pdf"];

[data writeToFile:fileName atomically:NO];

但我收到:找不到 PDF 标题:找不到“%PDF”。

最佳答案

要从带符号的 8 位字符数组中获取数据字节,您可以执行以下操作:

NSArray *bytes = ...;

NSMutableData *data = [[NSMutableArray alloc] initWithCapacity:bytes.count];
for (NSNumber *byteVal in bytes) {
Byte b = (Byte)(byteVal.intValue);
[data appendBytes:&b length:1];
}

这应该可行,但如果您在解析 JSON 时直接填充 data 对象,效率会更高。

然后您可以使用以下方式将字节写入文件:

NSArray *docDirectories = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *docDirectory = [docDirectories objectAtIndex:0];
NSString *fileName = [docDirectory stringByAppendingPathComponent:@"abcd.pdf"];

[data writeToFile:fileName atomically:NO];

关于iphone - Ios从字节数组创建pdf,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11542079/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com