Ajax Wicket和SVG-是否存在任何组件?
SVG DOM可以用JavaScript控制,所以它可以支持AJAX。。。我想知道Wicket是否有一些SVG组件。如果Wicket可以使用纯Ajax Wicket和SVG-是否存在任何组件?,ajax,svg,components,wicket,Ajax,Svg,Components,Wicket,SVG DOM可以用JavaScript控制,所以它可以支持AJAX。。。我想知道Wicket是否有一些SVG组件。如果Wicket可以使用纯xml/svg作为输出格式 快速谷歌搜索只显示一个。我不知道构建了哪些组件,但Wicket肯定可以将xml/svg作为输出格式,而且制作一个呈现svg的页面非常简单 简单示例代码: public class Rectangle extends Page { @Override public String getMarkupType() {
xml/svg
作为输出格式
快速谷歌搜索只显示一个。我不知道构建了哪些组件,但Wicket肯定可以将
xml/svg
作为输出格式,而且制作一个呈现svg的页面非常简单
简单示例代码:
public class Rectangle extends Page {
@Override
public String getMarkupType() {
return "xml/svg";
}
@Override
protected void onRender(MarkupStream markupStream) {
PrintWriter writer = new PrintWriter(getResponse().getOutputStream());
writer.write(makeRectangleSVG());
writer.flush();
writer.close();
}
private String makeRectangleSVG() {
return "<?xml version=\"1.0\" standalone=\"no\"?>\n" +
"<!DOCTYPE svg PUBLIC \"-//W3C//DTD SVG 1.1//EN\"\n" +
"\"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd\">\n" +
"\n" +
"<svg width=\"100%\" height=\"100%\" version=\"1.1\"\n" +
"xmlns=\"http://www.w3.org/2000/svg\">\n" +
"\n" +
"<rect width=\"300\" height=\"100\"\n" +
"style=\"fill:rgb(0,0,255);stroke-width:1;\n" +
"stroke:rgb(0,0,0)\"/>\n" +
"\n" +
"</svg> ";
}
}
公共类矩形扩展页面{
@凌驾
公共字符串getMarkupType(){
返回“xml/svg”;
}
@凌驾
受保护的void onRender(MarkupStream MarkupStream){
PrintWriter writer=新的PrintWriter(getResponse().getOutputStream());
write(makeRectangleSVG());
writer.flush();
writer.close();
}
私有字符串makeRectangleSVG(){
返回“\n”+
“\n”+
“\n”+
“\n”+
“\n”+
“\n”+
“\n”+
" ";
}
}
如果您将其映射为可书签页面并调用它,它确实会显示一个可爱的蓝色矩形,正如硬编码svg(从W3S示例中偷来的)。当然,您可以轻松地将页面参数化并生成svg,而不只是发送一个常量字符串
我想基于
对象标记构建一个组件也不难,这样svg就可以显示为html页面的一部分,而不是整个页面,但我还没有尝试过这样做。我不知道您是否还需要wicket svg库。但我已经在github启动了一个项目,提供wicket组件来使用svg
点击此链接:感谢您在提出问题+1感谢之前搜索并做了一些研究,但我指的是一些利用Wicket事件处理用户行为的组件。对于“手工生成的”xml/svg
输出,我宁愿使用简单的servlet。我希望使用Wicket来实现您所追求的,您仍然希望类似于此,但作为一个基于对象标记并在用户事件上重绘的组件。我不认为他们已经在那里了。请在参考链接之前提供摘要。