[Swfed-svn] swfed-svn [129] DefineShape のデータ構造を幾つか定義

Back to archive index

svnno****@sourc***** svnno****@sourc*****
2009年 5月 23日 (土) 01:40:50 JST


Revision: 129
          http://svn.sourceforge.jp/view?root=swfed&view=rev&rev=129
Author:   yoya
Date:     2009-05-23 01:40:50 +0900 (Sat, 23 May 2009)

Log Message:
-----------
DefineShape のデータ構造を幾つか定義
TODO: swf_matrix と swf_shape_record_{end|setup|edge}

Modified Paths:
--------------
    trunk/src/swf_line_style.h
    trunk/src/swf_shape_record.h
    trunk/src/swf_tag_shape.h

Added Paths:
-----------
    trunk/src/swf_shape_with_style.h


-------------- next part --------------
Modified: trunk/src/swf_line_style.h
===================================================================
--- trunk/src/swf_line_style.h	2009-05-20 15:45:42 UTC (rev 128)
+++ trunk/src/swf_line_style.h	2009-05-22 16:40:50 UTC (rev 129)
@@ -8,15 +8,28 @@
 #define __SWF_LINE_STYLE_H__
 
 #include "swf_rgba.h"
+#include "swf_fill_style.h"
+#include "swf_rgb.h"
 
 typedef union swf_line_style_ {
-    // DefineMorphShape
-    unsigned short width; // twips
-    unsigned short width_morph; // twips
     swf_rgba_t rgba;
-    swf_rgba_t rgba_morph;
+    swf_rgba_t rgba_morph; // + DefineMorphShape2
     // DefineShape4, DefinePhophShape2
-//    ...
+    unsigned short /* twips */ width;
+    unsigned short /* twips */ width_morph; // DefineMorphShape2
+    unsigned start_cap_style : 2;
+    unsigned join_style : 2;
+    unsigned has_fill : 1;
+    unsigned no_hscale : 1;
+    unsigned no_vscale : 1;
+    unsigned pixel_hinting : 1;
+    unsigned reserved : 5;
+    unsigned no_close : 1;
+    unsigned end_cap_style : 2;
+    unsigned short /* fixed */ miter_limit_factor; // join_style == 2
+    swf_fill_style_t fill_style; // has_fill == true
+    swf_rgb_t rgb;
+    
 } swf_line_style_t;
 
 extern int swf_line_style_parse(bitstream_t *bs, swf_line_style_t *color);

Modified: trunk/src/swf_shape_record.h
===================================================================
--- trunk/src/swf_shape_record.h	2009-05-20 15:45:42 UTC (rev 128)
+++ trunk/src/swf_shape_record.h	2009-05-22 16:40:50 UTC (rev 129)
@@ -9,8 +9,11 @@
 
 #include "swf_shape_record.h"
 
-typedef struct swf_shape_record_ {
-    int dummy; // 
+typedef union swf_shape_record_ {
+    int dummy; int dummy2;
+//    swf_shape_record_end_t   shape_end;
+//    swf_shape_record_setup_t shape_setup;
+//    swf_shape_record_edge_t  shape_edge;
 } swf_shape_record_t;
 
 extern int swf_shape_record_parse(bitstream_t *bs, swf_shape_record_t *color);

Added: trunk/src/swf_shape_with_style.h
===================================================================
--- trunk/src/swf_shape_with_style.h	                        (rev 0)
+++ trunk/src/swf_shape_with_style.h	2009-05-22 16:40:50 UTC (rev 129)
@@ -0,0 +1,22 @@
+/*
+  +----------------------------------------------------------------------+
+  | Author: yoya****@awm*****                                                  |
+  +----------------------------------------------------------------------+
+*/
+
+#ifndef __SWF_SHAPE_WITH_STYLE_H__
+#define __SWF_SHAPE_WITH_STYLE_H__
+
+#include "swf_styles.h"
+#include "swf_shape_record.h"
+
+typedef struct swf_shape_with_style_ {
+    swf_styles_t       styles;
+    swf_shape_record_t *shape_records;
+} swf_shape_with_style_t;
+
+extern int swf_shape_with_style_parse(bitstream_t *bs, swf_shape_with_style_t *color);
+extern int swf_shape_with_style_build(bitstream_t *bs, swf_shape_with_style_t *color);
+extern int swf_shape_with_style_print(swf_shape_with_style_t *color);
+
+#endif /* __SWF_SHAPE_WITH_STYLE_H__ */

Modified: trunk/src/swf_tag_shape.h
===================================================================
--- trunk/src/swf_tag_shape.h	2009-05-20 15:45:42 UTC (rev 128)
+++ trunk/src/swf_tag_shape.h	2009-05-22 16:40:50 UTC (rev 129)
@@ -9,7 +9,7 @@
 
 #include "swf_rect.h"
 #include "swf_morph_shape_with_style.h"
-// #include "swf_shape_with_style.h"
+#include "swf_shape_with_style.h"
 #include "swf_tag.h"
 
 typedef struct swf_tag_shape_detail_ {
@@ -30,9 +30,9 @@
     unsigned char define_shape_scaling_strokes;
     // is_morph
     unsigned long offset_morph;
-//     swf_morph_shape_with_style_t  morph_shape_with_style;
+     swf_morph_shape_with_style_t  morph_shape_with_style;
     // else
-//     swf_shape_with_style_t  morph_shape_with_style;
+    swf_shape_with_style_t  shape_with_style;
 } swf_tag_shape_detail_t;
 
 extern swf_tag_detail_handler_t *swf_tag_shape_detail_handler(void);



Swfed-svn メーリングリストの案内
Back to archive index