|
Project Information
|
This simple Java library converts plain HTML markup to image and provides client-side image-map using HTML <map> element. What Can I Do With It: Use Cases- Programmatically compose images - Use case: You need to compose images from other images and texts.
- Solution - Create a web page using plain HTML, CSS and image and use Html2Image to convert it to an image.
- Improve your spam - Use case: You need to send decorative HTML email.
- You craft your HTML using CSS, images and links.
- Alas, your clients open their Outlook, Gmail or any other mail client mailbox, and find your mail all scrambled up (merely resembles the presentation of the same HTML in a browser).
- That's because Outlook and other clients only support limited functionality of HTML and have different implementations and bugs.
- Solution - Use Html2Image to convert your original mail's HTML to a new HTML containing only image (<img/>) and client-side image-map (<map/>) for the links in the original HTML.
- This also allow you to easily use unique fonts in your mail.
- Prevent spamming - Use case: Your website has a list of contacts and their email addresses.
- The email addresses are in plain text, allowing robots and spiders to harvest these addresses and spam your team with Viagra ads.
- Solution - Use Html2Image to convert those email addresses to images.
What Do I Give and What Do I GetHtml2Image allows you to transform this HTML markup: <b>Hello World!</b> Please goto <a title="Goto Google" href="http://www.google.com">Google</a>. To this visually equivalent HTML markup: <map name="map">
<area href="http://www.google.com" coords="153,3,193,22" shape="rect" title="Goto Google">
</map>
<img border="0" usemap="#map" src="hello-world.png"/> Supported Images FormatsHtml2Image allows you to save your HTML as GIF, PNG or JPEG image. APIHtml2Image as only one useful Java class, HtmlImageGenerator. Common usage is this: HtmlImageGenerator imageGenerator = new HtmlImageGenerator();
imageGenerator.loadHtml("<b>Hello World!</b> Please goto <a title=\"Goto Google\" href=\"http://www.google.com\">Google</a>.");
imageGenerator.saveAsImage("hello-world.png");
imageGenerator.saveAsHtmlWithMap("hello-world.html", "hello-world.png");Which will generate hello-world.png image of the HTML and hello-world.html file containing client-side image-map <map> (as in the example above). - loadUrl(url) - Loads HTML from URL object or URL string.
- loadHtml(html) - Loads HTML source.
- saveAsImage(file) - Save loaded HTML as image.
- saveAsHtmlWithMap(file, imageUrl) - Creates an HTML file containing client-side image-map <map> generated from HTML's links.
- getLinks() - List all links in the HTML document and their corresponding href, target, title, position and dimension.
- getBufferedImage() - Get AWT buffered image of the HTML.
- getLinksMapMarkup(mapName) - Get HTML snippet of the client-side image-map <map> generated from the links.
- get/setOrientation(orientation) - Get/Set document orientation (left-to-right or right-to-left).
- get/setSize(dimension) - Get/Set size of the generated image.
DownloadYou can download Html2Image from the download page or use it as Maven dependency: <dependency>
<groupId>gui.ava</groupId>
<artifactId>html2image</artifactId>
<version>0.9</version>
</dependency>
<repositories>
<repository>
<id>yoava</id>
<name>AOL yoava</name>
<url>http://yoava.artifactoryonline.com/yoava/repo</url>
</repository>
</repositories>
|