首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >不显示在UIWebView中的PDF图像

不显示在UIWebView中的PDF图像
EN

Stack Overflow用户
提问于 2018-11-03 04:47:23
回答 1查看 147关注 0票数 0

Im面临UIWebView中不显示PDF图像的问题

逻辑的方式是: 1. UIWebView接收base64字符串2.将字符串转换为NSData 3.将NSData加载到UIWebView

下面是代码的一部分

代码语言:javascript
运行
复制
NSString *b64 = @"JVBERi0xLjMNCiW9vrwNCjEgMCBvYmoNCjw8DQoJL0Jhc2VGb25...."; 
NSData *d =[[NSData alloc] initWithBase64EncodedString:b64 options:nil];
[uiWebview loadData:d MIMEType:@"application/pdf" textEncodingName:@"utf-8" baseURL:nil];

有一个解决办法,我设法在UIWebView中显示图像,解决方法是

  1. 将base64字符串复制到联机转换器以将其转换为pdf文件
  2. 使用“导出作为pdf”的Mac应用程序预览再次导出PDF文件
  3. 再次将文件转换为base64字符串并在UIWebView上显示

但是这个解决方案不可行,因为我在应用程序中没有预览应用程序

我还注意到,在预览应用程序中导出pdf之前,pdf是可编辑的,例如图像可以被拖动或删除。

所以我的问题是,

  1. 我是否错误地实现了UIWebView代码?
  2. 是否有用于iOS应用程序的“导出为PDF”的库?我确实在PDFKit上进行了一些探索,但它似乎确实具有任何导出功能。
EN

回答 1

Stack Overflow用户

发布于 2018-11-03 11:22:44

b64是NSString型的

initWithBase64EncodedData:b64选项:nil需要作为第一个参数NSData。

尝试:

代码语言:javascript
运行
复制
NSString *b64 = @"JVBERi0xLjMNCiW9vrwNCjEgMCBvYmoNCjw8DQoJL0Jhc2VGb25...."; 
NSData *d =[[NSData alloc] initWithBase64EncodedString:b64 options:nil];
[uiWebview loadData:data MIMEType:@"application/pdf" textEncodingName:@"utf-8" baseURL:nil];

或尝试:

代码语言:javascript
运行
复制
[[PDFDocument alloc] initWithData: d];

从base64字符串中获取Pdf。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/53128491

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档