OStack程序员社区-中国程序员成长平台

标题: ios - 将自定义的 UITableViewCells 导出到 UIImage [打印本页]

作者: 菜鸟教程小白    时间: 2022-12-13 06:01
标题: ios - 将自定义的 UITableViewCells 导出到 UIImage

我有一个 UITableView,其中包含一组 UITableViewCell - 每个单元格都包含一个 UIView,它在语境。 将这些单元格导出到一个 UIImage 的最佳方法是什么?

谢谢

编辑 1:我知道如何从表格的可视区域创建图像,但是该表格会滚动到屏幕之外,我想为所有单元格创建 UIImage,不仅是你看到的那些。



Best Answer-推荐答案


您应该能够通过告诉 View 的图层绘制到自定义图形上下文中来做到这一点,然后从该上下文创建位图 CGImage。一旦你有了一个 CGImage,你就可以从它创建一个 UIImage。大概是这样的:

// Create a bitmap context.
CGColorSpaceRef colorSpace = CGColorSpaceCreateDeviceRGB();
CGContextRef bitmapContextForCell = CGBitmapContextCreate(nil, cell.bounds.size.width, cell.bounds.size.height, 8, 0, colorSpace, kCGImageAlphaNone);
CGColorSpaceRelease(colorSpace);

// Draw the cell's layer into the context.
[cell.layer renderInContext:bitmapContextForCell];

// Create a CGImage from the context.
CGImageRef cgImageForCell = CGBitmapContextCreateImage(bitmapContextForCell);

// Create a UIImage from the CGImage.
UIImage * cellImage = [UIImage imageWithCGImage:cgImageForCell];

// Clean up.
CGImageRelease(cgImageForCell);
CGContextRelease(bitmapContextForCell);

这就是为每个单元格创建图像的方法。如果要为所有单元格创建一个图像,请使用表格 View 而不是单元格。

关于ios - 将自定义的 UITableViewCells 导出到 UIImage,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4168484/






欢迎光临 OStack程序员社区-中国程序员成长平台 (https://ostack.cn/) Powered by Discuz! X3.4