473,769 Members | 2,220 Online
Bytes | Software Development & Data Engineering Community
+ Post

Home Posts Topics Members FAQ

SVG Api in PHP

Hi,
I am just curious if there is any existing API in PHP for rendering
SVG (Scalable Vector Graphics). A quick search in Google pointed to me
a place in zend.com - http://www.zend.com/zend/trick/tricks12apr.php .
where I feel the support for SVG is not very clear to be exact.

Just curious if there is a library that comes with PHP that can help
us to create PHP without exactly boggling down in the SVG syntax ( XML )
as given in the above mentioned example.

--
Karthik
Humans please 'removeme_' for my real email.
Jul 17 '05 #1
7 3820
Karthik wrote:
Hi,
I am just curious if there is any existing API in PHP for rendering
SVG (Scalable Vector Graphics). A quick search in Google pointed to me
a place in zend.com - http://www.zend.com/zend/trick/tricks12apr.php .
where I feel the support for SVG is not very clear to be exact.

Just curious if there is a library that comes with PHP that can help
us to create PHP without exactly boggling down in the SVG syntax ( XML )
as given in the above mentioned example.


Not that I know of.

Sounds like an interesting idea though. Not something that needs to be
implemented as a PHP module. Could be done with some PHP classes.

What sort of functions would you expect/desire in a "simplified " SVG API?

Jul 17 '05 #2
Terence wrote:
Karthik wrote:
Hi,
I am just curious if there is any existing API in PHP for rendering
SVG (Scalable Vector Graphics). A quick search in Google pointed to
me a place in zend.com -
http://www.zend.com/zend/trick/tricks12apr.php .
where I feel the support for SVG is not very clear to be exact.

Just curious if there is a library that comes with PHP that can
help us to create PHP without exactly boggling down in the SVG syntax
( XML ) as given in the above mentioned example.


Not that I know of.

Sounds like an interesting idea though. Not something that needs to be
implemented as a PHP module. Could be done with some PHP classes.

What sort of functions would you expect/desire in a "simplified " SVG API?

I was reading the specification of SVG. And I was wondering if there
is a nice abstraction of the SVG document, similar to an XML document. I
am concerned more about writing SVG files, at the moment than reading
them (which I guess could be done by the plugin anyway).
As such the SVG spec. provides ways to draw a circle , rectangle
(and much more). I was wondering if there could be a nice API that can
eventually help me write a SVG document without me knowing anything
about XML in the first place (but, of course with some knowledge of the
SVG specification).

--
Karthik
Humans please 'removeme_' for my real email.
Jul 17 '05 #3
Karthik wrote:
Terence wrote:
Karthik wrote:
Hi,
I am just curious if there is any existing API in PHP for rendering
SVG (Scalable Vector Graphics). A quick search in Google pointed to
me a place in zend.com -
http://www.zend.com/zend/trick/tricks12apr.php .
where I feel the support for SVG is not very clear to be exact.

Just curious if there is a library that comes with PHP that can
help us to create PHP without exactly boggling down in the SVG syntax
( XML ) as given in the above mentioned example.


Not that I know of.

Sounds like an interesting idea though. Not something that needs to be
implemented as a PHP module. Could be done with some PHP classes.

What sort of functions would you expect/desire in a "simplified " SVG API?

I was reading the specification of SVG. And I was wondering if there
is a nice abstraction of the SVG document, similar to an XML document. I
am concerned more about writing SVG files, at the moment than reading
them (which I guess could be done by the plugin anyway).
As such the SVG spec. provides ways to draw a circle , rectangle (and
much more). I was wondering if there could be a nice API that can
eventually help me write a SVG document without me knowing anything
about XML in the first place (but, of course with some knowledge of the
SVG specification).


OK, given that an SVG extension doesn't exist, I don't think it would be
too difficult to create an API that implements DOM in the internals to
generate the required SVG XML.

I'd start by creating a class for each type of primary 2d object. For
instance:
- point
- line,
- circle
etc.
I'm sure SVG has elements for all of these. Then you write a class which
represents an SVG document. Maybe it has methods like.
setDocTitle();
PlaceObject([point|line|circ le],x,y);
// returns reference to placed object
RemoveObject([reference to target object]);
GroupObjects([obj ref|array of objects],[group name]); // returns group
ConsumeObjects([url to XML data with SVG objects]); // returns group
XmlDump(); // echos document in XML format.
/* static methods */
TranslateObject ([obj ref|obj group],[position delta object]);
ScaleObject(... );
RotateObject(.. .);
CreateObject([type],[obj relation]);
// obj relation is an optional object which contains a ref to
another svg object and "how" it raltes to the new object.
RelateObject([src objct],[obj relation]);

....

