5,530,111 members and growing! (16,791 online)
Email Password   helpLost your password?
Platforms, Frameworks & Libraries » Mobile Development » GDI+     Intermediate

Scratchpad/Signature Capture as BMP on Pocket PC

By RajeshNayak

A way to capture signature or scribble on the Pocket PC.
C#, Windows, .NET CF, .NET 1.1, .NET 2.0, CE .NET 4.2, WinMobile2003, Win Mobile, .NET, MobileVisual Studio, VS.NET2003, VS2005, Dev

Posted: 27 Jan 2006
Updated: 6 Sep 2006
Views: 55,623
Bookmarked: 37 times
Announcements
Want a new Job?



Search    
Advanced Search
Sitemap
12 votes for this Article.
Popularity: 4.97 Rating: 4.61 out of 5
0 votes, 0.0%
1
0 votes, 0.0%
2
0 votes, 0.0%
3
2 votes, 16.7%
4
10 votes, 83.3%
5

Sample Image - SignaturePPC02.gif Sample Image - SignaturePPC02.gif

Sample Image - SignaturePPC02.gif

Introduction

This control class allows a user to take a colored jot down note or signature, and save it as BMP file in the Pocket PC. This easy to use code can be plugged into any .NET application to take scribbles.

Background

Quite for a long time, I was looking for a free Signature control or some thing like that, that I could use in my own application without overloading it with bulkier codes. I was looking for some thing where I could change the pen color, width, and so on. In the internet knowledge bases, there was very few information on this, and most did not suit my needs. Later, I thought of assembling the available code and stripping down the un-needed portions, and fine-tuning the code to the level of my expectations.

Thought, may be a few people like me are still looking for this kind of a snippet and thought of sharing it. There are a few portions in this code that a programmer can even modify, like make the pen width changeable, save image as JPG or GIF etc.

Using the code

Copy the Signature.cs file to any of your Pocket PC 2003 projects. Add a Panel control to the visual form. Put this code as described and get the project rolling with signature capture capability.

Here, I have added a Panel:

private System.Windows.Forms.Panel pnlSignature;
private Signature cSignature;

Later in the constructor, or in the form Load event, you can add:

cSignature = new Signature();
cSignature.Location = pnlSignature.Location;
cSignature.Size = pnlSignature.Size;
this.pnlSignature.Visible = false;
this.Controls.Add(cSignature);

Under any Button's Click event, you can write this code to save the file under your desired location with a name:

cSignature.Save(Path.Combine(AppPath, "CapturedPicture.bmp"));

Similarly, you can change the pen color by calling:

cSignature.SetPenColor(Color.Blue);

or load a previously saved picture of the same size, using:

cSignature.LoadImage(Path.Combine(AppPath, 
        "PreviouslyCapturedPicture.bmp"));

Tips and Tricks:

  1. Do not forget to set the Visibility of the Panel to false, as we need to see the control, not the Panel. Here, the Panel is just a container.
  2. It is more important to set the size of the signature control to the size of the loaded picture and the Panel size, else it may not work.

Points of Interest

While working on this, I changed the pen width by changing the following lines of code. Obviously, there must be a better way to do this than what I did.

GraphicsHandle.DrawLine(SignaturePen, l.StartX+1, 
                      l.StartY, l.EndX+1,l.EndY);
GraphicsHandle.DrawLine(SignaturePen, l.StartX, 
                  l.StartY+1, l.EndX,l.EndY+1);
GraphicsHandle.DrawLine(SignaturePen, l.StartX+1, 
                  l.StartY+1, l.EndX+1,l.EndY+1);
GraphicsHandle.DrawLine(SignaturePen, l.StartX, 
                      l.StartY, l.EndX,l.EndY);

License

This article has no explicit license attached to it but may contain usage terms in the article text or the download files themselves. If in doubt please contact the author via the discussion board below.

A list of licenses authors might use can be found here

About the Author

RajeshNayak


Rajesh Nayak currently working with CSDC Systems Inc.'s (canada East Zone - R&D Branch) as Product Manager-Mobile Solutions.

Occupation: Web Developer
Location: United States United States

Other popular Mobile Development articles:

Article Top
Sign Up to vote for this article
You must Sign In to use this message board.
FAQ FAQ Noise ToleranceSearch Search Messages 
 Layout  Per page   
 Msgs 1 to 25 of 56 (Total in Forum: 56) (Refresh)FirstPrevNext
Subject  Author Date 
NewsASP.NET Signature Capturememberjay_dubal1:33 26 Aug '08  
Generalgetting error during save the filemembersouravmoy sau3:44 18 Jun '08  
QuestionRunning with parameter (e.g. Filename)memberconny1236:06 19 Nov '07  
GeneralHow can I give a BackgroundImage for the Control.memberajsri772:02 27 Sep '07  
GeneralWM 60membersmidz5:14 15 Aug '07  
GeneralConversion to JPGmemberSambora7:22 20 Jul '07  
GeneralRe: Conversion to JPGmemberRajeshNayak8:35 20 Jul '07  
GeneralRe: Conversion to JPGmemberSambora8:41 20 Jul '07  
Generaladd to wordmembersimon25021:37 13 Jul '07  
GeneralRe: add to wordmemberRajeshNayak2:23 13 Jul '07  
GeneralSignature Control on Windows TabmemberHaroon Khokhar21:35 24 Jun '07  
GeneralRe: Signature Control on Windows TabmemberRajeshNayak2:09 13 Jul '07  
QuestionJust black and white imagememberSergey Kamenev14:52 31 May '07  
AnswerRe: Just black and white imagememberRajeshNayak2:11 13 Jul '07  
QuestionSignature Capture in VB.NETmemberShashidhar19:28 19 Apr '07  
AnswerRe: Signature Capture in VB.NETmemberRajeshNayak2:13 13 Jul '07  
Generalcannot capture mouse event on tabpagememberAmit Singh1:34 4 Feb '07  
GeneralRe: cannot capture mouse event on tabpagememberFrancisco Perez Menacho11:22 30 Mar '07  
GeneralRe: cannot capture mouse event on tabpagememberRajeshNayak2:16 13 Jul '07  
Generalnot workingmemberMaha Ibrahim22:51 2 Dec '06  
GeneralRe: not workingmemberRajeshNayak6:16 3 Dec '06  
GeneralRe: not workingmemberMaha Ibrahim21:54 3 Dec '06  
GeneralRe: not workingmemberRajeshNayak2:17 13 Jul '07  
GeneralRe: not workingmemberdravisha6:44 21 Aug '07  
GeneralPicture Box Imagememberribeirovski7:20 21 Nov '06  

General General    News News    Question Question    Answer Answer    Joke Joke    Rant Rant    Admin Admin   

PermaLink | Privacy | Terms of Use
Last Updated: 6 Sep 2006
Editor: Smitha Vijayan
Copyright 2006 by RajeshNayak
Everything else Copyright © CodeProject, 1999-2008
Web08 | Advertise on the Code Project