예제 #1
0
void svgtiny_parse_transform_attributes(xmlNode *node,
		struct svgtiny_parse_state *state)
{
	char *transform;

	/* parse transform */
	transform = (char *) xmlGetProp(node, (const xmlChar *) "transform");
	if (transform) {
		svgtiny_parse_transform(transform, &state->ctm.a, &state->ctm.b,
				&state->ctm.c, &state->ctm.d,
				&state->ctm.e, &state->ctm.f);
		xmlFree(transform);
	}
}
예제 #2
0
void svgtiny_parse_transform_attributes(Poco::XML::Element *node,
		struct svgtiny_parse_state *state)
{
	char *transform;

	/* parse transform */
	//transform = (char *) xmlGetProp(node, (const xmlChar *) "transform");
    
    transform = (char *) node->getAttribute("transform").c_str();

	if (transform) {
		svgtiny_parse_transform(transform, &state->ctm.a, &state->ctm.b,
				&state->ctm.c, &state->ctm.d,
				&state->ctm.e, &state->ctm.f);
		//xmlFree(transform);
        //free(transform);
	}
}
예제 #3
0
void svgtiny_parse_transform_attributes(dom_element *node,
		struct svgtiny_parse_state *state)
{
	char *transform;
	dom_string *attr;
	dom_exception exc;
	
	exc = dom_element_get_attribute(node, state->interned_transform,
					&attr);
	if (exc == DOM_NO_ERR && attr != NULL) {
		transform = strndup(dom_string_data(attr),
				    dom_string_byte_length(attr));
		svgtiny_parse_transform(transform, &state->ctm.a, &state->ctm.b,
				&state->ctm.c, &state->ctm.d,
				&state->ctm.e, &state->ctm.f);
		free(transform);
		dom_string_unref(attr);
	}
}