anyway, you get the picture...
You might want to maintain a stack which is an associative array
containing all the created objects so XmlDump() need only walk the
array, serializing objects (and related dependencies) as it goes.
Maybe another stack for groups, maybe not.
You might want to do this with PHP5 as there is a lot of reference
passing going on.
anyway, just an idea in case anyone out there is interested.
Could be fun.
Jul 17 '05 #4
Karthik <re************ *******@yahoo.c om> wrote in message news:<409651c9$ 1@darkstar>...
Terence wrote:
Karthik wrote:

<snip>
As such the SVG spec. provides ways to draw a circle , rectangle
(and much more). I was wondering if there could be a nice API

Tried this <http://pear.php.net/package/XML_SVG/> ??

--
| Just another PHP saint |
Email: rrjanbiah-at-Y!com
Jul 17 '05 #5
Terence <tk******@fastm ail.fm> wrote in message news:<4096fa3b$ 1@herald>...
Karthik wrote: <snip> I'm sure SVG has elements for all of these. Then you write a class which
represents an SVG document. Maybe it has methods like.
setDocTitle();
[..]
anyway, just an idea in case anyone out there is interested.
Could be fun.


No need to reinvent... <http://www.phpclasses. org/svg> (dated 2002-02-16)

--
| Just another PHP saint |
Email: rrjanbiah-at-Y!com
Jul 17 '05 #6
"Karthik" <re************ *******@yahoo.c om> schrieb im Newsbeitrag
news:409651c9$1 @darkstar...
I was reading the specification of SVG. And I was wondering if there
is a nice abstraction of the SVG document, similar to an XML document. I
am concerned more about writing SVG files, at the moment than reading
them (which I guess could be done by the plugin anyway).
As such the SVG spec. provides ways to draw a circle , rectangle
(and much more). I was wondering if there could be a nice API that can
eventually help me write a SVG document without me knowing anything
about XML in the first place (but, of course with some knowledge of the
SVG specification).


I still don't understand what you want to do:
- Analyze SVG with PHP and convert it to anything else (i.e. Gif)?
- Write SVG graphic with PHP (could be an extension to the GD lib)?

The rendering (as you wrote in your first post) is definitely done at the
client side so has nothing to do with PHP.

--
Markus
Jul 17 '05 #7
Markus Ernst wrote:

- Analyze SVG with PHP and convert it to anything else (i.e. Gif)?
- Write SVG graphic with PHP (could be an extension to the GD lib)?>
The rendering (as you wrote in your first post) is definitely done at the
client side so has nothing to do with PHP.


Oops ! I actually meant to generate the SVG documents at the server
side using a simple API. Sorry for the wrong usage of the word -
'rendering' . It is out of context, i admit. Thanks for pointing it out.

--
Karthik.
Humans please 'removeme_' for my real email.
Jul 17 '05 #8

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

