Loading ...
Sorry, an error occurred while loading the content.

893RE: [cc2-dev-l] Re: FCW format and existing FCW->SVG code

Expand Messages
  • L. Lee Saunders
    Feb 20, 2012
      The latest XP development Kit code (for CC3) is available for download on Peter Olsen's site:

      This should give you a complete "view" into the file format.

      L. Lee Saunders
      "It was only a partial solution, of course, as solutions usually are, and addressed only one specific problem, as solutions usually do. But, as was often also true, it opened the door—if only a crack—for the multitude of solutions to follow." 
      1632 - Eric Flint
      my blog: http://oldschooldotnet.blogspot.com
      Taking Dot Net "Old School" - Playing with old ideas/concepts using the newest tools!


      To: cc2-dev-l@yahoogroups.com
      From: waldronate@...
      Date: Mon, 20 Feb 2012 14:22:16 -0800
      Subject: RE: [cc2-dev-l] Re: FCW format and existing FCW->SVG code

      The FCW definition header file in the SVG converter is woefully incomplete. There is an XP development kit that has all of the definitions in it. The ProFantasy web site should have more information on the development kit.
      Anyhow, the following definitions should help:
      // from _geometry.h
      typedef struct
       short Font;
       GPOINT2 Origin;
       float Hght;
       float XScl;
       float BAng;
       float Spacing;
       short TFlags;
       short DFlags;
       short Just;
       char TData[];
      } GTEXT2;

      // from _estruc.h
      typedef struct
       CSTUFF CStuff;  // entity properties
       GTEXT2 Text;

      The CSTUFF definition is listed as Common in the header.h in the SVG converter.
      > To: cc2-dev-l@yahoogroups.com
      > From: yahoo@...
      > Date: Mon, 20 Feb 2012 21:15:42 +0000
      > Subject: [cc2-dev-l] Re: FCW format and existing FCW->SVG code
      > > I have another question: the existing code doesn't support [for
      > > some] block types. I've noticed type 5 (which appears to be the
      > > type for text labels) and type 0x81 (metadata?). Does anyone
      > > know the structure for these types?
      > I've looked into "reverse engineering" the format for the text labels, and figured out this much:
      > 0x00 - 0x1B : standard block header
      > 0x1C - 0x1D : ??
      > 0x1E - 0x25 : Coordinate
      > 0x26 - 0x3A : ??
      > 0x3B - varies : null-terminated String text
      > I'm sure I can figure out the reference to font id and font size.
      > Supporting text introduces a new weirdness, however. CC3's coordinate system is different from SVG's. CC3 uses a "natural" coordinate system, with the largest numbers in the upper right hand corner. SVG uses the (horrible, icky) coordinate system where the largest numbers are in the bottom right hand corner. You'd think it'd be easy to just transform (flip) the entire SVG group, except that makes the text appear upside-down. Le sigh.
      > BC
      > ------------------------------------
      > To Post a message, send it to: cc2-dev-l@...
      > To Unsubscribe, send a blank message to: cc2-dev-l-unsubscribe@...! Groups Links
      > <*> To visit your group on the web, go to:
      > http://groups.yahoo.com/group/cc2-dev-l/
      > <*> Your email settings:
      > Individual Email | Traditional
      > <*> To change settings online go to:
      > http://groups.yahoo.com/group/cc2-dev-l/join
      > (Yahoo! ID required)
      > <*> To change settings via email:
      > cc2-dev-l-digest@yahoogroups.com
      > cc2-dev-l-fullfeatured@yahoogroups.com
      > <*> To unsubscribe from this group, send an email to:
      > cc2-dev-l-unsubscribe@yahoogroups.com
      > <*> Your use of Yahoo! Groups is subject to:
      > http://docs.yahoo.com/info/terms/

    • Show all 10 messages in this topic