你想要一个现有的程序 允许您绘制图片,捕获 你在绘画时写的是什么 每个动作都是Java命令。什么时候 你单击“Drawl椭圆”工具和 点击0,0然后点击50,50 会产生这条线 g.drawOval(0,0,50,50)。
如果有人知道这样的节目,请告诉我。感谢。
原始问题:
我最近使用java.awt.Graphics库一直在使用Java和自定义绘图,但发现手动编写需要花费太多时间。是否有任何简单的图形编辑器(如mspaint)生成源代码?
示例:
画出这个:
会生成:
public void update(Graphics g) {
g.translate(0, 0);
g.drawOval(0, 0, 50, 50);
}
感谢。
答案 0 :(得分:14)
如果它们是向量,您可以使用SVG编辑器(例如,Inkscape)和Kirill's SVG to Java2D Transcoder来简化此操作。这并不完美,但Kirill在回应增强请求时非常敏感。
答案 1 :(得分:3)
目前还不清楚你在问什么。两个猜测:
您需要一个现有程序,它允许您绘制图片,捕获您在绘制时执行的操作,并将每个操作写为Java命令。当您单击“Drawl Oval”工具并单击0,0然后单击50,50时,它将生成行g.drawOval(0,0,50,50)
。
我不知道任何这样的工具。但上述内容可能会帮助您重新提出问题,以便其他人可以分享他们的知识。
您需要一个程序,它接受现有的位图并将其转换为一系列将复制位图的命令。除了简单地输出像素之外,这样的工具几乎不可能写入;试图将任意图片分解为简单的绘图命令非常困难。
在这种情况下,我建议只需将位图导入为JPG,PNG等等,并使用drawImage()而不是使用Graphics调用。
答案 2 :(得分:0)
虽然不是你想要的,但我应该提到XPM(X Pixmap)格式基本上是C编程语言的一个子集。 XPM2通过删除C语法的特征来简化它。 XPM3再次将它们带回来。
从某种意义上说,XPM图像转换器是源代码生成器和转换器。 你正在寻找类似于输出Java AWT的东西,但是对于许多真实的图像或照片来说,对图像进行分析以找到椭圆等会很复杂,并创建用线条和形状绘制它们的代码(除非图像有应用过滤器来简化它,或者是某人指出的SVG)。它可能必须转换为某种形式的位图,并将其保存在生成的Java源代码中的数组中。