python - PySide6 setPageMargins()
问题描述
我尝试在 PySide6 中设置 qprinter 边距它会引发错误
PySide6.QtGui.QPagedPaintDevice.setPageMargins():参数太多
document = QtGui.QTextDocument()
p = QtPrintSupport.QPrinter()
p.setResolution(100)
p.setPageMargins(1, 6, 1, 1, QtPrintSupport.QPrinter().Millimeter)
document.setPageSize(QSizeF(p.pageRect().size()))
这适用于 PyQt5
解决方案
似乎 PySide6 对枚举更严格,不会像 PyQt5 那样自动转换,所以代码应该是:
document = QtGui.QTextDocument()
p = QtPrintSupport.QPrinter()
p.setResolution(100)
p.setPageMargins(QtCore.QMargins(1, 6, 1, 1), QtGui.QPageLayout.Millimeter)
document.setPageSize(
QtCore.QSizeF(p.pageRect(QtPrintSupport.QPrinter.Millimeter).size())
)
推荐阅读
- amazon-cognito - 用户池的 CognitoIdentityCredentials 相当于什么?
- python - 在不输入新输入的情况下调用 Python 函数
- selenium - 为什么我无法点击“Accept Cookies”弹出窗口的提交按钮?
- c# - 运算符 || 不能应用于“bool”和“bool”类型的操作数?
- pointers - 奇怪的输出二维数组c ++
- vba - 访问 - 未触发 MouseDown 事件
- java - 当检测到某种声音(例如拍手)时触发 android 应用
- python - Python InDesign 脚本:如何运行预检检查?
- java - 数组 = 复杂数据类型 = 类?
- spring-boot - 使用 spring 云流 kafka 绑定消费者和启用 DLQ 覆盖重试尝试