- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我的 django 应用程序正在使用多帧 reportlab pdf 报告,我想添加一些条形码/二维码。
我遇到的问题是我添加到布局中的每个对象都必须是 Flowable。所以问题是将 PlotArea(QrCodeWidget 的母类)转换为 Flowable。
如果我们在这里有答案,如果我们将 QrCodeWidget 添加为
,我们可以获得错误消息AttributeError: QrCodeWidget instance has no attribute 'getKeepWithNext'
最佳答案
好吧,我自己做了一个Flowable,比我教的还简单。
使用这个 API 就像在 Canvas 上做一样简单。
from reportlab.platypus import Flowable
from reportlab.graphics.barcode import qr
from reportlab.graphics import renderPDF
from reportlab.graphics.shapes import Drawing
class QRFlowable(Flowable):
# usage :
# story.append(QRFlowable("http://google.fr"))
def __init__(self, qr_value):
# init and store rendering value
Flowable.__init__(self)
self.qr_value = qr_value
def wrap(self, availWidth, availHeight):
# optionnal, here I ask for the biggest square available
self.width = self.height = min(availWidth, availHeight)
return self.width, self.height
def draw(self):
# here standard and documented QrCodeWidget usage on
# Flowable canva
qr_code = qr.QrCodeWidget(self.qr_value)
bounds = qr_code.getBounds()
qr_width = bounds[2] - bounds[0]
qr_height = bounds[3] - bounds[1]
w = float(self.width)
d = Drawing(w, w, transform=[w/qr_width, 0, 0, w/qr_height, 0, 0])
d.add(qr_code)
renderPDF.draw(d, self.canv, 0, 0)
关于python - 将 QrCodeWidget(或 PlotArea)与鸭嘴兽一起使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18569682/
我有一个显示单个条形的条形图。我的目的是把它作为我页面顶部的一条。这是每个合作伙伴在我所在的给定页面的流程中所花费时间的分割。 我遇到的问题是 PlotArea(我的假设是要处理的整个 Canvas
我的 django 应用程序正在使用多帧 reportlab pdf 报告,我想添加一些条形码/二维码。 我遇到的问题是我添加到布局中的每个对象都必须是 Flowable。所以问题是将 PlotAre
好的,所以 ChartObject 有一个 Chart & ShapeRange 成员。 Chart 有一个 ChartArea 和 PlotArea 成员: Chart 成员到底是什么?它说它“代表
我想用文件名注释我的绘图。对于 plot(),我使用了 mtext: plot(1:10) mtext("File xy-12-34-56.csv", 4) 如何使用 ggplot2 和 qplot
我在尝试设置图表的plotarea.width 属性的子例程中遇到错误。 如果我注释掉前面的行,其他尺寸也会导致此错误。没有ActiveChart,没有选择等,具体错误信息是这样的:“-2147467
我是一名优秀的程序员,十分优秀!