473,545 Members | 2,009 Online
Bytes | Software Development & Data Engineering Community
+ Post

Home Posts Topics Members FAQ

Is there a good C# / .NET OO graphics library?

I need some basic graphics object functionality for my app. What I'd
like to do is this:

1) Start with an empty graphics "surface"
2) Paste or insert-from-file metafiles or bitmaps
3a) Use the mouse to move and resize, maybe rotate the inserted graphic
object.
3b) Click on previously inserted objects and move/resize them as well
4) Save the entire thing as a bitmap

I know how to do all these things individually and I've got 1,2 and 4
working fine. 3a) seems fairly straightforward but 3b) is where it gets
interesting so I was going to sit down and write a simple
object-oriented library that abstracts the moving/resizing/rotating
part by supplying a kind of holder class that knows how to display the
resizing handles and handle the hit-testing.

It seems to me that this kind of problem must have been solved over and
over but I couldn't find any freeware/shareware for .NET/C#.

Can anyone point me to a lib that does this kind of thing?

Thanks,
Andrew Queisser

Nov 17 '05 #1
2 5861
I have examples 3n in the GDI+ FAQ and Windows Forms Tips and Tricks.

--
Bob Powell [MVP]
Visual C#, System.Drawing

Ramuseco Limited .NET consulting
http://www.ramuseco.com

Find great Windows Forms articles in Windows Forms Tips and Tricks
http://www.bobpowell.net/tipstricks.htm

Answer those GDI+ questions with the GDI+ FAQ
http://www.bobpowell.net/faqmain.htm

All new articles provide code in C# and VB.NET.
Subscribe to the RSS feeds provided and never miss a new article.

"queisser" <an************ *@hp.com> wrote in message
news:11******** **************@ f14g2000cwb.goo glegroups.com.. .
I need some basic graphics object functionality for my app. What I'd
like to do is this:

1) Start with an empty graphics "surface"
2) Paste or insert-from-file metafiles or bitmaps
3a) Use the mouse to move and resize, maybe rotate the inserted graphic
object.
3b) Click on previously inserted objects and move/resize them as well
4) Save the entire thing as a bitmap

I know how to do all these things individually and I've got 1,2 and 4
working fine. 3a) seems fairly straightforward but 3b) is where it gets
interesting so I was going to sit down and write a simple
object-oriented library that abstracts the moving/resizing/rotating
part by supplying a kind of holder class that knows how to display the
resizing handles and handle the hit-testing.

It seems to me that this kind of problem must have been solved over and
over but I couldn't find any freeware/shareware for .NET/C#.

Can anyone point me to a lib that does this kind of thing?

Thanks,
Andrew Queisser

Nov 17 '05 #2
Hi Bob,

Thanks for the example - it's basically exactly what I was thinking of
implementing, I'll just add resizing with 8 handles around the
perimeter. I guess I'll go ahead with a roll-your-own solution and
decide later whether it's worthwhile switching to a commercial library
for doing fancier things.

Thanks,
Andrew

Bob Powell [MVP] wrote:
I have examples 3n in the GDI+ FAQ and Windows Forms Tips and Tricks.

--
Bob Powell [MVP]
Visual C#, System.Drawing

Ramuseco Limited .NET consulting
http://www.ramuseco.com

Find great Windows Forms articles in Windows Forms Tips and Tricks
http://www.bobpowell.net/tipstricks.htm

Answer those GDI+ questions with the GDI+ FAQ
http://www.bobpowell.net/faqmain.htm

All new articles provide code in C# and VB.NET.
Subscribe to the RSS feeds provided and never miss a new article.

"queisser" <an************ *@hp.com> wrote in message
news:11******** **************@ f14g2000cwb.goo glegroups.com.. .
I need some basic graphics object functionality for my app. What I'd
like to do is this:

1) Start with an empty graphics "surface"
2) Paste or insert-from-file metafiles or bitmaps
3a) Use the mouse to move and resize, maybe rotate the inserted graphic
object.
3b) Click on previously inserted objects and move/resize them as well
4) Save the entire thing as a bitmap

I know how to do all these things individually and I've got 1,2 and 4
working fine. 3a) seems fairly straightforward but 3b) is where it gets
interesting so I was going to sit down and write a simple
object-oriented library that abstracts the moving/resizing/rotating
part by supplying a kind of holder class that knows how to display the
resizing handles and handle the hit-testing.

