package gutenberg.jlatexmath;
import gutenberg.TestSettings;
import org.junit.Before;
import org.junit.Test;
import org.scilab.forge.jlatexmath.TeXConstants;
import org.scilab.forge.jlatexmath.TeXFormula;
import org.scilab.forge.jlatexmath.TeXIcon;
import javax.imageio.ImageIO;
import java.awt.Color;
import java.awt.Graphics;
import java.awt.Graphics2D;
import java.awt.Image;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;
/**
* @author <a href="http://twitter.com/aloyer">@aloyer</a>
*/
public class TeXFormulaTest {
private TestSettings settings;
@Before
public void setUp() {
settings = new TestSettings();
}
@Test
public void generate_image() throws IOException {
String formula = "" +
"\\Re{z} =\\frac{n\\pi \\dfrac{\\theta +\\psi}{2}}{\n" +
" \\left(\\dfrac{\\theta +\\psi}{2}\\right)^2 + \\left( \\dfrac{1}{2}\n" +
" \\log \\left\\vert\\dfrac{B}{A}\\right\\vert\\right)^2}.";
TeXFormula.setDPITarget(600);
BufferedImage image = (BufferedImage)TeXFormula.createBufferedImage(formula, TeXConstants.STYLE_DISPLAY, 14f, Color.BLUE, Color.WHITE);
File output = new File(settings.workingDir(), "TeXFormulaTest__generate_image.png");
ImageIO.write(image, "png", output);
System.out.println("TeXFormulaTest.generate_image::" + output.getAbsolutePath());
}
@Test
public void generate_image_from_icon() throws IOException {
String formula = "" +
"\\Re{z} =\\frac{n\\pi \\dfrac{\\theta +\\psi}{2}}{\n" +
" \\left(\\dfrac{\\theta +\\psi}{2}\\right)^2 + \\left( \\dfrac{1}{2}\n" +
" \\log \\left\\vert\\dfrac{B}{A}\\right\\vert\\right)^2}.";
TeXFormula teXFormula = new TeXFormula(formula);
TeXIcon teXIcon = teXFormula.createTeXIcon(TeXConstants.STYLE_DISPLAY, 14f);
BufferedImage image = new BufferedImage(teXIcon.getIconWidth(), teXIcon.getIconHeight(), BufferedImage.TYPE_INT_ARGB);
Graphics2D g2 = (Graphics2D)image.getGraphics();
teXIcon.paintIcon(null, g2, 0, 0);
g2.dispose();
File output = new File(settings.workingDir(), "TeXFormulaTest__generate_image_from_icon.png");
ImageIO.write(image, "png", output);
System.out.println("TeXFormulaTest.generate_image_from_icon::" + output.getAbsolutePath());
}
}