欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

基于Java的MathML轉(zhuǎn)圖片的方法(示例代碼)

 更新時間:2021年06月23日 11:10:45   作者:布禾  
最近接到一個新需求mathML轉(zhuǎn)圖片怎么實現(xiàn)呢?剛開始還真是蒙圈了,不知道怎么實現(xiàn),今天小編記錄一種基于Java的MathML轉(zhuǎn)圖片的方法,感興趣的朋友一起看看吧

Maven依賴:

<dependency>
	<groupId>de.rototor.jeuclid</groupId>
	<artifactId>jeuclid-core</artifactId>
	<version>3.1.14</version>
</dependency>

示例:

@Test
public void testMathMlToImg() throws IOException {
	//MathML字符串
	String mathStr = "<math xmlns=\"http://www.w3.org/1998/Math/MathML\">\n" +
			"        <mi>f</mi>\n" +
			"            <mo>(</mo>\n" +
			"            <mi>x</mi>\n" +
			"            <mo>)</mo>\n" +
			"            <mo>&gt;</mo>\n" +
			"            <mfrac>\n" +
			"                <msqrt>\n" +
			"                    <mn>2</mn>\n" +
			"                </msqrt>\n" +
			"                <mn>8</mn>\n" +
			"            </mfrac>\n" +
			"            <mo>+</mo>\n" +
			"            <mn>1</mn>\n" +
			"        </math>";
	//創(chuàng)建轉(zhuǎn)換器
	Converter converter = Converter.getInstance();
	//創(chuàng)建layoutContext并設(shè)置相關(guān)參數(shù)
        //參數(shù)設(shè)置可以參考net.sourceforge.jeuclid.context.Parameter類
        //參數(shù)默認(rèn)值可以參考LayoutContextImpl類構(gòu)造方法
	LayoutContextImpl layoutContext = (LayoutContextImpl) LayoutContextImpl.getDefaultLayoutContext();
	//設(shè)置公式字體大小,默認(rèn)12.0pt
	layoutContext.setParameter(Parameter.MATHSIZE, 30);
	//設(shè)置公式顏色,默認(rèn)黑色
	layoutContext.setParameter(Parameter.MATHCOLOR, Color.RED);
	//轉(zhuǎn)換
	Dimension dimension = converter.convert(mathStr, new FileOutputStream("f:/1.png"), "image/png", layoutContext);
	if(dimension != null){
		System.out.println("圖片轉(zhuǎn)換成功!高:" + dimension.getHeight() + " 寬:" + dimension.getWidth());
	}
}

輸出結(jié)果:

圖片轉(zhuǎn)換成功!高:70.0 寬:149.0

轉(zhuǎn)換結(jié)果如下:

關(guān)于outFileType參數(shù)的取值,支持以下幾種:

image/png
image/vnd.wap.wbmp
image/x-png
image/jpeg
image/tiff
image/bmp
image/gif

以上就是基于Java的MathML轉(zhuǎn)圖片的方法(示例代碼)的詳細(xì)內(nèi)容,更多關(guān)于Java MathML轉(zhuǎn)圖片的資料請關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • 關(guān)于Java中反射的作用義及使用方法

    關(guān)于Java中反射的作用義及使用方法

    這篇文章主要介紹了關(guān)于Java中反射的作用義及使用方法,反射使得程序可以在運行時對類進(jìn)行檢查和操作,而不需要在編譯時知道類的完整信息,需要的朋友可以參考下
    2023-07-07
  • springcloud集成nacos?使用lb?無效問題解決方案

    springcloud集成nacos?使用lb?無效問題解決方案

    這篇文章主要介紹了解決springcloud集成nacos?使用lb?無效,通過查看spring-cloud-starter-gateway?jar中的自動配置類的源碼,得知,該jar包中是不支持負(fù)載均衡的,需要引入spring-cloud-starter-loadbalancer?來支持,需要的朋友可以參考下
    2023-04-04
  • 使用Java構(gòu)造和解析Json數(shù)據(jù)的兩種方法(詳解二)

    使用Java構(gòu)造和解析Json數(shù)據(jù)的兩種方法(詳解二)

    這篇文章主要介紹了使用Java構(gòu)造和解析Json數(shù)據(jù)的兩種方法(詳解二)的相關(guān)資料,需要的朋友可以參考下
    2016-03-03
  • mybatis Map查詢結(jié)果下劃線轉(zhuǎn)駝峰的實例

    mybatis Map查詢結(jié)果下劃線轉(zhuǎn)駝峰的實例

    這篇文章主要介紹了mybatis Map查詢結(jié)果下劃線轉(zhuǎn)駝峰的實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-09-09
  • java web手寫實現(xiàn)分頁功能

    java web手寫實現(xiàn)分頁功能

    這篇文章主要為大家詳細(xì)介紹了java web手寫實現(xiàn)分頁功能的方法,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-02-02
  • Java 超詳細(xì)講解hashCode方法

    Java 超詳細(xì)講解hashCode方法

    在 Java 應(yīng)用程序執(zhí)行期間,在同一對象上多次調(diào)用 hashCode 方法時,必須一致地返回相同的整數(shù),前提是對象上 equals 比較中所用的信息沒有被修改。從某一應(yīng)用程序的一次執(zhí)行到同一應(yīng)用程序的另一次執(zhí)行,該整數(shù)無需保持一致
    2022-04-04
  • java實現(xiàn)選課系統(tǒng)

    java實現(xiàn)選課系統(tǒng)

    這篇文章主要為大家詳細(xì)介紹了java實現(xiàn)選課系統(tǒng),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2019-02-02
  • Spring Boot 2.X 快速集成單元測試解析

    Spring Boot 2.X 快速集成單元測試解析

    這篇文章主要介紹了Spring Boot 2.X 快速集成單元測試解析,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2019-08-08
  • 解析Java中的定時器及使用定時器制作彈彈球游戲的示例

    解析Java中的定時器及使用定時器制作彈彈球游戲的示例

    這篇文章主要介紹了Java中的定時器及使用定時器制作彈彈球游戲的示例,文中同時也分析了定時器timer的缺點及相關(guān)替代方案,需要的朋友可以參考下
    2016-02-02
  • 淺談DetachedCriteria和Criteria的使用方法(必看)

    淺談DetachedCriteria和Criteria的使用方法(必看)

    下面小編就為大家?guī)硪黄獪\談DetachedCriteria和Criteria的使用方法(必看)。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-05-05

最新評論