怎么在JSP中插入图片?

怎么在JSP中插入图片?,第1张

1、首先需要新建Dynamic web project项目,建好之后在WebContent里面的内容如图所示。

2、在body里在body里面设置背景图片,如图所示body部分内容。

3、在body里面代码 *** 作好之后,运行效果如图所示。

4、也可以设置背景颜色,直接将url(images/backImage.jpg)替换成#f00000。

5、直接写页面代码 *** 作好之后,运行效果帆森前如下。

6、也可以在head里面设 *** 作代码,如图所示。

7、在head里面代码 *** 作好之后,运行效果如下。

扩展资料:

JSP将Java代码和特定变动内容嵌入到静态的页面中,实现以静态页面为模板,动态生成其中的部分内容。JSP引入了被称为“JSP动作”的XML标签,用来调用内春枯建功能。另外,可以创建JSP标签库,然后像使用标准HTML或XML标签一样使用它们。

标签库能增强功态清能和服务器性能,而且不受跨平台问题的限制。JSP文件在运行时会被其编译器转换成更原始的Servlet代码。JSP编译器可以把JSP文件编译成用Java代码写的Servlet,然后再由Java编译器来编译成能快速执行的二进制机器码,也可以直接编译成二进制码。

你要单独写一衫银缓个JSP来分别获取图片和文字,主页面输出内容如搏猛下:

<img src=getpic.jsp?id=xxx>文字

让getpic.jsp才从数据库获取指定记录或模的BLOB字段内容,然后以字节流输出。

// 读取模板图片内容

BufferedImage image = ImageIO.read(new FileInputStream("c:\\test.jpg"))

Graphics2D g = image.createGraphics()// 得到图形上下文

g.setColor(Color.BLACK)// 设橡咐置画笔颜色

// 设置字体

g.setFont(new Font("宋体", Font.LAYOUT_LEFT_TO_RIGHT, 15))// 写入签名

// 下面这一句中的43,image.getHeight()-10可以改成你要的坐标。

g.drawString("这是新加入的文字", 43, image.getHeight() - 10)

g.dispose()

FileOutputStream out = new FileOutputStream("c:\\test1.jpg")

JPEGImageEncoder encoder = JPEGCodec.createJPEGEncoder(out)

encoder.encode(image)

out.close()

希望我的回答能帮助你 谢谢 呵呵答案补充 肯定了 在一张纸上写字 肯定会自动并埋换行的 否则写外面?逻辑都通不过去~ 答案补充 把你的意思说出了 是不是随便的写字然后就提交 就把字写在了图片上还是?多绝如蚂少字 有没有约束? 答案补充 g.drawString("这是新加入的文字", 43, image.getHeight() - 10)

在这个做处理 你规定了字体的大小 那么获取字符的长度*大小 一次判断不要大于宽度 否则image.getHeight() - 10++ 你试试 应该可以的 我这里没有Eclipse 答案补充 public class mains {

/**

* @param args

*/

private static int fontsize = 15

static String jj(String str)

{

String sContent = str

sContent=sContent.replaceAll(" "," ")

sContent=sContent.replaceAll("<br/>","/")

sContent=sContent.replaceAll("<br>","/")

return sContent

} 答案补充 static void hh(String str)

{

BufferedImage image

try {

image = ImageIO.read(new FileInputStream("E:\\dian zi za zhi/789.jpg"))

Graphics2D g = image.createGraphics()// 得到图形上下文

g.setColor(Color.BLACK)// 设置画笔颜色

// 设置字体

g.setFont(new Font("宋体", Font.LAYOUT_LEFT_TO_RIGHT, fontsize))// 写入签名

// 下面这一句中的43,image.getHeight()-10可以改成你要的坐标。

String text = jj(str) 答案补充 String [] text1 = text.split("/")

int h = image.getHeight()

int w = image.getWidth()

for(int i=0i<text1.lengthi++)

{

g.drawString(text1[i],0,fontsize+i*fontsize)

}

g.dispose()

FileOutputStream out = new FileOutputStream("E:\\dian zi za zhi/789.jpg")

JPEGImageEncoder encoder = JPEGCodec.createJPEGEncoder(out)

encoder.encode(image)

out.close() 答案补充 public static void main(String[] args) {

// TODO Auto-generated method stub

hh("sdakljsdhww<br/>asdasd<br/>a")

}

}

试试 可以换行 答案补充 关于 图片的尺寸以及字体是否超出 你自己试着解决下 不要过于依赖问


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11972885.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-20
下一篇 2023-05-20

发表评论

登录后才能评论

评论列表(0条)

保存