1 Star 0 Fork 1

wwdhao163 / vgandroid

forked from TouchVG / vgandroid 
加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
贡献代码
同步代码
取消
提示: 由于 Git 不支持空文件夾,创建文件夹后会生成空的 .keep 文件
Loading...
README

TouchVG for Android

This is a lightweight 2D vector drawing framework using TouchVGCore for Android. It uses android.graphics and android.view packages to render shapes and handle touches.

Features described in Online document. Please visit the TouchVG Demo project to see more examples.

arch android1

How to Compile

  • Don't want to build libtouchvg.so and jar ?

    • Download the prebuilt libraries.
    • Extract touchvg_libs in the zip package to vgandroid/TouchVG/libs or yourapp/libs.
    • Import this project in eclipse. Android SDK version in the project.properties may need to modify according to your installation.
  • Enter the directory of this project, then type ./build.sh to clone and build libraries needed.

    • Need to add the NDK installation location to PATH.

    • If the error build/gmsl/__gmsl:512: *** non-numeric second argument to wordlist function occurs, then open the build/gmsl/__gmsl file in the NDK installation directory, and change line 512 to: int_encode = $(__gmsl_tr1)$(wordlist 1,$(words $1),$(__gmsl_input_int))

    • MSYS is recommended on Windows to run UNIX commands such as rm, sh and make. MinGW and Cygwin are not necessary for TouchVG.

  • Import this project in eclipse, then build touchvg project.

    • Android SDK version in the project.properties may need to modify according to your installation.

    • Recommend using the newer ADT Bundle to avoid complex configuration.

  • Regenerate libtouchvg.so and JNI classes:

    • Type ./build.sh -B to rebuild the native libraries.

    • Type ./build.sh APP_ABI=x86 to build for the x86 (Intel Atom) Emulator.

    • Type ./build.sh -swig to regenerate the kernel JNI classes.

    • Need to install the lastest version of SWIG 3.0, and add the location to PATH on Windows. SWIG 2.x may can't parse UTF-8 header files on Windows.

How to Debug native code

  • Add #include "mglog.h" and use LOGD("your message %d", someint) in the C++ files needed to debug.

  • Set LogCat filter in Eclipse: tag:dalvikvm|AndroidRuntime|vgjni|touchvg|vgstack|libc|DEBUG.

  • Print JNI functions to locate problems of libc crash:

    1. Add python addlog.py in jni/build.sh.
    2. Type ./build.sh -swig to add log in all JNI entry functions, or remove touchvg_java_wrap.cpp and type ./build.sh.

Add more shapes and commands

  • You can use newproj.py to create library project containing your own shapes and commands. So the TouchVG and TouchVGCore libraries does not require changes.

    • Checkout and enter DemoCmds directory, then type python newproj.py YourCmds:

      git clone http://git.oschina.net/vg/DemoCmds.git
      cd DemoCmds
      python newproj.py MyCmds

License

This is an open source LGPL 2.1 licensed project. It uses the following open source projects:

  • TouchVGCore (LGPL): Cross-platform vector drawing libraries using C++.
  • AndroidSVG (Apache): SVG rendering library for Android.
  • x3py (Apache): Compile script files.
  • SWIG (GPL): Use the tool to generate the glue code for Java and C#.

How to Contribute

Contributors and sponsors are welcome. You may translate, commit issues or pull requests on this Github site. To contribute, please follow the branching model outlined here: A successful Git branching model.

Welcome to the Chinese QQ group 192093613 to discuss and share.

Contributors

空文件

简介

A lightweight 2D vector drawing framework for Android. 展开 收起
取消

发行版

暂无发行版

贡献者

全部

近期动态

加载更多
不能加载更多了
1
https://gitee.com/wade06/vgandroid.git
git@gitee.com:wade06/vgandroid.git
wade06
vgandroid
vgandroid
master

搜索帮助

53164aa7 5694891 3bd8fe86 5694891