`
牧羊人
  • 浏览: 215517 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

HTML2JPG,HTML页面转图片的实现方法

    博客分类:
  • java
阅读更多
import java.awt.Graphics2D;
import java.awt.RenderingHints;
import java.awt.geom.AffineTransform;
import java.awt.image.BufferedImage;
import java.awt.image.ColorModel;
import java.awt.image.WritableRaster;
import java.io.*;
import javax.imageio.*;
import javax.swing.*;
/**
* HTML2JPG,HTML页面转图片的实现方法。
*/
public class Test extends JFrame {
public Test(String url, File file) throws Exception {
    JEditorPane editorPane = new JEditorPane();
    editorPane.setEditable(false);
    editorPane.setPage(url);
    JScrollPane jsp = new JScrollPane(editorPane);
    getContentPane().add(jsp);
    this.setLocation(0, 0);
    Thread.sleep(5 * 1000);
    setSize(10000, 10000);
    pack();
    // BufferedImage image = new BufferedImage(editorPane.getWidth(),
    // editorPane.getHeight(), BufferedImage.TYPE_INT_RGB);
    BufferedImage image = new BufferedImage(editorPane.getWidth(), editorPane.getHeight(),
        BufferedImage.TYPE_INT_RGB);
    Graphics2D graphics2D = image.createGraphics();
    editorPane.paint(graphics2D);
    BufferedImage image1 = resize(image, 450, 600);
    ImageIO.write(image1, "jpg", file);
    dispose();
}
public static void main(String[] args) throws Exception {
    new Test("http://www.google.cn", new File("d:/file.jpg"));
}
public static BufferedImage resize(BufferedImage source, int targetW, int targetH) {
    // targetW,targetH分别表示目标长和宽
    int type = source.getType();
    BufferedImage target = null;
    double sx = (double) targetW / source.getWidth();
    double sy = (double) targetH / source.getHeight();
    // 这里想实现在targetW,targetH范围内实现等比缩放。如果不需要等比缩放
    // 则将下面的if else语句注释即可
    if (sx > sy) {
      sx = sy;
      targetW = (int) (sx * source.getWidth());
      // } else {
      // sy = sx;
      // targetH = (int) (sy * source.getHeight());
    }
    if (type == BufferedImage.TYPE_CUSTOM) { // handmade
      ColorModel cm = source.getColorModel();
      WritableRaster raster = cm.createCompatibleWritableRaster(targetW, targetH);
      boolean alphaPremultiplied = cm.isAlphaPremultiplied();
      target = new BufferedImage(cm, raster, alphaPremultiplied, null);
    } else
      target = new BufferedImage(targetW, targetH, type);
    Graphics2D g = target.createGraphics();
    // smoother than exlax:
    g.setRenderingHint(RenderingHints.KEY_RENDERING, RenderingHints.VALUE_RENDER_QUALITY);
    g.drawRenderedImage(source, AffineTransform.getScaleInstance(sx, sy));
    g.dispose();
    return target;
}
}
分享到:
评论

相关推荐

    C#实现HTML页面转jpg图片格式

    本项目名为"C#实现HTML页面转jpg图片格式",主要目标是通过输入任意的网页链接,在本地指定文件夹生成对应的jpg格式网页截图,同时解决可能出现的白屏问题。 首先,我们需要理解HTML页面的本质,它是一种基于文本的...

    java实现html文件转换成图片

    本代码实现html文件转换成一个图片的功能。附件包含所需要的包。 注:该代码转换的html文件必须一个屏幕能展现出来的,如果内容太多一个屏幕展现不出来则不能很好的转换。所以该代码只适用于内容不太多的html文件。...

    HTML网页保存成jpg图片

    HTML网页保存成jpg图片是一种将网页内容转换为静态图像的技术,这种技术在多种场景下非常有用,例如制作网站截图、创建可分享的预览图或者用于离线阅读。本篇文章将详细探讨如何实现这一过程,并介绍相关的工具和...

    将HTML页面转成图片JPG

    在IT行业中,将HTML页面转换为图片是一种常见的需求,例如为了快速分享网页内容或保存页面快照。这个过程可以通过编程实现,通常涉及到浏览器渲染引擎和图像处理技术。在这个主题下,我们将深入探讨如何使用Java来...

    html_html图片翻页_html实现翻页_html_

    总结来说,这个HTML图片翻页功能的实现涉及到了HTML的基本结构、图片的插入、CSS的样式控制以及JavaScript的事件监听和页面动态更新。通过这些技术的结合,我们可以创建出一个既美观又易于操作的网页,为用户提供...

    通过URL地址获取网页生成jpg图片

    总结来说,生成网页jpg图片涉及网络请求、HTML解析、页面渲染以及图像转换等多个步骤。使用Java结合其他工具库,我们可以构建出一个跨平台且适应不同环境的解决方案。在实际应用中,还应考虑性能优化、错误处理和...

    C#生成网页截图 将指定html网页转换成图片保存到本地

    它是实现网页截图的基础,能够解析并渲染HTML页面。 2. **Graphics类**:这是.NET Framework中的一个类,用于进行图形绘制和操作。在截图过程中,我们可以利用`Graphics`对象来绘制WebBrowser控件的内容到一个...

    Base64转换图片JPG

    这种技术广泛应用于电子邮件附件、HTML页面内嵌图片、API数据交换等领域,尤其是那些不支持直接发送二进制数据的系统。 7. **编码与解码流程**: - **编码流程**:读取JPG图片的二进制数据,使用Base64编码函数将...

    html5图片360度自动旋转真人试衣特效

    1. **图片加载**:首先,需要加载一系列的图片资源,如压缩包内的01.jpg到23.jpg。这些图片通常是同一物体从不同角度拍摄的,形成一个完整的360度序列。 2. **Canvas初始化**:在HTML中创建Canvas元素,并在...

    WebToJPG 抓取网页转化成JPG图片

    【WebToJPG 抓取网页转化成JPG图片】技术是将网页内容转化为静态图像的一种方法,这对于创建网站预览、保存网页快照或在无法直接访问网页时查看页面内容非常有用。ASP.NET,微软的Web应用程序开发框架,提供了实现这...

    excel文件转换为PDF,jpg,html的方法

    Excel文件作为数据处理和分析的重要工具,有时我们需要将其转换为PDF、JPG图像或HTML网页格式。以下是对"excel文件转换为PDF,jpg,html的方法"的详细解释。 首先,我们来探讨如何将Excel文件转换为PDF格式。PDF...

    excel转html和jpg图片 一键生成

    标题"excel转html和jpg图片 一键生成"以及描述"把excel文件上传到对应文件夹即可",揭示了这是一个自动化工具,能快速将Excel文件转化为HTML网页和JPEG图片。 Excel转HTML: 当需要在网页上展示数据或者在不支持...

    JPG2PDF,jpg转PDF工具

    总结,"JPG2PDF"工具为我们提供了便捷的图片转PDF解决方案,无论是在工作还是生活中,都能有效帮助我们管理和分享图像资料。正确使用这类工具,可以极大地提升我们的工作效率,同时也保护了原始图片的质量。

    flash转图片dll(swf转jpg)

    标题中的“Flash转图片DLL(SWF转JPG)”是指一种技术,它允许将Adobe Flash格式的SWF文件转换为常见的图像格式,如JPG。这个过程通常涉及使用特定的DLL(动态链接库)文件,它是一个包含可重用代码的库,可以被其他...

    java实现本地读取图片存储到数据库中并在html网页显示

    在本文中,我们将深入探讨如何使用Java实现在本地读取图片并将其存储到数据库中,之后再通过HTML页面显示这些图片。这个过程涉及到的主要技术包括Java编程、数据库操作(特别是MySQL)以及前后端交互。 首先,我们...

    JS实现网页签名(生成任意格式png、JPG等)

    总的来说,这个项目通过JavaScript和相关的库,实现了网页上的电子签名功能,用户可以在网页上直观地绘制签名,然后将签名保存为PNG或JPG格式的图片。这一功能对于在线文档签署、电子商务和其他需要数字签名的场景...

    html实现图片滚动

    <img src="image2.jpg" alt="图片2"> <img src="image3.jpg" alt="图片3"> ``` 接下来,我们将使用JavaScript来实现图片的自动滚动。这里可以使用计时器(`setInterval`)来定时改变图片显示。首先,我们需要...

    pb实现网页图片下载

    "pb实现网页图片下载"这个标题暗示我们讨论的是如何使用Python(通常缩写为pb)来下载网页上的图片。这里我们将深入探讨如何利用Python进行网页图片的下载,以及涉及的相关技术。 首先,我们需要理解HTTP协议,它是...

    html实现图片轮转

    在本项目中,我们将探讨如何使用这三者来实现一个图片轮转的效果,尤其关注在移动端的滑动表现。 首先,HTML(HyperText Markup Language)是网页的基础,它定义了网页的内容和结构。在实现图片轮转时,我们需要...

Global site tag (gtag.js) - Google Analytics