精华内容
下载资源
问答
  • 这两天用jrobin画图,发现中文标题一直显示不出来。java应用程序的中文会变成一个一个的“口”字. 产生这个问题的原因。java程序启动的时候会去在$JAVA_HOME/jre/lib/fonts目录下寻找相应的字体来显示。由于 ...

    这两天用jrobin画图,发现中文标题一直显示不出来。java应用程序的中文会变成一个一个的“口”字.

    产生这个问题的原因。java程序启动的时候会去在$JAVA_HOME/jre/lib/fonts目录下寻找相应的字体来显示。由于 JDK默认没有中文字体,所以我们需要手工的来设置一下,让java应用程序能够找到相应的中文字体。这样就能够解决问题了。

     

    网传的办法:

     基本步骤如下:

      1)cd $JAVA_HOME/jre/lib/fonts

      2)mkdir fallback

      3)cp xxx.ttf fallback #xxx.ttf代表你想要的中文字体文件, 并设置文件可读

    $sudo cp 字体路径/simhei.ttf      fallback/

    $sudo cp 字体路径 /simsun.ttc   fallback/

    $sudo chmod -R 644 fallback 

      4)cd fallback

      5)mkfontscale

      6)mkfontdir

    这个时候就会在fallback目录下生成fonts.dir 和fonts.scale 文件,再将fonts.scale的内容追加到父目录的fonts.dir (如果不存在直接创建 touch ../fonts.dir ),  

     

    $cat fonts.scale >> ../fonts.dir 

     

    到这里应该就可以了,如果还不行的话fc-cache刷新一下字体缓存。

      其实,我们可以一条命令解决这个问题。将Linux系统的字体目录作为JDK下面的一个字体目录连接。

      ln -s $FONTS_PATH/FONT_DIR $JAVA_HOME/jre/lib/fonts/fallback

      你在打开你的java应用程序就会看到久违的中文了。

     

    在我的环境下:

    vim /usr/lib/jvm/java-1.6.0-openjdk-1.6.0.0.x86_64/jre/lib/fontconfig.properties.src

    (或者你的$JAVA_HOME下面)

     

     

    # Version
     
    # Uses Fedora Core 6 fonts and file paths.
    version=1
    
    # Component Font Mappings
    
    monospaced.plain.chinese-big5=AR PL ShanHeiSun Uni
    monospaced.plain.chinese-gb18030=AR PL ShanHeiSun Uni
    
    # Font File Names
    
    filename.AR_PL_ShanHeiSun_Uni=/usr/share/fonts/chinese/TrueType/uming.ttf
    filename.AR_PL_ZenKai_Uni=/usr/share/fonts/chinese/TrueType/ukai.ttf

     

    然后ll /usr/share/fonts/chinese/TrueType/ukai.ttf

    两个文件都不存在。

     

    然后从网上下载了 uming.ttc和ukai.ttc,分别改后缀 ttc为ttf

     

    然后重启tomcat

     

    jrobin显示中文成功!!

     

     

    总结~~

    刚开始网上查找一通,由于各自环境和配置不一样,始终找不到答案。

    然后沉下去看配置文件,终于自己发现了问题所在。

     

     

    ===========================================

    另外,之前还遇到一个问题是:

    jrobin 在生成图片时报Could not initialize class sun.awt.X11GraphicsEnvironment的异常,但在window下却又可显示的。

    原因是没是加载java.awt.headless,于是修改${TOMCAT_HOME}/bin/catalina.sh

     

    网上找解决方案:

     

    一、查到-Djava.io.tmpdir="$CATALINA_TMPDIR"这行,并在这一行下加入:-Djava.awt.headless=true \共有七处的。修改好保存再重启即可

     

     

    二、在catalina.sh里加上一句 “CATALINA_OPTS=-Djava.awt.headless=true”,问题解决。

     

     

    set CATALINA_OPTS = " -Djava.awt.headless=true"

    export CATALINA_OPTS

    展开全文
  • 原因:首先,Linux环境下的JFreeChart和中文验证码的乱码问题和jsp的编码无关,是由于Java虚拟机找不到字体文件造成的,必须配置jdk下的中文字库文件 环境: JDK1.5(JDK版本很重要,如果是1.4.2版本的话,JRE目录下的...
    原因:首先,Linux环境下的JFreeChart和中文验证码的乱码问题和jsp的编码无关,是由于Java虚拟机找不到字体文件造成的,必须配置jdk下的中文字库文件
    

    环境:
    JDK1.5(JDK版本很重要,如果是1.4.2版本的话,JRE目录下的字体配置文件不大一样)
    RedHat4.0
    Tomcat5.5

    解决方法:
    1.确认%JavaHome%/jre/lib/fonts目录下存在zysong.ttf
    2.在%JavaHome%/jre/lib/fonts目录下执行"ttmkfdir -o fonts.dir"命令,重新生成fonts.dir文件
    3.确认/usr/share/fonts/zh_CN/TrueType目录存在,如果不存在则mkdir创建
    4.确认/usr/share/fonts/zh_CN/TrueType目录下存在zysong.ttf
    5.在%JavaHome%/jre/lib目录下,执行 cp fontconfig.RedHat.3.properties.src fontconfig.properties
    6.重新启动tomcat,大功告成!

    需要下载zysong.ttf 如果这种字体装了没效果的话,那就要同时在步骤1和步骤3同时拷贝zysong.ttf和simsun.ttf. simsun.ttf是直接在windows下的c:\windows\fonts下找到simsun.ttc 改名为simsun.ttf即可。
    展开全文
  • 现在改用linux 虚拟主机,之前用的是window主机,有很多图片中文命名的,现在怎样调用不出来,怎么办? 有没有不用手动修改文件的方法处理。 ![图片说明]...
  • Linux的虚拟终端(tty)实现中文显示和中文输入 前言 因为Linux系统的tty好像是不能直接支持中文显示的,所以...先要安装fbterm,才能在tty下显示中文字符,而且只有进入了fbterm,才能切换中文 aptitude install ...

    Linux的虚拟终端(tty)实现中文显示和中文输入以及图片查看

    前言

    因为Linux系统的tty好像是不能直接支持中文显示的,所以要在另外一个程序中运行tty,我的操作系统是kali-linux5.4.0,基于debian的发行版,所以应该会ubuntu、debian是一样的操作

    1.先要安装fbterm,才能在tty下显示中文字符,而且只有进入了fbterm,才能切换中文

    aptitude install fbterm
    如果你的linux版本的库里面没有fbterm,请参考该文章

    安装好后,直接在tty界面下输入fbterm就可以进入

    2.安装yong输入法

    直接百度搜索小小输入法(就是yong输入法),下载压缩包,解压
    住:7z文件的解压命令:7za x 你的压缩文件明 -r -o/xxx/xxx
    x代表压缩文件,并且按原始目录解压,-r代表递归解压缩所有子文件夹,-o指定目录,-o后面没有空格,直接接目录
    进入到解压好的文件目录
    运行yong-tool.sh即可
    ./yong-tool.sh --install

    相关的参数
    –install
    –uninstall
    –select

    安装好了之后,注销一下重新进入,终端输入:

    yong &
    让其在后台运行

    或者在这个目录下添加一个可执行文件,名称随意

    /etc/X11/Xsession.d

    里面的内容就是yong &

    注:yong输入法不能在xfce4的终端下运行,但是可以在fbterm虚拟终端下运行,运行yong输入法时不能切换ibus输入法工具,所以要切换回原来的ibus,需要卸载yong输入法,注销后重新登录

    ./yong-tool.sh --uninstall

    需要用到yong输入法时,重新安装、登录即可。

    3.安装fbv可以在tty下查看图片,支持多张图片查看(fbterm下不能使用fbv,因为fbterm不是tty)

    fbv xxx.png xxx.jpeg

    我这里写出安装fbv的坑,后来人可以借鉴以下!!!

    下载安装fbv压缩包的网址——>s-tech.elsat.net.pl/fbv

    1.安装fbv时需要几个依赖工具

    可以在解压后的包里面参考这个

    cat README
    里面有这样几段话
    2. REQUIREMENTS
    Linux, configured to provide the framebuffer device interface
    (/dev/fb0 or /dev/fb/0)
    libungif for GIF support
    libjpeg for JPEG support
    libpng for PNG support

    • 第一个插件 libungif:
      我用的kali5.4.0系统,刚开始用apt直接安装libungif-bin,发现fbv在运行./configure的时候是没有检测到libungif的,所以要从源安装,在这里去下载tar.gz文件,安装过程不再赘述
    • 第二个插件libjpeg
      直接apt安装即可,aptitude install libjpeg-dev
    • 第三个插件libpng
      aptitude install libpng-dev,然后还有一个必然的插件libpng16-16
      。注:这里开始出现了坑

    2.开始安装fbv

    安装好上三个插件后再运行./configure发现都支持了,然后运行make指令
    这时候据出现了错误,导致编译失败

    error: dereferencing pointer to incomplete type
    if (setjmp (png_ptr->jmpbuf))
                                     ^

    并且问题是出在png.c这个源文件的if (setjmp (png_ptr->jmpbuf))语句,报错类型是指针指向不完整的结构类型,作为一个程序员就要找到原因所在:

    首先查看png_ptr这个指针的定义,看到这个指针的在每个函数的声明为:
    png_structp png_ptr;
    在vim里面搜索png_structp的定义,发现没有,但是在包含头文件中有这一行
    #include<png.h>;包含了这样一个库函数,这些库函数所在的文件目录为/usr/include这个文件夹中
    所以我们去看一下png.h这个头文件中是不是png_structp这个结构体不完整
    结果发现这个头文件有对png_structp的模板定义,
    所以猜测是不是png_ptr这个png_structp的指针没有jmpbuf成员,
    所以在png.h中搜索jmpbuf,发现了这个宏定义,是这样的:
    #define png_jmpbuf(png_ptr)

    好的,问题就出在这里,我们之前下的libpng库是——>libpng16-16,如果系统是之前的下的是libpng12-dev不会出现这个问题,最新的libpng16对jmpbuf重新定义了一下,而fbv已经很久没有更新了所以我们需要把解压后的fbv文件夹中的png.c中的所有if(setjmp (png_ptr->jmpbuf))改成png.h中定义的指针调用改成即可:

    if(setjmp(png_jmpbuf(png_ptr)))

    注:png_ptr是在png.c中定义的结构指针,名字可能随着以后fbv的更新而有所不同哦(但开发人员应该不会去改),程序员自己细品

    现在重新make,发现成功了,然后make install即可,结束!!!

    更新

    安装fbgrab在tty下可以截图

    aptitude install fbgrab

    注:fbgrab只能在tty下截图,比如fbgrab -c 1 xxx.png,-c表示选择第几个tty,这里是tty1

    参考博客

    展开全文
  • 因为Linux JDK7不支持中文,解决的办法如下:进入JDK安装目录cd $JAVA_HOME/jre/lib/fonts并切换至该文件夹,建立fallback文件夹,mkdir fallback上传字体文件到该目录下。【字体文件可以在C:\Windows\Fonts目录下找】...

    因为Linux JDK7不支持中文,解决的办法如下:

    进入JDK安装目录

    cd $JAVA_HOME/jre/lib/fonts

    并切换至该文件夹,建立fallback文件夹,

    mkdir fallback

    上传字体文件到该目录下。

    【字体文件可以在C:\Windows\Fonts目录下找】如:simhei.ttf 黑体;simsun.ttf 宋体

    展开全文
  • linux下用freetype2显示汉字

    热门讨论 2012-08-23 18:05:19
    本人在工作实践中写的一个汉字显示程序,在linux平台下,利用frambuffer显示设备来显示。用freetype2库来显示矢量汉字。程序带有汉字对齐、加粗、自动换行等功能。对于freetype2和frambuffer入门很有帮助。本程序...
  • java——图片字体显示方块问题处理 /usr/java/jdk1.7.0_80/jre/lib/fonts/fallback msyhbd.ttf msyh.ttf wqy-microhei.ttf /usr/java/jdk1.7.0_80/lib/fonts/fallback msyhbd.ttf msyh.ttf wqy-microhei.ttf
  • 实验楼Python 个人项目中数据分析前端展示的一个方案是前端请求时后端利用matplotlib动态生成所需要的图片返回给前端, matplotlib默认不支持中文字体显示,所以在遇到中文时无法显示。 导入中文字体文件就可以解决...
  • 因为LinuxJDK6不支持中文,解决的办法如下: 进入JDK安装目录 #cd$JAVA_HOME/jre/lib/fonts 建立fallback文件夹,并切换至该文件夹 #mkdirfallback 上传字体文件到该目录下【字体文件可以在C:\Windows\Fonts目录...
  • linux下java生成图片中文乱码

    千次阅读 2019-08-11 23:26:15
    应用场景:java生成图片图片上的中文乱码或者文字部分缺失 操作步骤如下: 检查linux下已安装的字体 查看所有字体命令: fc-list 查看中文字体命令: fc-list :lang=zh 如果返回: -bash: fc-list: command ...
  • 本地Windows上运行没问题,在服务器上运行一直显示中文是方框 前提是你的服务器要有图形界面,因为不管你是plt.show()还是plt.savefig()都是会调用图形界面的哦 搜索后大多数都说中加入如下代码 但是我加了之后...
  • linux图片字体
  • 在tomcat 中配置了URIEncoding='UTF-8'解决我们项目中到中文显示问题 [code="xml"] [/code]
  • 文章目录前言一、问题描述和原因二、linux添加中文字体 前言 代码都上传到GitHub了,这里仅仅是贴出来主要部分,GitHub传送门:https://github.com/fengfanli/draw_poster_echarts 海报制作的所有博客和一些问题: ...
  • JFreeChart在Linux图片显示

    千次阅读 2008-10-24 11:43:00
    原来在windows部署下显示正常的用jfreechart做的统计图,可移植到linux下却显示不出来,是因为jfreechart的在linux系统中需要访问java awt库提供的图形功能,而linux下的绝大多数版本的java awt类库都需要x server...
  • window环境下测试都没问题, 代码更新到linux服务器上, 发现生成图片中文字体不显示?   2.分析: ( 相关代码如下 )       跟linux系统有关系? 最后查找发现是Linux服务器上没有...
  • 解决linux中文文件名显示乱码问题

    千次阅读 2019-12-29 20:31:32
    解决linux中文文件名显示乱码问题
  • 最近使用Java将字体写到图片上时遇到了一个问题,写文字的时候英文字母可以正常写上,而中文却消失了,由于我本地代码是在Windows环境下运行的,而上传到服务器是在Linux环境下运行的,在本地的图片和文字可以正常...
  • 问题描述:svg文件正常显示中文,转换图片文件出现乱码,且仅在部分环境下异常 问题解决:查看操作系统,发现缺少中文字符集,查看/etc/sysconfig/i18n 配置发现仅支持英文。 Linux配置中文字符集 1、安装中文包:...
  • java代码, Windows测试正常, Linux显示为 '口', 因为Linux没有"宋体"的字体包 // 姓名 Font font = new Font("宋体", 1, 36); 解决: 找到Windows的"宋体"字体包: 显示叫 "宋体 常规", 实际路径为 C:\Windows...
  • 利用opencv显示图片,并在图片显示汉字,解决了opencv中只能显示字符的缺陷,具有一定的借鉴意义
  • google了N多资料,终于找到了一篇能解决问题的文章:... 把windows系统下的WINDOWS/Fonts路里的宋体字库文件 simsun.ttc 拷贝到linux系统的java_home/jre/lib/fonts/下。 2. 修改项目里生成图片的代码:在ChartU
  • 而需要用到是宋体等中文字体时,JVM找不到相关字体文件,所以会显示乱码,解决方法如下。 方法一: 复制所使用的中文字体文件(如simsun.ttc)到此目录中(如果没有fallback目录,请手动建立。) $JAVA_HOME/jre/lib...
  • ![图片说明](https://img-ask.csdn.net/upload/201712/22/1513914227_320390.png)
  • 我遇到的问题是,在window把HTML可以转换图片,但是在Linux上面就不行,查了几天,原来环境问题解决方案如下: 1)要设置 LANG=en_US.utf-8 2)需要2个jar包,放在Java的jre下面(jdk/jre/lib/fonts) 字体 ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 37,953
精华内容 15,181
关键字:

linux显示中文图片

linux 订阅