首页 > 其他 > 详细

playframework结合QRGen在页面生成QR码

时间:2015-02-16 02:11:00      阅读:411      评论:0      收藏:0      [点我收藏+]

本文来自: fair-jm.iteye.com 转截请注明出处

QRGen的使用详见:

http://www.importnew.com/15028.html

?

playframework的安装可以去play的官网:

https://playframework.com/

?

通过activator建立一个play项目

activator new qr_example

?

使用eclipse插件生成eclipse项目 并导入

?

在项目根目录下的build.sbt中增加依赖

?

 "net.glxn.qrgen" % "javase" % "2.0"

完整的如下:

name := """qr_example"""

version := "1.0-SNAPSHOT"

lazy val root = (project in file(".")).enablePlugins(PlayScala)

scalaVersion := "2.11.1"

libraryDependencies ++= Seq(
  jdbc,
  anorm,
  cache,
  ws,
  "net.glxn.qrgen" % "javase" % "2.0"
)

?

更改Application.scala的代码:

package controllers

import net.glxn.qrgen.core.image.ImageType
import net.glxn.qrgen.core.vcard.VCard
import net.glxn.qrgen.javase.QRCode
import play.api.Play.current
import play.api.cache.Cached
import play.api.mvc._

object Application extends Controller {

  def index = Action {
    Ok(views.html.index("Your new application is ready."))
  }

  def qr(word: String) = Cached(word) {
    Action {
      val out = QRCode.from(word).to(ImageType.PNG).stream();
      Ok(out.toByteArray()).as("image/png")
    }
  }

  def myInfoQr = Cached("myInfo") {
    Action {
      val vcard = new VCard("fairjm")
        .setEmail("fairjmflyer@gmail.com")
        .setWebsite("fair-jm.iteye.com");
      val out = QRCode.from(vcard).to(ImageType.PNG).stream();
      Ok(out.toByteArray()).as("image/png")
    }
  }
}

?

在routes中配置路由:

# Home page
GET   /               controllers.Application.index

GET   /qr/myinfo      controllers.Application.myInfoQr
GET   /qr/:wd         controllers.Application.qr(wd)

# Map static resources from the /public folder to the /assets URL path
GET   /assets/*file   controllers.Assets.at(path="/public", file)

?

更改index.scala.html

@(message: String)

@main("Welcome to Play") {
<p>
	example:
	<img src="@routes.Application.qr("http://fair-jm.iteye.com")" />
</p>
<p>
	myinfo:
	<img src="@routes.Application.myInfoQr" />
</p>
}

?

在命令行使用run 运行 最后效果如下:


bubuko.com,布布扣
?

这样就完成啦 很简单

本文来自: fair-jm.iteye.com 转截请注明出处

playframework结合QRGen在页面生成QR码

原文:http://fair-jm.iteye.com/blog/2186087

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!