Как распечатать SwingNode с помощью JavaFX printJob?
Я пытаюсь напечатать кадр, содержащий кнопку поворота, используя следующий код. Кнопки javafx печатаются, но не кнопки поворота. Здесь нет исключений. Я могу печатать кнопки Javafx, но не могу печатать JButoon.
public class PrintWindow extends Application {
@Override
public void start(Stage stage) throws Exception {
final AnchorPane root = new AnchorPane();
HBox hbox = new HBox();
hbox.setPadding(new Insets(15, 12, 15, 12));
hbox.setSpacing(10);
hbox.setStyle("-fx-background-color: #336699;");
Button buttonCurrent = new Button("Current");
buttonCurrent.setPrefSize(100, 20);
Button buttonProjected = new Button("Print");
buttonProjected.setPrefSize(100, 20);
final SwingNode swingNode = new SwingNode();
swingNode.setContent(new JButton("JButton"));
hbox.getChildren().addAll(buttonCurrent, buttonProjected, swingNode);
root.getChildren().add(hbox);
root.setPrefSize(800, 500);
buttonProjected.setOnAction(new EventHandler<ActionEvent>() {
public void handle(ActionEvent event) {
print(root);
}
});
Scene scene = new Scene(root);
stage.setScene(scene);
stage.setTitle("A Printing Nodes Example");
stage.show();
}
private void print(Node node) {
PrinterJob job = PrinterJob.createPrinterJob();
boolean printed = job.printPage(node);
if (printed) {
job.endJob();
}
}
}
Когда я нажимаю кнопку печати в окне выше, кнопки Current и Print печатают, JButton не печатает.