Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people, just like you, are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
Solved

How to create an image define size, add some pictures and write on it programmatically?

Posted on 2011-09-29
8
251 Views
Last Modified: 2013-12-17
I want to create an image with width 640 and my data length !!!
0
Comment
Question by:abgconsulting
  • 4
  • 3
8 Comments
 
LVL 4

Expert Comment

by:jatkin
ID: 36813283
Can you not use this:

System.Drawing.Image myImage = new Bitmap(600, 1000);

where 1000 is your data length?
0
 

Author Comment

by:abgconsulting
ID: 36813339
Thks Jatkin for your response,

But how i can fill my image with my data, i have to fill it like a receipt of superMarket?

0
 
LVL 4

Expert Comment

by:jatkin
ID: 36813406
There of loads of different ways you can directly put info into an image.
Check out this article for some of the ones I use quite frequently...

http://www.codeproject.com/KB/web-image/TextOnImage.aspx

James
0
MIM Survival Guide for Service Desk Managers

Major incidents can send mastered service desk processes into disorder. Systems and tools produce the data needed to resolve these incidents, but your challenge is getting that information to the right people fast. Check out the Survival Guide and begin bringing order to chaos.

 
LVL 40
ID: 36813518
You can use the PainEvent and draw the text into it with the e.Graphics.DrawString. It involves some preparation for the font and the color, but it lets you build an image from text. The documentation for the DrawString method has good samples of how to use it.
0
 

Author Comment

by:abgconsulting
ID: 36813553
James,
And what about the fact if  i want to put an image at the beginning and at the end of my image ?

PMS

0
 
LVL 4

Expert Comment

by:jatkin
ID: 36813565
You can use the DrawImage method for situations like this, for example:

static public Bitmap Copy(Bitmap srcBitmap, Rectangle section)
{
    // Create the new bitmap and associated graphics object
    Bitmap bmp = new Bitmap(section.Width, section.Height);
    Graphics g = Graphics.FromImage(bmp);

    // Draw the specified section of the source bitmap to the new one
    g.DrawImage(srcBitmap, 0, 0, section, GraphicsUnit.Pixel);

    // Clean up
    g.Dispose();

    // Return the bitmap
    return bmp;
}
0
 

Author Comment

by:abgconsulting
ID: 36813815
Hi jatkin

I am a little confused, could you explain me  again please.
  I try to create an image and the image I want to put a picture at the beginning and another at the end and in between I want to put the string as the receipts of the supermarket.

If I am your thinking so you asked me to create a bitmap like this
System.Drawing.Image = new Bitmap myImage (600, 1000);

and use the method DrawImage

static public Bitmap Copy (Bitmap srcBitmap, Rectangle section)
{
     / / Create the new bitmap and associated graphics object
     Bitmap bmp = new Bitmap (section.Width, section.Height);
     Graphics g = Graphics.FromImage (bmp);

     / / Draw the specified section of the source bitmap to the new one
     g.DrawImage (srcBitmap, 0, 0, section, GraphicsUnit.Pixel);

     / / Clean up
     g.Dispose ();

     / / Return the bitmap
     return bmp;
}
  But where do I pass the pictures I add to my image?

Thanks in advance

PMS
0
 
LVL 4

Accepted Solution

by:
jatkin earned 500 total points
ID: 36813848
The above code was more of an example of how to use the DrawImage function.

For your specific case you would do:

Image xMainImage = new Bitmap(600, 1000);
Image xHeader = new Bitmap("C:\\Header.bmp");
Image xFooter = new Bitmap("C:\\Header.bmp");

Graphics g = Graphics.FromImage(xMainImage);
g.DrawImage(xHeader, 0, 0, new Rectangle(0, 0, 600, 100);
g.DrawImage(xHeader, 0, 900, new Rectangle(0, 0, 600, 100);
g.Dispose();

<Put your text stuff in the middle somewhere>

Does this all make sense?
0

Featured Post

Networking for the Cloud Era

Join Microsoft and Riverbed for a discussion and demonstration of enhancements to SteelConnect:
-One-click orchestration and cloud connectivity in Azure environments
-Tight integration of SD-WAN and WAN optimization capabilities
-Scalability and resiliency equal to a data center

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Title # Comments Views Activity
Open a link in vb.net 2 15
Name Space error VS2015 1 22
VB.NET Textbox input validation 4 37
Unlocking a column in excel using C# 17 14
Article by: Nadia
Linear search (searching each index in an array one by one) works almost everywhere but it is not optimal in many cases. Let's assume, we have a book which has 42949672960 pages. We also have a table of contents. Now we want to read the content on p…
Iteration: Iteration is repetition of a process. A student who goes to school repeats the process of going to school everyday until graduation. We go to grocery store at least once or twice a month to buy products. We repeat this process every mont…
Finds all prime numbers in a range requested and places them in a public primes() array. I've demostrated a template size of 30 (2 * 3 * 5) but larger templates can be built such 210  (2 * 3 * 5 * 7) or 2310  (2 * 3 * 5 * 7 * 11). The larger templa…
I've attached the XLSM Excel spreadsheet I used in the video and also text files containing the macros used below. https://filedb.experts-exchange.com/incoming/2017/03_w12/1151775/Permutations.txt https://filedb.experts-exchange.com/incoming/201…

790 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question