UG> +  // ensures that the bounds of the character definiton are known
UG> +  inline void need_shape_bounds(shape_character_def *def) {
UG> +  
UG> +    // TO BE REMOVED - does not work
UG> +
UG> +    if (def->>get_bound().is_null()) {
UG> +      printf("Calculating bounds for %p\n", def);
UG> +      rect temp;
UG> +      def->>compute_bound(&temp);
UG> +      def->>set_bound(temp);
UG> +    }
UG> +  
UG> +  }


Sandro, can you commit a patch that calculates the bounds of all
glyphs at parse time? I tried with the function above but with the
attached testcase it keeps on calulating the bounds of one certain
glyph forever. Also, it's not the best way to calculate the bounds in
the renderer.

To test, uncomment the line in render_handler_agg.cpp:928:

need_shape_bounds(def);

The goal is to avoid handling of glyphs that are not visible anyway
(like it's done for other shapes).

Udo

Attachment: text-performance-test.swf
Description: application/shockwave-flash

_______________________________________________
Gnash-commit mailing list
Gnash-commit@gnu.org
http://lists.gnu.org/mailman/listinfo/gnash-commit

Reply via email to