我尝试在插件QGIS Dufour 2.01中将另存为按钮,并希望将其另存为pdf文件 当我尝试保存我的文件(打开文件目的地,然后单击保存)时,我收到一条错误消息
这段代码我写了
def _save(self, simpan):
import fpdf
# Portrait, millimeter units, A4 page size
pdf=fpdf.FPDF("P", "mm", "A4")
# Set font: Times, normal, size 10
pdf.set_font('Times','', 12)
# Layout cell: 0 x 5 mm, text, no border, Left
pdf.cell(0,5,'Input 1 : ' + self.ui.lineInput1.text(),border=0,align="L")
pdf.cell(0,5,'Input 2 : ' + self.ui.lineInput2.text(), border=0,align="L")
pdf.cell(0,5,'Recomendation : ' + self.ui.textRec2.toPlainText(), border=0, align="L")
pdf.cell(0,5,'Data 1 :' + self.ui.lineCond1.text(), border=0, align="L" )
pdf.cell(0,5,'Data 2 :' + self.ui.lineCond2.text(), border=0, align="L" )
pdf.output( simpan+'.pdf','F')
我收到错误消息
File "C:\PROGRA~1\QGISDU~1\apps\Python27\lib\site-packages\fpdf\fpdf.py", line 615, in cell
if(self.y+h>self.page_break_trigger and not self.in_footer and self.accept_page_break()):
AttributeError: 'FPDF' object has no attribute 'y'
Python version:
2.7.4 (default, Apr 6 2013, 19:54:46) [MSC v.1500 32 bit (Intel)]
我使用fpdf 1.7并使用.msi安装程序
安装它答案 0 :(得分:1)
在使用单元格填充之前,您似乎还没有在pdf中添加页面。
尝试在pdf = fpdf.FPDF(“P”,“mm”,“A4”)之后调用pdf.add_page()
答案 1 :(得分:0)
添加页面
def _save(self, simpan):
import fpdf
# Portrait, millimeter units, A4 page size
pdf=fpdf.FPDF("P", "mm", "A4")
# add a page
pdf.add_page()
# Set font: Times, normal, size 10
pdf.set_font('Times','', 12)
# Layout cell: 0 x 5 mm, text, no border, Left
pdf.cell(0,5,'Input 1 : ' + self.ui.lineInput1.text(),border=0,align="L")
pdf.cell(0,5,'Input 2 : ' + self.ui.lineInput2.text(), border=0,align="L")
pdf.cell(0,5,'Recomendation : ' + self.ui.textRec2.toPlainText(), border=0, align="L")
pdf.cell(0,5,'Data 1 :' + self.ui.lineCond1.text(), border=0, align="L" )
pdf.cell(0,5,'Data 2 :' + self.ui.lineCond2.text(), border=0, align="L" )
pdf.output( simpan+'.pdf','F')`