我试图在没有下载pdf的情况下阅读html中的pdf文件。下码适用于图像。我希望阅读pdf代替图像。是可能的。
db.define_table('mytable',
Field('image', type='upload'))
控制器
def tables():
return dict(tables=db().select(db.mytable.ALL))
查看
{{for table in tables:}}
<img src="{{=URL('default', 'download', args=table.image)}}" /> <br />
{{pass}}
答案 0 :(得分:0)
您可以从PDF创建一个png。 PDF不是浏览器可以用HTML呈现的东西(确保Chrome和Firefox可以打开PDF;但这是全屏,只有pdf本身;例如另一个URL)。可能超出范围:在某些项目中,我使用crontab将上传的PDF转换为jpg以提供预览:
#Render all PDF's to thumb when no thumb is found
#convert -thumbnail x600 -background white "1.pdf"[0] "1.jpg"
import os,sys
OVERWRITE_EXISTING=False
PDFDIR='uploads'
THUMBDIR=os.path.join('static','thumbs')
import glob
import os
def insensitive_glob(pattern):
def either(c):
return '[%s%s]'%(c.lower(),c.upper()) if c.isalpha() else c
return glob.glob(''.join(map(either,pattern)))
#get all the pdf file names in the current folder
os.chdir('uploads')
files = insensitive_glob("*.pdf")
# and convert each file if needed
for f in files:
convert_needed=True
newFile=os.path.join('..',THUMBDIR,'%s.jpg' % f[:-4])
if not OVERWRITE_EXISTING:
if os.path.exists(newFile):
#print 'Warning:: .jpg already exists; skipping %s' % f
convert_needed=False
if convert_needed:
cmd='convert -density 144 %s[0] %s' % (f,newFile)
print "Converting with: %s" % cmd
os.system(cmd)