`
huibin
  • 浏览: 756843 次
  • 性别: Icon_minigender_1
  • 来自: 郑州
社区版块
存档分类
最新评论

[转] 给网站上传的图片盖章

    博客分类:
  • JAVA
 
阅读更多

/************************************************
 * <p>java对图片的操作(只能使用jpg)</p>
 * 对图片的签章<br>
 * 对图片的缩图<br>
 * <p>Title:java对图片的操作(只能使用jpg)</p>

 ***********************************************/
package com.cn.wangk.test;

import java.io.*;

import com.sun.image.codec.jpeg.*;//sun公司仅提供了jpg图片文件的编码api

import java.awt.Font;
import java.awt.Graphics;
import java.awt.Image;
import java.awt.geom.AffineTransform;
import java.awt.image.AffineTransformOp;
import java.awt.image.BufferedImage;
import java.awt.image.ImageObserver;
import javax.imageio.ImageIO;

/**
 * @author wangkai
 */
public class Test {

    /**
     * 
     */
    public Test() {
        try {
            //生成以后新的图片地址
            File fo = new File("c:\\4.jpg");
            //读取的图片文件
            String imagePath = "C:\\Documents and Settings\\Administrator"
                    + "\\My Documents\\My Pictures\\1.jpg";
            //盖章的图片文件
            String toimagepth = "C:\\1.jpg";
            //得到图片的文件流
            InputStream imageIn;
            imageIn = new FileInputStream(new File(imagePath));
            //得到输入的编码器,将文件流进行jpg格式编码
            JPEGImageDecoder decoder = JPEGCodec.createJPEGDecoder(imageIn);
            //得到编码后的图片对象
            BufferedImage image = decoder.decodeAsBufferedImage();
            Graphics g = image.getGraphics();
            try {
                InputStream imageIn2 = null;
                imageIn2 = new FileInputStream(new File(toimagepth));
                //得到输入的编码器,将文件流进行jpg格式编码
                JPEGImageDecoder decoder2 = JPEGCodec
                        .createJPEGDecoder(imageIn2);
                //得到编码后的图片对象
                BufferedImage image2 = decoder2.decodeAsBufferedImage();

                //加盖图片章
                ImageObserver obser = null;
                int x = image.getWidth() - image2.getWidth();
                int y = image.getHeight() - image2.getHeight();
                g.drawImage(image2, x, y, obser);
            } catch (FileNotFoundException e) {
                //打开文件失败,表示章图片不存在,这时候直接加盖文件章(签名)
                g.setFont(new Font("宋体", Font.PLAIN, 18));
                g.drawString("秋水工作室", image.getWidth() - 100,
                        image.getHeight() - 20);
                g.drawString("water_wang@xs.zj.cn", image.getWidth() - 180,
                        image.getHeight() - 10);
            }
            g.dispose();

            ImageIO.write(image, "jpeg", fo);
            System.out.println("ok");
        } catch (FileNotFoundException e) {
            // 自动生成 catch 块
            e.printStackTrace();
        } catch (ImageFormatException e) {
            // 自动生成 catch 块
            e.printStackTrace();
        } catch (IOException e) {
            // 自动生成 catch 块
            e.printStackTrace();
        }

    }

    public static void saveFixedBoundIcon(File imageFile, int height, int width)
            throws Exception {
        double Ratio = 0.0;
        if (imageFile == null || !imageFile.isFile())
            throw new Exception(imageFile + "找不到指定的文件!");
        String filePath = imageFile.getPath();
        BufferedImage Bi = ImageIO.read(imageFile);

        if ((Bi.getHeight() > height) || (Bi.getWidth() > width)) {
            if (Bi.getHeight() > Bi.getWidth()) {
                Ratio = (new Integer(height)).doubleValue() / Bi.getHeight();
            } else {
                Ratio = (new Integer(width)).doubleValue() / Bi.getWidth();
            }
            File savefile = new File(filePath + "_" + height + "_" + width
                    + ".jpg");
            Image Itemp = Bi.getScaledInstance(width, height,
                    Image.SCALE_SMOOTH);
            AffineTransformOp op = new AffineTransformOp(AffineTransform
                    .getScaleInstance(Ratio, Ratio), null);
            Itemp = op.filter(Bi, null);

            try {
                ImageIO.write((BufferedImage) Itemp, "jpeg", savefile);
            } catch (Exception ex) {

            }
        }
    }

    public static void main(String[] args) {
        //       Test ts = new Test();
        try {
            Test.saveFixedBoundIcon(new File(
                    "C:\\test.jpg"), 200, 200);
        } catch (Exception e) {
            // 自动生成 catch 块
            e.printStackTrace();
        }
    }
}



出自:Trackback: http://tb.blog.csdn.net/TrackBack.aspx?PostId=219915


分享到:
评论

相关推荐

    jquery仿盖章效果并合成图片.zip

    【jQuery仿盖章效果与图片合成技术详解】 在网页设计中,实现动态的盖章效果可以为用户带来更丰富的交互体验。"jQuery仿盖章效果并合成图片"这个项目就是一个典型的例子,它利用jQuery库来模拟传统的盖章动作,并...

    Java实现给网站上传图片盖章的方法

    Java实现给网站上传图片盖章的方法主要涉及Java编程语言在处理图片合成操作方面的应用,具体而言,就是如何给上传到网站上的图片添加水印或者盖上特定的印章。此类功能在实际应用中,可用于保护图片版权、认证图片的...

    python机器学习图片盖章的印章检测和印章分类

    在这个项目中,Flask可能被用来创建一个Web服务,用户可以通过上传图片,由后台的机器学习模型进行印章检测和分类。 2. **PaddlePaddle**:PaddlePaddle是由阿里云开发的开源深度学习平台,支持多语言,包括Python...

    java实现word表格指定位置盖章,并且设置章悬浮于文字之上

    在Java开发中,实现Word表格指定位置盖章并设置章悬浮于文字之上,涉及到的技术主要包括Apache POI库的使用、图像处理以及Word文档对象模型的理解。Apache POI是Java中用于处理Microsoft Office格式文件(如DOCX)的...

    前端缩小上传的图片大小

    用户上传图片的大小不一,从前端方面限制图片的大小,不改变图片的比例进行缩小。

    Excel盖章器

    该工具可能提供了预设公章模板,也支持自定义上传公章图片,使得公章样式更加灵活多样。 标签中提到的“access”,在这里可能是指该工具的实现技术或与Microsoft Access数据库有关。如果该工具是基于Access开发的,...

    jQuery网页盖章电子签章插件.rar

    4. images:这个目录存放了签章的图像资源,可能包括预设的签章样式或用户上传的个性化签章图片。 5. index.html:示例页面,展示了插件的使用方法和效果,是开发者学习和测试插件功能的起点。 二、主要功能介绍 ...

    java实现将html转pdf,并在指定位置添加印章

    iText提供了`Image`类,你可以通过文件路径或者流加载印章图片,然后使用`setAbsolutePosition(x, y)`方法设定其在PDF中的位置。 下面是一个简单的示例代码片段,展示如何使用Flying Saucer和iText完成这个任务: ...

    Java 生成pdf文件加盖公章图片,上传阿里云

    如果遇到问题,如图片不显示或上传失败,可以查看日志或阿里云OSS控制台以获取错误信息。 以上就是使用Java生成PDF文件并加盖公章图片,以及上传阿里云的基本步骤和涉及的关键技术点。实际开发中可能还需要根据具体...

    4.PHP使用插件Mpdf 给PDF文件加水印

    如果你需要添加图片水印,可以使用`SetWatermarkImage`方法,传入图片路径和透明度: ```php $mpdf-&gt;SetWatermarkImage('path/to/watermark.png', 0.2); // 图片水印,第二个参数是透明度 ``` 5. 读取和合并PDF ...

    JAVA WORD中实现电子印章效果 文字浮于印章上面

    1. **创建印章图片**: 你可以使用Java的图像处理库,如JavaFX或AWT,创建一个包含印章图形的PNG或JPEG图片。这通常涉及到绘制图形、添加文字、设置颜色和透明度等步骤。 2. **插入印章图片**: 使用Apache POI,通过...

    生成电子签名和印章的pdf文件demo

    在IT行业中,电子签名和印章的应用日益广泛,特别是在法律文档、合同签署以及电子商务等领域。本文将深入探讨如何生成带有电子签名和印章的PDF文件,并基于提供的项目资源进行讲解。 首先,电子签名是一种数字方式...

    电子投标文件制作及上传问题汇总.doc

    - 对于需要盖章的部分,应打印、盖章、拍照,然后将图片插入Excel。 - 该模块只能上传一份文件,确保所有清单都在其中。 - 文件大小限制为25M,需要压缩图片和调整扫描件大小。 - 必须按照招标文件要求盖章,...

    网站开发协议书.doc

    网站开发协议书是企业在委托第三方进行网站开发时签订的重要法律文件,它明确了双方在网站设计、制作、费用支付、权利义务、验收标准以及争议解决等方面的条款。以下是对这份协议书主要内容的详细解释: 1. 双方的...

    网站首页布局及栏目参考

    - **颜色与风格说明**: 定义网站所采用的颜色方案和整体风格,并给出参考网站以供参考。 - **特殊要求**: 如有特别的设计需求,需在文档中详细说明。 #### 三、布局参考 提供三个参考网站的链接,帮助设计者更好地...

    网站建设合同正规版格式.doc

    - 乙方负责网站的设计、制作、上传和一定期限内的维护。 - 甲方提供必要的文字和图片资料,并确保其合法性和准确性,如有额外需求(如拍摄图片、编辑文字),则需额外付费。 6. **违约责任**: - 因乙方原因导致...

    网站建设合同范本

    - 负责网站动态信息的上传和校对; - 对合同金额保密; - 接受乙方提供的操作培训。 2. **乙方的权利和义务**: - 按照约定时间完成网站建设; - 提供一定的技术支持和培训服务; - 在规定时间内提交工作成果...

    企业网站制作合同协议_网站开发委托合同.doc

    【企业网站制作合同协议_网站开发委托合同】 本合同是甲方(委托方)与乙方(承建方)之间关于企业网站开发的法律文件,旨在明确双方在网站制作过程中的权责、服务内容、费用支付、验收标准以及违约处理等关键事项...

Global site tag (gtag.js) - Google Analytics