This C# API provides a simple address label printing capability for Windows applications, based on the .NET PrintDocument class. The API can automatically generate sheets of labels using popular Avery address label codes.
Be the first to post a text review of Address Label Printing API for Windows. Rate and review a project by clicking thumbs up or thumbs down in the right column.
I have just received a mail shot from a client who is using a bespoke package (written by yours truly) to manage their mailing list. The address label api is a component of their solution. The letter arrived today with a very tidy address label stuck on the envelope. Its particularly nice to receive; the client had tried using a printing company to mass produce printed envelopes (and they had made a real mess of the address data). Pete
I thought it was about time I stress tested this little API. I used a modified demo app; no printer dialog... several thousand labels added to a label set and sent directly to a print preview dialog. Test machine ============ Sempron 2800/1Gbyte/XP Home SP2 Label type; L7163 Run under VC# Studio 2005 in debug Here are the results; Test 1) 10,000 Labels ===================== Time to Complete; <10 seconds Virtual Memory Utilisation; 30Mb Test 2) 50,000 Labels ===================== Time to Complete; <1 minute Virtual Memory Utilisation; 55Mb Test 3) 100,000 Labels ====================== - API stable but... - Print Preview dialog highly unstable above 4000 sheets, believe print preview dialog can't cope with huge print jobs Conclusions =========== Some conclusions; 1) Generating huge labels sets in one operation is likely to exhaust memory. Large runs might require batching. 2) The API can generate print labels at around 100 pages x 20 labels a sec... so the database or printer is more likely to be the bottleneck in an application 3) Print Preview dialog can't cope with very large documents >1000 pages. 4) A bespoke Print Preview may be needed for large label sets OR you could offer a preview of the first page, then send the rest direct to print. 5) A generous donation in kind (a machine with more memory and dual core CPU) or in cash, perhaps from a label stationery manufacturer, would allow me to test more thoroughly :) Contact me for details.
...you need the ability to reprint page ranges. So I've modified the code to allow you to set page ranges in the common print dialog. You only need to reprint the sheet that's been chewed up. Pete.
0.1.1 - Modified labelset.cs to adds support for print page ranges
0.1.1 - Modified labelset.cs to adds support for print page ranges
Be the first person to add a text review.
Copyright © 2010 Geeknet, Inc. All rights reserved. Terms of Use
Thanks for your rating!
Would you also like to write a review?
Thanks for your review!
Get credit for your review by logging in via OpenID. Click your account provider: