svg桌面应用程序(一)
- 博客分类:
- java类
在java中显示svg图
下载bakit工程
http://xmlgraphics.apache.org/batik/download.cgi
介绍
http://xmlgraphics.apache.org/batik/index.html
创建svg文档对象
String parser = XMLResourceDescriptor.getXMLParserClassName(); SAXSVGDocumentFactory f = new SAXSVGDocumentFactory(parser); File file = new File("bin/com/longshine/svg/ui/3D.svg"); Document indexDoc = f.createDocument(file.toURL().toString());
在swing面板中加入文档对象显示
JSVGCanvas canvas = new JSVGCanvas();//用于显示svg图 canvas.setBackground(Color.BLACK); canvas.setVisible(true); canvas.setBounds(0, 0, 800, 600); canvas.setDocumentState(JSVGCanvas.ALWAYS_DYNAMIC); canvas.setDocument(indexDoc); this.add(canvas);//swing面板中加入画布
package com.longshine.svg.ui; import java.awt.Color; import java.io.File; import java.io.IOException; import java.net.MalformedURLException; import javax.swing.JFrame; import org.apache.batik.dom.svg.SAXSVGDocumentFactory; import org.apache.batik.swing.JSVGCanvas; import org.apache.batik.util.XMLResourceDescriptor; import org.w3c.dom.Document; public class SVGUIApp extends JFrame{ public void init(){ this.setBounds(0, 0, 800, 600); this.setDefaultCloseOperation(3); this.setVisible(true); String parser = XMLResourceDescriptor.getXMLParserClassName(); SAXSVGDocumentFactory f = new SAXSVGDocumentFactory(parser); File file = new File("bin/com/longshine/svg/ui/3D.svg"); try { Document indexDoc = f.createDocument(file.toURL().toString()); JSVGCanvas canvas = new JSVGCanvas(); canvas.setBackground(Color.BLACK); canvas.setVisible(true); canvas.setBounds(0, 0, 800, 600); canvas.setDocumentState(JSVGCanvas.ALWAYS_DYNAMIC); canvas.setDocument(indexDoc); this.add(canvas); } catch (MalformedURLException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } } public static void main(String[] args){ new SVGUIApp().init(); } }
发表评论
-
java中断线程
2015-05-21 18:29 606Thread.stop方法可能中断线程,但不安全,此方法都 ... -
NIO下载服务器模拟实现(一)
2015-05-21 11:28 0从JDK 1.4开始,Java的标 ... -
java NIO教程
2015-05-18 10:39 0Java NIO提供了与标准IO ... -
Java反射,改变final属性
2015-05-16 16:58 525问: 怎么改变final属性? public cl ... -
直接插入排序
2015-05-09 17:47 537插入排序包括 直接插入排序, 折半插入排序, Shell排序 ... -
曾经的笔试题-- java Cloneable
2015-05-09 10:12 0public class CloneTest { ... -
一个公司的笔试题
2015-05-09 08:02 01.编程题,用两个线程实现对容量为10的队列的加入与取出. ... -
Shell排序
2014-03-26 17:01 0在 -
快速排序
2015-05-09 13:52 338快速排序使用分治法策略来把一个串行分为两个子串行。 步骤 ... -
java 虚拟机加载机制
2014-03-25 10:42 0虚拟机把描述类的数据从class文件加载到内存,并对数据进 ... -
java Class 类
2014-03-25 10:01 0Class对象 是用来创建类的常规对象的,当我们编译一个Ja ... -
成都网丁有限公司面试题
2014-03-24 16:44 0OO OO的原理 值传递与引用传递 ... -
自律编(一) java访问修饰符
2014-03-24 16:23 0一直以为java里只有三种访问修饰符 public, pr ... -
华莱公司笔试
2014-03-12 19:49 0public class Test { publi ... -
sleep与wait
2014-03-03 14:43 0Obj.wait(),与Obj.notify()必须要与syn ... -
线程、进程
2014-03-03 14:39 0线程:程序内部独立运行单位 线程与进程区别: 1 ... -
transient
2014-03-03 13:59 0java语言的关键字,变量修饰符,如果用transient声 ... -
java中关键字volatile的作用
2014-03-03 13:57 0用在多线程,同步变量。 线程为了提高效率,将某成员变量(如A ... -
手机音响(一) java客户端逻辑层
2014-02-17 10:48 0北京科*公司配了一台电脑给我,但没有声音,耳机要连到主机箱 ... -
游戏 压力测试工具
2014-02-14 18:16 0公司让我为游戏做个 压力测试工具 ...
相关推荐
适用苹果,win平台,下载项目 执行打包代码,将应用程序使用,桌面出现可拖动动态时钟,代码简单,可自定义个性化 1、下载代码 2、建立依赖 3、yarn start/npm start 在线运行 4、yarn package/npm package 打包mac...
但在C/S模式程序中大多数语言操作svg文件都比较复杂,进而CeSharp的应用起到了关键作用,CefSharp使得C/S和B/S混合开发动画监控程序既满足了用户需求(桌面程序),又使得svg的操作简单高效(完全按照B/S模式中开发svg动画...
Curve App是使用JavaScript并基于Electron编写的矢量绘图桌面应用程序。 它主要是矢量图形库上的Electron包装器。 注意:这是一个玩具(MVP!),旨在作为Electron应用程序的真实示例。 它具有大多数应用程序所需...
本源码提供了一个基于Vue 3.0的layui-vue桌面端组件库设计。项目包含880个文件,...layui-vue是一个用于桌面端开发的Vue组件库,它包含了各种常用的UI组件和布局,可以帮助开发者快速构建美观、易用的桌面应用程序。
这是MOD界面和后端的正在进行中的桌面应用程序,本机集成在OS中(无需外部Web浏览器)。 它需要mod-host和mod-ui ,您既可以在系统范围内安装它们,也可以作为此存储库的git子模块的一部分来安装。 在基于Debian...
是一个桌面应用程序,可将图像几何化为几何图元。 下载Geometrize,或在浏览器中运行。产品特点将图像重新创建为几何图元。 从数百张具有预设设置的图像开始。 将几何图像导出到SVG,PNG,JPG,GIF等。 将几何图像...
SVG.NET C#SVG渲染库在Codeplex上的公共派生: ://svg.codeplex.com/ 最初,这是一个较小的修改,可以写入正确的SVG字符串。...NET桌面应用程序层用其在浏览器的GUI。 一个基于Posh的时间轴,可由
一个桌面应用程序,用于使用精美且可自定义的模板创建发票。 •••• •••• 屏幕截图 这是Manta的一些屏幕截图。 翻译 你会说多种语言吗? 我们需要您的帮助! 如果您有兴趣翻译Manta,请参阅的。 当前正在...
带有功能徽章计数器和新图标的Google Voice桌面应用(由Nativefier制造)。 徽章计数器显示所有未读项目(文本,呼叫,语音邮件)的总数。 如果有新物品到达,徽章计数器将自动递增。 读取项目后,徽章计数器将自动...
这也给将应用程序迁移到多平台(台式机和Android)造成了困难。 目前,它确实支持桌面中的Android Vector Drawables,允许共享您的矢量。 用例 现在,Compose for Desktop支持android矢量可绘制对象,这意味着创建...
Font Awesome Pro 是一个广泛且多样化的图标集合,专为 Web 开发和桌面应用程序而设计。 此版本 v6.5.1 提供了各种高质量图标,可以增强项目的美观性和功能性。 主要特征 各种图标:数千种不同类别的图标,让您找到...
Outlook电子邮件应用程序重新设计-Flutter全响应式设计UIBeta上的Flutter Web工作确保您更改频道,Flutter我们正在使用的... 通过单个代码库制作移动,Web和桌面应用程序。Outlook Email App重新设计响应式最终用户界面
Ionicons是一个完全开源的图标集,其中包含1300个图标,这些图标是专为Web,iOS,Android和桌面应用程序而设计的。 Ionicons是为Ionic Framework(跨平台的混合和渐进式Web App框架)而设计的。 Ionicons Web组件是...
对于那些正在开发的第三方脚本/程序/应用程序。 请使用此仓库以确保您使用的是最新的生产就绪图标。 SVG Icon发行版的出色用途包括: 用于生成自己的Web字体的脚本。 编写插件/插件以与应用程序集成。 主题-每个...
特征: JSX导出React本地导出打字稿导出图标模式,其中所有svg大小都被替换为“ 1em” 更改图标名称如何在本地运行您将需要可下载的figma桌面应用程序。 然后克隆仓库并运行: yarn && yarn start:ui 如果您想更改...
是一个完全开源的图标集,其中包含1300个图标,这些图标是专为Web,iOS,Android和桌面应用程序而设计的。 Ionicons是为构建的,因此图标同时具有Material Design和iOS版本。 注意:所有品牌图标均为其各自所有者的...
该项目的目的是创建一个(基于Java的)工具,用于将SVG格式的矢量图形文件转换为可在Android应用程序中使用的Java源代码。 生成的文件将SVG文件的内容直接呈现到Android下的Canvas对象中,从而消除了对SVG文件结构的...