3
11242
by: William C. White | last post by:
Does anyone know of a way to use PHP /w Authorize.net AIM without using cURL? Our website is hosted on a shared drive and the webhost company doesn't installed additional software (such as cURL) on the server because of that. Our site will have an SSL certificate next week, so I would like to use AIM instead of SIM, however, I don't know how to send data via POST over https and recieve data from the Authorize.net server over an https...
2
5837
by: Albert Ahtenberg | last post by:
Hello, I don't know if it is only me but I was sure that header("Location:url") redirects the browser instantly to URL, or at least stops the execution of the code. But appearantely it continues to execute the code until the browser send his reply to the header instruction. So an exit(); after each redirection won't hurt at all
3
23036
by: James | last post by:
Hi, I have a form with 2 fields. 'A' 'B' The user completes one of the fields and the form is submitted. On the results page I want to run a query, but this will change subject to which field is completed.
0
8493
by: Ollivier Robert | last post by:
Hello, I'm trying to link PHP with Oracle 9.2.0/OCI8 with gcc 3.2.3 on a Solaris9 system. The link succeeds but everytime I try to run php, I get a SEGV from inside the libcnltsh.so library. 354 roberto@ausone:Build/php-4.3.2> ldd /opt/php4/bin/php libsablot.so.0 => /usr/local/lib/libsablot.so.0 libstdc++.so.5 => /usr/local/lib/libstdc++.so.5 libm.so.1 => /usr/lib/libm.so.1
1
8606
by: Richard Galli | last post by:
I want viewers to compare state laws on a single subject. Imagine a three-column table with a drop-down box on the top. A viewer selects a state from the list, and that state's text fills the column below. The viewer can select states from the drop down lists above the other two columns as well. If the viewer selects only one, only one column fills. If the viewer selects two states, two columns fill. Etc. I could, if appropriate, have...
4
18301
by: Albert Ahtenberg | last post by:
Hello, I have two questions. 1. When the user presses the back button and returns to a form he filled the form is reseted. How do I leave there the values he inserted? 2. When the user comes back to a page where he had a submitted POST data the browser keeps telling that the data has expired and asks if repost. How to avoid that? I tried registering all POST and GET vars as SESSION vars but
1
6862
by: inderjit S Gabrie | last post by:
Hi all Here is the scenerio ...is it possibly to do this... i am getting valid course dates output on to a web which i have designed ....all is okay so far , look at the following web url http://www.mis.gla.ac.uk/biquery/training/ but each of the courses held have maximum of 8 people that could be
2
31441
by: Jack | last post by:
Hi All, What is the PHP equivilent of Oracle bind variables in a SQL statement, e.g. select x from y where z=:parameter Which in asp/jsp would be followed by some statements to bind a value to :parameter I dont like the idea of making the SQL statement on the fly without binding parameters as I dont want a highly polluted SQL cache.
3
23598
by: Sandwick | last post by:
I am trying to change the size of a drawing so they are all 3x3. the script below is what i was trying to use to cut it in half ... I get errors. I can display the normal picture but not the results of the picture half the size. The PHP I have installed support 1.62 or higher. And all I would like to do is take and image and make it fit a 3x3. Any suggestions to where I should read or look would be appreciated.
0
9579
marktang
by: marktang | last post by:
ONU (Optical Network Unit) is one of the key components for providing high-speed Internet services. Its primary function is to act as an endpoint device located at the user's premises. However, people are often confused as to whether an ONU can Work As a Router. In this blog post, we’ll explore What is ONU, What Is Router, ONU & Router’s main usage, and What is the difference between ONU and Router. Let’s take a closer look ! Part I. Meaning of...
0
9422
by: Hystou | last post by:
Most computers default to English, but sometimes we require a different language, especially when relocating. Forgot to request a specific language before your computer shipped? No problem! You can effortlessly switch the default language on Windows 10 without reinstalling. I'll walk you through it. First, let's disable language synchronization. With a Microsoft account, language settings sync across devices. To prevent any complications,...
0
10035
jinu1996
by: jinu1996 | last post by:
In today's digital age, having a compelling online presence is paramount for businesses aiming to thrive in a competitive landscape. At the heart of this digital strategy lies an intricately woven tapestry of website design and digital marketing. It's not merely about having a website; it's about crafting an immersive digital experience that captivates audiences and drives business growth. The Art of Business Website Design Your website is...
0
9851
tracyyun
by: tracyyun | last post by:
Dear forum friends, With the development of smart home technology, a variety of wireless communication protocols have appeared on the market, such as Zigbee, Z-Wave, Wi-Fi, Bluetooth, etc. Each protocol has its own unique characteristics and advantages, but as a user who is planning to build a smart home system, I am a bit confused by the choice of these technologies. I'm particularly interested in Zigbee because I've heard it does some...
1
7403
isladogs
by: isladogs | last post by:
The next Access Europe User Group meeting will be on Wednesday 1 May 2024 starting at 18:00 UK time (6PM UTC+1) and finishing by 19:30 (7.30PM). In this session, we are pleased to welcome a new presenter, Adolph Dupré who will be discussing some powerful techniques for using class modules. He will explain when you may want to use classes instead of User Defined Types (UDT). For example, to manage the data in unbound forms. Adolph will...
0
6662
by: conductexam | last post by:
I have .net C# application in which I am extracting data from word file and save it in database particularly. To store word all data as it is I am converting the whole word file firstly in HTML and then checking html paragraph one by one. At the time of converting from word file to html my equations which are in the word document file was convert into image. Globals.ThisAddIn.Application.ActiveDocument.Select();...
0
5293
by: TSSRALBI | last post by:
Hello I'm a network technician in training and I need your help. I am currently learning how to create and manage the different types of VPNs and I have a question about LAN-to-LAN VPNs. The last exercise I practiced was to create a LAN-to-LAN VPN between two Pfsense firewalls, by using IPSEC protocols. I succeeded, with both firewalls in the same network. But I'm wondering if it's possible to do the same thing, with 2 Pfsense firewalls...
0
5441
by: adsilva | last post by:
A Windows Forms form does not have the event Unload, like VB6. What one acts like?
3
2811
bsmnconsultancy
by: bsmnconsultancy | last post by:
In today's digital era, a well-designed website is crucial for businesses looking to succeed. Whether you're a small business owner or a large corporation in Toronto, having a strong online presence can significantly impact your brand's success. BSMN Consultancy, a leader in Website Development in Toronto offers valuable insights into creating effective websites that not only look great but also perform exceptionally well. In this comprehensive...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.