所以我正在尝试学习如何在FXML中使用svg,我想要做的第一件事就是绘制一条简单的线条,然后按照自己的方式处理其他形状。从我在网上收集的内容来看,我所要做的就是给它一个动作点,然后是一个线点。如果是这样,那么我错过了什么?
<Button prefHeight="30" prefWidth="200" >
<shape>
<javafx.scene.shape.SVGPath content="M100,100 L150,150" />
</shape>
</Button>
答案 0 :(得分:1)
示例解决方案
<?xml version="1.0" encoding="UTF-8"?>
<?import javafx.scene.paint.*?>
<?import javafx.scene.layout.*?>
<?import java.lang.*?>
<?import javafx.scene.shape.*?>
<Pane maxHeight="-Infinity" maxWidth="-Infinity" minHeight="-Infinity" minWidth="-Infinity" prefHeight="86.0" prefWidth="99.0" xmlns="http://javafx.com/javafx/8" xmlns:fx="http://javafx.com/fxml/1">
<children>
<SVGPath content="M40,60 L20,20" layoutX="18.0" layoutY="2.0" stroke="BLACK" strokeWidth="3.0" />
</children>
</Pane>
背景
您可以参考此tutorial on svg paths获取背景信息(注意JavaFX仅处理路径字符串而不是完整的svg XML文档)。