首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在使用OpenType特性的Java/Clojure包含文本中生成图像

在使用OpenType特性的Java/Clojure包含文本中生成图像
EN

Stack Overflow用户
提问于 2015-11-15 21:46:32
回答 2查看 710关注 0票数 2

我正在尝试使用Java/Clojure生成一个映像,它主要由文本组成,使用带有opentype特性的自定义字体。我尝试使用Java中当前的OTF字体支持,甚至升级到oracle 8,并将TextAttribute连接设置为On,但没有帮助。有人能就什么是可能的提供建议吗。

注意,我需要确定字体大小,线高度和图像宽度的能力,所以我不确定是否可以在这种情况下使用TEX。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-11-17 04:14:29

我相信Java端的答案在这个SO question中得到了回答。但是我对Clojure做了一个翻译,因为java有点棘手。请注意,ImageIO/ gets采用的是BufferedImage实例,而不是Graphics2D,在整个程序中,image都使用Graphics2D实例进行变异。

代码语言:javascript
复制
(ns so-33725486.core
  (:import [java.awt Graphics2D Color Font]
           [java.awt.image BufferedImage]
           [javax.imageio ImageIO]
           [java.io File]))

(defn str->img [string filename]
  (let [file (File. (str "./" filename ".png"))
        width 250
        height 100
        image (BufferedImage. width height BufferedImage/TYPE_INT_ARGB)
        graphics (.createGraphics image)
        font-size 30
        font (Font. "TimesRoman" Font/BOLD font-size)]
    (.setColor graphics Color/BLACK)
    (.setFont graphics font)
    (.drawString graphics string 10 25)
    (ImageIO/write image "png" file)))  
票数 3
EN

Stack Overflow用户

发布于 2015-11-16 20:55:02

我知道OTF的知识,但是对于一个快速而肮脏的解决方案,如何使用幻影来生成PNG呢?如果您的项目可以将其作为依赖项,则可以使用本机解决方案。

我也发现了这个,也许有什么东西给你敲响了警钟:https://github.com/jfacorro/clojure-lab

编辑:你也可以使用.html:它是一个Java库,所以你可以在你的项目中使用它,或者如果创建图像是你的应用程序的主要目的,直接使用处理--一个快速创建处理图像的原型/应用程序的良好环境。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33725486

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档