Java Image Editor, который отображает вывод как исходный код?
Алекс объяснил, что я ищу гораздо лучше, чем у меня есть:
Вам нужна существующая программа, которая позволяет рисовать картинку, записывает, что вы делаете во время рисования, и записывает каждое действие в виде команды Java. Если щелкнуть инструмент "Drawl Oval" и щелкнуть 0,0, а затем 50,50, будет сгенерирована строка g.drawOval(0,0,50,50).
Если кто-нибудь знает о такой программе, дайте мне знать. Благодарю.
Оригинальный вопрос:
В последнее время я работал с Java и пользовательским рисованием с использованием библиотеки java.awt.Graphics, но обнаружил, что для написания вручную требуется слишком много времени. Есть ли простой графический редактор (например, mspaint), который генерирует исходный код?
Пример:
Рисование этого:
Будет генерировать:
public void update(Graphics g) {
g.translate(0, 0);
g.drawOval(0, 0, 50, 50);
}
Благодарю.
3 ответа
Если они являются векторами, вы можете использовать SVG Editor (например, Inkscape) вместе с транскодером SVG to Java2D Кирилла, чтобы упростить это. Это не идеально, но Кирилл очень отзывчив на ответы на запросы об улучшении.
Непонятно, о чем вы спрашиваете. Две догадки:
Вам нужна существующая программа, которая позволяет рисовать картинку, записывает, что вы делаете во время рисования, и записывает каждое действие в виде команды Java. Если щелкнуть инструмент "Drawl Oval" и щелкнуть 0,0, а затем 50,50, получится линия
g.drawOval(0,0,50,50)
,Я не знаю ни одного такого инструмента. Но вышеизложенное может помочь вам переформулировать ваш вопрос, чтобы другие могли поделиться своими знаниями.
Вам нужна программа, которая берет существующее растровое изображение и преобразует его в серию команд, которые будут реплицировать растровое изображение. Помимо простого вывода пикселей, такой инструмент практически невозможно написать; попытка разложить произвольную картинку на простые команды рисования очень трудна.
В этом случае я бы рекомендовал просто импортировать растровое изображение в формате JPG, PNG и т. Д. И использовать drawImage() вместо использования графических вызовов.
Хотя это и не то, что вы искали, я должен упомянуть, что формат XPM (X Pixmap) является в основном подмножеством языка программирования C. XPM2 упростил его, удалив атрибуты синтаксиса C. XPM3 вернул их снова.
В некотором смысле преобразователи изображений XPM являются генераторами и переводчиками исходного кода. Вы ищете что-то похожее на вывод Java AWT, но для многих реальных изображений или фотографий было бы сложно выполнить анализ изображения, чтобы найти овал и т. Д., И создать код для рисования их с помощью линий и форм (хорошо, если изображение не имело фильтры применялись, чтобы упростить это, или был SVG, как кто-то указал). Вероятно, придется преобразовать в растровое изображение какой-либо формы и сохранить его в массиве в сгенерированном исходном коде Java.