Solved

Printing directly to a printer

Posted on 1998-10-12
4
227 Views
Last Modified: 2010-04-06
I am using Delphi3.02. Is there a way to print directly to the printer? I need to print individual mailing labels to an epson printer (4013 labels) and qreport doesn't seem to cut it.
0
Comment
Question by:jfreisen
4 Comments
 
LVL 10

Expert Comment

by:viktornet
ID: 1342598
What do you need to print directly to the prinet??? Simple text, bitmap, other images???

Vik
0
 
LVL 3

Expert Comment

by:philipleighs
ID: 1342599
Hi,

You should avoid printing to the printer directly. Let your epson printer driver do this for you.

You don't have to use quick reports though.

Consider using the Canvas property of the Printer object to do your drawing.
Something like this:

Printer.BeginDoc;
Printer.Canvas.TextOut(100, 100, "Some text");
Printer.EndDoc;

You can get the width of the page (in pixels) using the Printer.Width property. Change the font using Printer.Font (or Printer.Canvas.Font, I forget which one).

You'll be in for more work than using quick report though.
Why is it that quick report doesn't do that you need?

Phil.

0
 
LVL 8

Accepted Solution

by:
Answers2000 earned 100 total points
ID: 1342600
OpenPrinter, WritePrinter, ClosePrinter APIs let you send data directly to a printer.

You can call these form Delphi.

You are then responsible for sending all escape codes, etc.
0
 

Author Comment

by:jfreisen
ID: 1342601
I have a program that prints one to two labels at a time to an Epson printer(4013 labels). I have not been able to get it to work with Qreport2.0k so that it prints 1-2 labels and does not do a form feed. I am using Nt and 95 and setting up the printers are a little bit different(custom paper size, Form feeds, ect).
0

Featured Post

How your wiki can always stay up-to-date

Quip doubles as a “living” wiki and a project management tool that evolves with your organization. As you finish projects in Quip, the work remains, easily accessible to all team members, new and old.
- Increase transparency
- Onboard new hires faster
- Access from mobile/offline

Join & Write a Comment

The uses clause is one of those things that just tends to grow and grow. Most of the time this is in the main form, as it's from this form that all others are called. If you have a big application (including many forms), the uses clause in the in…
This article explains how to create forms/units independent of other forms/units object names in a delphi project. Have you ever created a form for user input in a Delphi project and then had the need to have that same form in a other Delphi proj…
This video shows how to remove a single email address from the Outlook 2010 Auto Suggestion memory. NOTE: For Outlook 2016 and 2013 perform the exact same steps. Open a new email: Click the New email button in Outlook. Start typing the address: …
When you create an app prototype with Adobe XD, you can insert system screens -- sharing or Control Center, for example -- with just a few clicks. This video shows you how. You can take the full course on Experts Exchange at http://bit.ly/XDcourse.

746 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

Need Help in Real-Time?

Connect with top rated Experts

17 Experts available now in Live!

Get 1:1 Help Now