昨天发现虽然图片生成字体够清楚了,但是会出现少量锯齿,所以调整了下,代码如下:

g.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON);

-- 以下为旧的

今天遇到一个很纠结的问题,就是用java 生成的图片字体很是模糊,一开始以为是字体的问题,换了很多字体,例如苹方,思源黑体,这些平时用到的开源字体,无论咋处理,都没效果。

后面老大看了下,觉得是我的画布又问题,于是添加了一个参数,实例如下:

g.setRenderingHint(RenderingHints.KEY_TEXT_ANTIALIASING,RenderingHints.VALUE_TEXT_ANTIALIAS_LCD_HRGB);

然后就ok了,具体代码如下

/**

* 计算文本高度

*

* @param content 文本内容

* @param font 文本字体

* @param width 文本的行宽

* @param lineHeight 文本行高

*/

public static ContentImgInfo effectiveHeight(String content, Font font, int width, int lineHeight) {

int imgHeight = 0;

ContentImgInfo contentImgInfo = new ContentImgInfo();

try {

BufferedImage image = new BufferedImage(100, 300, BufferedImage.TYPE_INT_RGB);

Graphics2D g = image.createGraphics();

g.setFont(font);

g.setRenderingHint(RenderingHints.KEY_TEXT_ANTIALIASING,RenderingHints.VALUE_TEXT_ANTIALIAS_LCD_HRGB);

FontMetrics fm = g.getFontMetrics(font);

// 获取字体高度

int fontHeight = fm.getHeight() + lineHeight;

// 添加对文字的换行处理

char firstChar = "中文".charAt(0);

int charWidth = fm.charWidth(firstChar); // 字符的宽度

int num = (int) Math.ceil(width / charWidth);

int lineNum = EffHelper.ceil(content.length(), num) + 1;

imgHeight = lineNum * fontHeight;

g.dispose();

// 设置文本图片信息

contentImgInfo.setFontHeight(fontHeight);

contentImgInfo.setContentImgHeight(imgHeight);

contentImgInfo.setLineNum(lineNum);

} catch (Exception e) {

}

return contentImgInfo;

}

java通过freemarker导出包含富文本图片的word文档

废话不多说,进入正题! 本文重点在于:对富文本图片的导出(基础的freemarker+word模板导出这里不做详细解说哈) 参考文章:http://www.cnblogs.com/liaofeifig ...

web前端图片加载优化,从图片模糊到清晰的实现过程

在网页图片显示的时候,会发现许多网站采用了先模糊,然后在慢慢清晰的过程,这样的加载用户体验是比较好的,那么如何实现呐? 默认加载2张图片,一张缩略图,一张原图,当打开网页的时候默认只显示缩略图,然后我 ...

Manjaro安装配置美化字体模糊发虚解决记录

Manjaro安装记录 前言: ​ 记录自己Manjaro18安装的一些坑,避免下次满互联网找解决方法.在此之前试过Manjaro.Ubuntu.Fedora.linux Mint系统的pac.yum ...

css3新增边框、阴影、边框、背景、文本、字体

css3和css有什么区别?简单来讲css3是css(层叠样式表)技术的升级版本,css3新特征有很多,例如圆角效果.图形化边界.块阴影与文字阴影.使用RGBA实现透明效果.渐变效果.使用@Font- ...

Win10 字体模糊解决(DPI缩放禁用),设置默认输入法英文

电脑坏了 , 换了新电脑, 但是新电脑,死活不能装win7, 装都不能装!!!郁闷了 好多地方字体模糊了,百般设置都不好看, 后来远程桌面到win2008server, 发现,在远程桌面里面居然很清晰 ...

Qt在Linux环境下应用程序字体模糊的解决方法(先改成使用默认字体,然后使用qtconfig配置)

这两天一直在用Qt实现一个跨平台的软件.软件之前在Windows上编写的,后来放到里Ubuntu 10.10下编译.程序运行时遇到一个很棘手的问题,界面文本非常模糊.后来在网上查阅了好几天的资料,经历 ...

HTML学习笔记 CSS文本及字体及连接及列表(a标签使用及缩进) 案例 第七节 (原创)参考使用表

