Xml 二维码不会';我没有出现在报告中。为什么?
我试图打印一个简单的二维码图像,但我无法得到它。我用了这个,但没用。我还需要什么吗?我已经安装了Xml 二维码不会';我没有出现在报告中。为什么?,xml,report,qr-code,odoo,odoo-8,Xml,Report,Qr Code,Odoo,Odoo 8,我试图打印一个简单的二维码图像,但我无法得到它。我用了这个,但没用。我还需要什么吗?我已经安装了reportlabs库 <img t-att-src="'/report/barcode/QR/%s' % 'My text in qr code'" /> <img t-att-src="'/report/barcode/?type=%s&value=%s&width=%s&height=%s'%('QR', 'text', 200
reportlabs
库
<img t-att-src="'/report/barcode/QR/%s' % 'My text in qr code'" />
<img t-att-src="'/report/barcode/?type=%s&value=%s&width=%s&height=%s'%('QR', 'text', 200, 200)"/>
我检查了日志文件,发现以下错误:
2015-07-13 12:01:09,305 28260 INFO wiretec_01 werkzeug: 127.0.0.1 - - [13/Jul/2015 12:01:09] "GET /report/barcode/QR/My%20text%20in%20qr%20code HTTP/1.1" 500 -
2015-07-13 12:01:09,322 28260 ERROR wiretec_01 werkzeug: Error on request:
Traceback (most recent call last):
File "/usr/lib/python2.7/dist-packages/werkzeug/serving.py", line 177, in run_wsgi
execute(self.server.app)
File "/usr/lib/python2.7/dist-packages/werkzeug/serving.py", line 165, in execute
application_iter = app(environ, start_response)
File "/opt/odoo8/openerp/service/server.py", line 281, in app
return self.app(e, s)
File "/opt/odoo8/openerp/service/wsgi_server.py", line 216, in application
return application_unproxied(environ, start_response)
File "/opt/odoo8/openerp/service/wsgi_server.py", line 202, in application_unproxied
result = handler(environ, start_response)
File "/opt/odoo8/openerp/http.py", line 1280, in __call__
return self.dispatch(environ, start_response)
File "/opt/odoo8/openerp/http.py", line 1254, in __call__
return self.app(environ, start_wrapped)
File "/usr/lib/python2.7/dist-packages/werkzeug/wsgi.py", line 579, in __call__
return self.app(environ, start_response)
File "/opt/odoo8/openerp/http.py", line 1421, in dispatch
result = ir_http._dispatch()
File "/opt/odoo8/openerp/addons/base/ir/ir_http.py", line 130, in _dispatch
return self._handle_exception(e)
File "/opt/odoo8/openerp/addons/base/ir/ir_http.py", line 100, in _handle_exception
return request._handle_exception(exception)
File "/opt/odoo8/openerp/http.py", line 659, in _handle_exception
return super(HttpRequest, self)._handle_exception(exception)
File "/opt/odoo8/openerp/addons/base/ir/ir_http.py", line 126, in _dispatch
result = request.dispatch()
File "/opt/odoo8/openerp/http.py", line 677, in dispatch
r = self._call_function(**self.params)
File "/opt/odoo8/openerp/http.py", line 303, in _call_function
return checked_call(self.db, *args, **kwargs)
File "/opt/odoo8/openerp/service/model.py", line 113, in wrapper
return f(dbname, *args, **kwargs)
File "/opt/odoo8/openerp/http.py", line 300, in checked_call
return self.endpoint(*a, **kw)
File "/opt/odoo8/openerp/http.py", line 796, in __call__
return self.method(*args, **kw)
File "/opt/odoo8/openerp/http.py", line 396, in response_wrap
response = f(*args, **kw)
File "/opt/odoo8/modules/addons/report/controllers/main.py", line 94, in report_barcode
barcode = barcode.asString('png')
File "/usr/lib/python2.7/dist-packages/reportlab/graphics/shapes.py", line 830, in asString
rl_config.showBoundary),**_extraKW(self,'_renderPM_',**kw))
File "/usr/lib/python2.7/dist-packages/reportlab/graphics/renderPM.py", line 660, in drawToString
drawToFile(d,s,fmt=fmt, dpi=dpi, bg=bg, configPIL=configPIL)
File "/usr/lib/python2.7/dist-packages/reportlab/graphics/renderPM.py", line 655, in drawToFile
c = drawToPMCanvas(d, dpi=dpi, bg=bg, configPIL=configPIL, showBoundary=showBoundary)
File "/usr/lib/python2.7/dist-packages/reportlab/graphics/renderPM.py", line 641, in drawToPMCanvas
draw(d, c, 0, 0, showBoundary=showBoundary)
File "/usr/lib/python2.7/dist-packages/reportlab/graphics/renderPM.py", line 50, in draw
R.draw(renderScaledDrawing(drawing), canvas, x, y, showBoundary=showBoundary)
File "/usr/lib/python2.7/dist-packages/reportlab/graphics/renderbase.py", line 198, in draw
self.initState(x,y) #this is the push()
File "/usr/lib/python2.7/dist-packages/reportlab/graphics/renderPM.py", line 99, in initState
self.applyState()
File "/usr/lib/python2.7/dist-packages/reportlab/graphics/renderPM.py", line 93, in applyState
self._canvas.setFont(s['fontName'], s['fontSize'])
File "/usr/lib/python2.7/dist-packages/reportlab/graphics/renderPM.py", line 374, in setFont
_setFont(self._gs,fontName,fontSize)
File "/usr/lib/python2.7/dist-packages/reportlab/graphics/renderPM.py", line 227, in _setFont
raise RenderPMError("Can't setFont(%s) missing the T1 files?\nOriginally %s: %s" % (fontName,s1,s2))
RenderPMError: Can't setFont(Times-Roman) missing the T1 files?
Originally <type 'exceptions.TypeError'>: makeT1Font() argument 2 must be string, not None
2015-07-13 12:01:09305 28260信息wiretec_01 werkzeug:127.0.0.1---[13/Jul/2015 12:01:09]“获取/报告/条形码/QR/My%20text%20in%20qr%20code HTTP/1.1”500-
2015-07-13 12:01:09322 28260错误wiretec_01 werkzeug:请求时出错:
回溯(最近一次呼叫最后一次):
文件“/usr/lib/python2.7/dist packages/werkzeug/service.py”,第177行,在run_wsgi中
执行(self.server.app)
文件“/usr/lib/python2.7/dist-packages/werkzeug/service.py”,第165行,执行
应用程序=应用程序(环境,启动响应)
文件“/opt/odoo8/openerp/service/server.py”,第281行,应用程序中
返回self.app(e,s)
文件“/opt/odoo8/openerp/service/wsgi_server.py”,第216行,在应用程序中
返回应用程序\u未经验证(环境、启动\u响应)
文件“/opt/odoo8/openerp/service/wsgi_server.py”,第202行,在应用程序中
结果=处理程序(环境、启动和响应)
文件“/opt/odoo8/openerp/http.py”,第1280行,在调用中__
返回自调度(环境、启动和响应)
文件“/opt/odoo8/openerp/http.py”,第1254行,在调用中__
返回self.app(环境,开始)
文件“/usr/lib/python2.7/dist packages/werkzeug/wsgi.py”,第579行,在调用中__
返回self.app(环境、启动和响应)
文件“/opt/odoo8/openerp/http.py”,第1421行,已发送
结果=ir\u http.\u dispatch()
文件“/opt/odoo8/openerp/addons/base/ir/ir_http.py”,第130行,in_dispatch
返回self.\u句柄\u异常(e)
文件“/opt/odoo8/openerp/addons/base/ir/ir_http.py”,第100行,在异常处理中
返回请求。\u处理\u异常(异常)
文件“/opt/odoo8/openerp/http.py”,第659行,在异常处理中
返回super(HttpRequest,self)。\u handle\u异常(exception)
文件“/opt/odoo8/openerp/addons/base/ir/ir_http.py”,第126行,in_dispatch
结果=request.dispatch()
文件“/opt/odoo8/openerp/http.py”,第677行,已发送
r=自调用函数(**self.params)
文件“/opt/odoo8/openerp/http.py”,第303行,在调用函数中
返回选中的\u调用(self.db、*args、**kwargs)
文件“/opt/odoo8/openerp/service/model.py”,第113行,在包装器中
返回f(数据库名,*args,**kwargs)
文件“/opt/odoo8/openerp/http.py”,第300行,在checked_调用中
返回自端点(*a,**kw)
文件“/opt/odoo8/openerp/http.py”,第796行,在调用中__
返回自方法(*参数,**kw)
文件“/opt/odoo8/openerp/http.py”,第396行,作为回应
响应=f(*参数,**kw)
文件“/opt/odoo8/modules/addons/report/controllers/main.py”,报告条形码第94行
条形码=条形码.asString('png')
文件“/usr/lib/python2.7/dist packages/reportlab/graphics/shapes.py”,第830行,在asString中
rl_config.showBoundary),***额外功率(自功率,''渲染转速,**功率))
文件“/usr/lib/python2.7/dist packages/reportlab/graphics/renderrpm.py”,第660行,在drawToString中
drawToFile(d,s,fmt=fmt,dpi=dpi,bg=bg,configPIL=configPIL)
文件“/usr/lib/python2.7/dist packages/reportlab/graphics/renderrpm.py”,第655行,在drawToFile中
c=drawToPMCanvas(d,dpi=dpi,bg=bg,configPIL=configPIL,showBoundary=showBoundary)
文件“/usr/lib/python2.7/dist packages/reportlab/graphics/renderrpm.py”,第641行,位于drawToPMCanvas中
绘制(d,c,0,0,showBoundary=showBoundary)
文件“/usr/lib/python2.7/dist packages/reportlab/graphics/renderrpm.py”,第50行,在绘图中
R.draw(渲染缩放绘制,画布,x,y,showBoundary=showBoundary)
文件“/usr/lib/python2.7/dist packages/reportlab/graphics/renderbase.py”,绘图中第198行
self.initState(x,y)#这是push()
文件“/usr/lib/python2.7/dist packages/reportlab/graphics/renderrpm.py”,第99行,处于初始状态
self.applyState()
文件“/usr/lib/python2.7/dist packages/reportlab/graphics/renderrpm.py”,第93行,在applyState中
self._canvas.setFont(s['fontName'],s['fontSize'])
文件“/usr/lib/python2.7/dist packages/reportlab/graphics/renderrpm.py”,第374行,setFont格式
_setFont(self.\u gs,fontName,fontSize)
文件“/usr/lib/python2.7/dist packages/reportlab/graphics/renderrpm.py”,第227行,在_setFont中
raise RenderPMError(“无法设置缺少T1文件的字体(%s)?\n原始%s:%s”%(字体名称,s1,s2))
RenderPMError:setFont(Times Roman)不能缺少T1文件吗?
最初:makeT1Font()参数2必须是字符串,而不是无
我也安装了包
ttf mscorefonts安装程序我在Odoo论坛上找到了解决方案:
在这些文件中下载并解压缩/path/to/your/python/site packages/reportlab/font
重新启动服务器并尝试好吧,我在Odoo论坛中找到了解决方案:
在这些文件中下载并解压缩/path/to/your/python/site packages/reportlab/font
重新启动服务器并重试