GithubHelp home page GithubHelp logo

adammendoza / kabeja Goto Github PK

View Code? Open in Web Editor NEW

This project forked from fuzziness/kabeja

0.0 1.0 0.0 15.82 MB

Kabeja is a Java library for parsing, processing and converting Autodesk's DXF format. You can use Kabeja from the CommandLine or embed into your application. All parsed data are accessible with the DOM-like API. The processing system allows you to process, filter (e.g. XSLT) and convert DXF drafts to different output formats (SVG, JPEG, PNG, TIFF, PDF, XML).

Home Page: http://kabeja.sourceforge.net/

Java 98.82% HTML 0.11% XSLT 1.03% Shell 0.03% Batchfile 0.01%

kabeja's Introduction

Kabeja is a small library for parsing DXF-Files and converting
this to SVG. It is licensed under the Apache Software License 2.0.


Limitation:
-----------
There are not all Entities of DXF supported yet. Text-Entities generate problems too.

Supported:

 
 *Arc
 *Attrib
 *Polyline
 *Circle
 *Line
 *Blocks/Insert
 *Text
 *MText
 *LWPolyline
 *Solid
 *Trace
 *Ellipse
 *Dimension
 *Image
 *Leader
 *XLine
 *Ray
 *Hatch
 *Spline
 *MLine

Planned:


 
 * Tolerance


You can use Kabeja from CLI (Command Line Interface) or embed in your application. 

GUI:
----
Windows: 
		* double-click "kabeja.exe"

Linux: 
   		* sh kabeja.sh
   		
   		or:
   		
   		* chmod a=rx kabeja.sh (only ones)
   		* ./kabeja.sh
   		
Other:
       * java -jar launcher.jar



CLI:
----
in the Kabeja-folder try:

  * Help and pipeline list
  
     java -jar launcher.jar --help 
  
  * Convert to svg

    java -jar launcher.jar -nogui -pipeline svg myfile.dxf result.svg
  
  * Convert to pdf|jpeg|png|...
  
      java -jar launcher.jar -nogui -pipeline <pdf|jpeg|png>  myfile.dxf 
  
  
Normally Java uses 64 MB of your memory, to setup more use the following commandline
switch:  

java -Xmx256m  -jar ..... 
  

  
GUI-Viewer:
-----------
in the 'lib'-folder try:

  java -jar kabeja-svgview.jar
  
  
  
Cocoon 2.1 (XML-Publishing-Framework http://cocoon.apache.org/2.1):
-------------------------------------------------------------------

Copy the 'kabeja.jar' and 'kabeja-svg2dxf-cocoon.jar' to your WEB-INF/lib-folder
of your Cocoon-Webapplication. Then you can use Kabeja as Generator like:


in your sitemap/subsitemap:

snippet:
--------

<map:components>
     .....   
 <map:generators default="file">
    
  <map:generator name="dxf2svg" src="org.kabeja.cocoon.generation.DXF2SVGGenerator"/>
    
 </map:generators>

  
....
 <map:pipelines>
   
   <map:pipeline>
    
     <map:match pattern="dxf/*.svg">
        <map:generate type="dxf2svg" src="dxf/{1}.dxf"/>
	  ...
	   <!-- transform things you need -->
	
	<map:serialize type="xml"/>
     </map:match>
    
    </map:pipeline>
   
   ....
   
   
   </map:pipelines>

Note: DXF-drafts often real large drafts, so the SVGDocument will consume a lot of memory. The Generator is 
Cacheable so the first run will take more time.




Feedback and Help
-----------------

Any help and feedback are greatly appreciated.

Mail: [email protected]




kabeja's People

Contributors

simijhag avatar

Watchers

Adam J. Mendoza avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.