It seems to me that this kind of problem must have been solved over and
over but I couldn't find any freeware/shareware for .NET/C#.

Can anyone point me to a lib that does this kind of thing?

Thanks,
Andrew Queisser


Nov 17 '05 #3

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

Similar topics

4
3680
by: Steven Feil | last post by:
I am wondering if there is a light weight Python library for producing web graphics on-the-fly. There is a C-language library called gd that can be used in a CGI program to produce gif images. The Library can be used to produce graphics images that are dynamically generated. I was wondering if there is something similar for Python.
5
5496
by: Markus Elfring | last post by:
Hello, A lot of clipart libraries offer free raster images. I am looking for a similar collection for vector graphics. Do you know a gallery or archive for the following formats? - Scalable Vector Graphics (*.svgz) - Computer Graphics Metafile (*.cgm) Sincereley,
2
3047
by: Nicholas Witchey | last post by:
Does anyone know of a set of graphics libraries written in C#? My goal is to create a set of graphics images in memory then dump them to a file or network stream in any format. Unfortunately the System.Drawing classes all resolve down to calls in gdiplus.dll which are implemented natively. Basically, I would like to use the...
8
3303
by: Nathan Sokalski | last post by:
I am trying to write code to rotate a graphic that I have. Here is the code I am currently using: Dim frogbitmap As New Bitmap(Drawing.Image.FromFile(Server.MapPath("images/frog.gif"))) Dim froggraphic As Graphics = Graphics.FromImage(frogbitmap) froggraphic.RotateTransform(90) frogbitmap.Save(Server.MapPath("images/frog2.gif"),...
13
3885
by: salad | last post by:
Hi Guys: I was stuck. I needed to send a report to a file. My beautiful report(s) in Access were going to require loss of formatting with RTFs, a PITA in WordMailMerge, sending it as a text file...whatever. I described my situation to the guy I'm doing work for and he did some research for me and came up with the following link. ...
2
4887
by: utab | last post by:
Dear all, Could you please recommend me a graphics library for python. I saw PYX which has nice screenshots on the webpage. My first ambition is to be able to draw 2D or 3D graphs for my mathematical results. Maybe later, I can handle other types of graphical operations. Regards.
2
4529
by: Lloyd Dupont | last post by:
In my .NET application I have some text rendered through GDI. It draws and print nicely. Now I would like to implement image export. So I create a new System.Drawing.Bitmap(width, height) then I create a Graphic g = Graphics.FromImage(bmp) then I use HDC hdc = g.GetHdc(); and use ExtTextOut ....
3
1731
by: t | last post by:
I have been learning C++ on my own. For some projects, I would like to use graphics. What is the easiest way to do this? (I am using Visual Studio Express 2005.) Separate from the ease of use question, what way(s) are most used? I have heard of things like qt... Would it be easier to just learn and use C# instead?
6
4128
by: jt | last post by:
i think i was not clear in my quesiton. my question actually was how to store a graphics image generated in C. Eg. #include<graphics.h> void main() { int gm,gd=DETECT; initgraph(&gd,&gm,""); rectangle(50,50,200,300);
0
7475
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...
0
7409
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...
0
7664
Oralloy
by: Oralloy | last post by:
Hello folks, I am unable to find appropriate documentation on the type promotion of bit-fields when using the generalised comparison operator "<=>". The problem is that using the GNU compilers, it seems that the internal comparison operator "<=>" tries to promote arguments from unsigned to signed. This is as boiled down as I can make it. ...
1
7437
by: Hystou | last post by:
Overview: Windows 11 and 10 have less user interface control over operating system update behaviour than previous versions of Windows. In Windows 11 and 10, there is no way to turn off the Windows Update option using the Control Panel or Settings app; it automatically checks for updates and installs any it finds, whether you like it or not. For...
0
7771
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...
0
4958
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...
0
3446
by: adsilva | last post by:
A Windows Forms form does not have the event Unload, like VB6. What one acts like?
1
1900
by: 6302768590 | last post by:
Hai team i want code for transfer the data from one system to another through IP address by using C# our system has to for every 5mins then we have to update the data what the data is updated we have to send another system
1
1023
muto222
by: muto222 | last post by:
How can i add a mobile payment intergratation into php mysql website.

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.