之前已经提出过类似的问题,但我找不到解决方案.
这是我的情况 - 我的UIWebView加载了一个远程html页面.网页中使用的图像在构建时是已知的.为了使页面加载更快,我想将图像文件打包到iOS应用程序中并在运行时替换它们.
[请注意,html是远程的.我总是得到从本地加载html和图像文件的答案 - 我已经这样做了]
我得到的最接近的建议是在html页面和iOS应用程序中使用自定义URL方案,如myapp://images/img.png,使用NSURLProtocol子类截取myapp:// URL并用本地替换图像图片.在理论上听起来不错,但我没有遇到一个完整的代码示例来证明这一点.
我有Java背景.我可以使用自定义内容提供商轻松地为Android做到这一点.我相信iOS/Objective-C必须存在类似的解决方案.我没有足够的Objective-C经验可以在很短的时间内自行解决.
任何帮助将不胜感激.
我正在尝试使用直接HTML打印文件,但是,我在将图像添加到打印文件时遇到了困难.
如何在我要打印的HTML中引用项目中的图像?UIMarkupTextPrintFormatter是否支持标记?
从历史上看,我的应用程序已将确认生成为纯HTML,并将该HTML传递给普通的MFMailComposeViewController,以便通过电子邮件发送给客户.我想尝试利用iOS 4.2中的新打印类将HTML呈现为PDF并将其作为附件发送.
我尝试了以下方法:
NSString *html = /* generate my HTML here */
NSMutableData *pdfData = [NSMutableData data];
UIMarkupTextPrintFormatter *fmt = [[UIMarkupTextPrintFormatter alloc]
initWithMarkupText:html];
// Render the html into a PDF
UIGraphicsBeginPDFContextToData( pdfData, CGRectZero, nil );
for (NSInteger i=0; i < [fmt pageCount]; i++)
{
UIGraphicsBeginPDFPage();
CGRect bounds = UIGraphicsGetPDFContextBounds();
[fmt drawInRect:bounds forPageAtIndex:i];
}
UIGraphicsEndPDFContext();
Run Code Online (Sandbox Code Playgroud)
问题是[fmt pageCount]始终返回零,因此不会将实际页面内容呈现到PDF NSData中.
有没有人在实际打印作业之外使用UIMarkupTextPrintFormatter将HTML转换为PDF?任何帮助非常感谢.
airprint ×2
iphone ×2
cocoa-touch ×1
html ×1
image ×1
ios ×1
ios-4.2 ×1
objective-c ×1
uiwebview ×1