屏幕快照de uma ScrollView no iOS(Swift)

Opróximodesafioestásemper virando esquina de nossas vidas e um dos desafios bacanas que tenho para passar dessa vezéfazer um print do content completo de uma scrollview

可以在UIImage中进行滚动转换 Vejamos o passo-a-passo eocódigocompleto。

  1. UIScrollView的重要uma 扩展, toImage到 ui UIImage ;
  2. 使用UIGraphicsBeginImageContext com contentSize;
  3. Armazenar: contentOffset,frame,showsVerticalScrollIndicator和showVerticalScrollIndicator 。 阿西姆·波德莫斯(Assim Podemos Retornar)认为自己不动产。
  4. Colocar showsVerticalScrollIndicatorshowHorizo​​ntalScrollIndicator参数为 false。 Nãoqueremos滚动显示图像;
  5. Setar contentOffset参数 CGPoint.zero。 Queremos um framecomeçandosem thinkar o scroll que ousuáriopossa ter feito;
  6. Igualamos o frame da scrollview com o seuconteúdo,assim todo oconteúdofica“visível”;
  7. 没有滚动上下文的渲染视图
  8. 转换上下文相关的图像;
  9. 重设原产地名称,e;重设原产地名称;
  10. 拍摄照片或照片的结果。

变形金刚奖章:

可以连续完成滚动图像的滚动视图,也可以通过UIPrintInteractionController的参数或其他方式来完成此操作。

您还可以输入UIKit的必需品然后滚动滚动并打印 falhar。

可以执行以下操作的对象,包括UIPrintInteractionController的批注和设置,包括通过图像打印的图像。

  func onPrintReceipt(从视图:UIScrollView,onPrintFailed:@escaping()-> Void){ 
让屏幕截图= view.toImage()

如果(截图==零){
onPrintFailed()
返回
}

让printController = UIPrintInteractionController.shared
让printInfo = UIPrintInfo(dictionary:[:])
printInfo.outputType = UIPrintInfoOutputType.general
printInfo.orientation = UIPrintInfoOrientation.portrait
printInfo.jobName =“打印”
printController.printInfo = printInfo
printController.showsPageRange = true
printController.printingItem =屏幕截图

printController.present(animated:true){(控制器,已完成,错误)在
if(!completed && error!= nil){
onPrintFailed()
}
}
}

合格的UIScrollView或USCOM图像 😉👋