Java生成png文件字体不清晰_java 文本图片字体模糊优化处理相关推荐

  1. java 生成csv文件_Java生成CSV文件实例详解

    本文实例主要讲述了java生成csv文件的方法,具体实现步骤如下: 1.新建csvutils.java文件: package com.saicfc.pmpf.internal.manage.utils ...

  2. java 导出mdb文件_Java中Java生成mdb文件工具类

    package com.util; /**  * Java生成mdb文件[MS Access文件]  * 1. 在ClassPath下存一个空的blank.mdb. (也就是在你的项目中包含一个空白的 ...

  3. 超详细的java生成excel文件并下载

    在网上随手一搜,可以搜到很多java生成excel文件相关的博客,但每个都有不同,核心点说清楚了,但具体运用的时候,相信大家或多或少都没法一次直接运用,这样每次去找并且运用的时候很费时间,所以这也是我 ...

  4. # Java 生成pdf文件

    Java 生成pdf文件 引入依赖 <!-- https://mvnrepository.com/artifact/com.itextpdf/itextpdf --> <depend ...

  5. Java生成PDF文件_自用

    Java生成PDF文件 一.前言 前几天,做ASN条码收货模块,需要实现打印下载收货报表,经一番查找,选定iText--用于生成PDF文档的一个Java类库.废话不多说,进入正题. 二.iText简介 ...

  6. POI以SAX方式解析Excel2007大文件(包含空单元格的处理) Java生成CSV文件实例详解...

    http://blog.csdn.net/l081307114/article/details/46009015 http://www.cnblogs.com/dreammyle/p/5458280. ...

  7. zipentry压缩乱码linux,java生成压缩文件 ZipEntry出现乱码的有关问题

    java生成压缩文件 ZipEntry出现乱码的问题 在项目中,一次导出的文件有好几个,而且文件内容比较大,最后考虑到把文件进行压缩在下载,开始试用JDK自带的ZIP压缩包时,ZipEntry ze ...

  8. java流与文件——java生成解压缩文件(夹)

    [0]README 0.1) 本文描述转自 http://blog.csdn.net/chenssy/article/details/9622171 , 旨在理解 java流与文件--java生成解压 ...

  9. Java生成ics文件

    java生成ICS文件,这玩意好象是个什么日程表类的东西.可以导入到outlook里面用. public void exportActivityDates(HttpServletRequest req ...

  10. iText5实现Java生成PDF文件完整版,二维码

    iText5实现Java生成PDF文件完整版 vue 项目中分别使用 vue-pdf 插件和内嵌 iframe 实现 PDF 文件预览,缩放,旋转,下载,保存等功能 ? Vue打印文件(v-print ...

最新文章

  1. 如何设计出“有趣”的互联网产品?
  2. 201621123037 《Java程序设计》第10周学习总结
  3. Leetcode 240.搜索二维矩阵II (每日一题 20210727 同一题)
  4. Bash中的shopt选项
  5. android 调用c wcf服务,如何使用命名管道从c调用WCF方法?
  6. 【算法精讲】分享一道很不错的算法题
  7. php 操件文件指定编码,(PHP帮助)如果文件中存在特定编号,请执行此操作
  8. 在 Confluence 6 中的 Jira 高级权限
  9. 程序员硬核吃瓜宋慧乔宋仲基离婚、范冰冰李晨分手!
  10. 阿里云ECS服务器自定义端口无法访问问题记录
  11. 概率论与数理统计习题集及答案
  12. ubuntu服务器基本安全配置
  13. android tab吸顶,Android 顶部带Banner的TabLayout吸顶实现方案
  14. portknocking(端口试探)简介
  15. 【深度学习】基于人脸关键点的视频心率检测
  16. 用神经网络实现语音分类
  17. Python爬虫识别中文字符和标点符号
  18. 小米将推出新款自研芯片
  19. SECTION 15 函数和函数式编程(二)
  20. P2P穿透StunServer

热门文章

  1. 用友NC6.5 6.33 6.3 5.7 5.5 5.02最新补丁下载
  2. ubuntu编译libjpeg-turbo
  3. macBook Air出现部分乱码问题解决(浏览器、appstore乱码)
  4. java去除音频无声_java – 使用FFMPEG和silencedetect删除音频静音
  5. 华为交换机学习指南基于端口划分VLAN的四种方案
  6. 魔乐MLDN李兴华主讲Oracle视频教程
  7. 洛谷P2525 Uim的情人节礼物·其之壱(组合数学/上一个全排列/下一个全排列)
  8. oracle练习(mldn视频课程)四
  9. Allegro学习笔记:Allegro快速入门之一--查看BRD Layout
  10. 模拟集成电路设计初学系列