彩色打印预览不显示 UILabels
Color print preview not showing UILabels
在 iPad 打印预览中未显示 UILabel。当我放大打印预览时,它会正确显示。当我将 UILabel opaque
属性 更改为 true
时,它会将 UILabel 的背景更改为黑色并在打印预览中显示。这是我用来显示打印预览的代码。
let printController = UIPrintInteractionController.shared
let printInfo = UIPrintInfo(dictionary:nil)
printInfo.outputType = UIPrintInfoOutputType.general
printInfo.jobName = "Print"
printInfo.duplex = UIPrintInfoDuplex.none
printInfo.orientation = UIPrintInfoOrientation.portrait
printController.printPageRenderer = nil
printController.printingItems = nil
printController.printingItem = printUrl
printController.printInfo = printInfo
printController.showsNumberOfCopies = true
printController.showsPaperSelectionForLoadedPapers = true
printController.present(animated: true, completionHandler: nil)
当我将 UIPrintInfoOutputType.general
更改为 UIPrintInfoOutputType.grayscale
时,它将显示 UILabel,但我需要彩色打印。灰度仅适用于黑白打印。
我尝试了很多方法来解决我的问题,终于找到了解决办法。
我把UILabel的opaque
属性改成了true
,然后把UILabel的背景色改成了白色。问题是,UILabel 的背景颜色是 Default。因此,在打印预览中,UILabel 的背景显示为黑色。如果 UILabel 的背景颜色是 Default 或 Clear Color 它将在打印预览中显示为黑色。
printLabel.isOpaque = true
printLabel.backgroundColor = UIColor.white //Not Default or Clear Color
在 iPad 打印预览中未显示 UILabel。当我放大打印预览时,它会正确显示。当我将 UILabel opaque
属性 更改为 true
时,它会将 UILabel 的背景更改为黑色并在打印预览中显示。这是我用来显示打印预览的代码。
let printController = UIPrintInteractionController.shared
let printInfo = UIPrintInfo(dictionary:nil)
printInfo.outputType = UIPrintInfoOutputType.general
printInfo.jobName = "Print"
printInfo.duplex = UIPrintInfoDuplex.none
printInfo.orientation = UIPrintInfoOrientation.portrait
printController.printPageRenderer = nil
printController.printingItems = nil
printController.printingItem = printUrl
printController.printInfo = printInfo
printController.showsNumberOfCopies = true
printController.showsPaperSelectionForLoadedPapers = true
printController.present(animated: true, completionHandler: nil)
当我将 UIPrintInfoOutputType.general
更改为 UIPrintInfoOutputType.grayscale
时,它将显示 UILabel,但我需要彩色打印。灰度仅适用于黑白打印。
我尝试了很多方法来解决我的问题,终于找到了解决办法。
我把UILabel的opaque
属性改成了true
,然后把UILabel的背景色改成了白色。问题是,UILabel 的背景颜色是 Default。因此,在打印预览中,UILabel 的背景显示为黑色。如果 UILabel 的背景颜色是 Default 或 Clear Color 它将在打印预览中显示为黑色。
printLabel.isOpaque = true
printLabel.backgroundColor = UIColor.white //Not Default or Clear Color