I create a .PNG image ( in Macromedia Fireworks ) which has an gif in
it in the top left corner and a lot of empty canvas space to the right.
I use about 10 text boxes on a form to populate that empty space with
text.
I then print the image ( from a picture box on my form) on a UPS
Thermal Printer ( label printer)
Problem is the resolution of the text is blurry.
I tried changing the image resolution but that made it print very
small.
I dont know if I should try a differnt image type other then .png.
The PC that prints the label is running XP. The below code is what
creates the image and prints it:
Private Sub btnMakeLabel_Click(ByVal sender As System.Object, ByVal e
As System.EventArgs) Handles Button1.Click
Dim imageName As String = "C:\Projects\Vitex\VPG_Small_3.png"
Dim i As Image = Image.FromFile(imageName)
Dim g As Graphics = Graphics.FromImage(i)
Dim sf As StringFormat =
CType(StringFormat.GenericTypographic.Clone(), StringFormat)
sf.Alignment = StringAlignment.Center
sf.LineAlignment = StringAlignment.Center
Dim dt As Date =
Date.Parse(Me.MonthCalendar1.SelectionRange.Start)
Dim lblMonth As Integer = dt.Month
Dim lblDay As Integer = dt.Day
'g.TextRenderingHint =
Drawing.Text.TextRenderingHint.AntiAliasGridFit
g.DrawString(lblMonth.ToString() + " " + lblDay.ToString(), New
Font("Helvetica", 9, GraphicsUnit.Pixel), Brushes.Black, New
RectangleF(65, 49, 50, 25), sf)
'g.DrawString("Set # ", New Font("Helvetica", 7,
GraphicsUnit.Point), Brushes.Black, New RectangleF(50, 34, 50, 25), sf)
g.DrawString(Me.txtSet.Text + "", New Font("Helvetica", 9,
GraphicsUnit.Pixel), Brushes.Black, New RectangleF(48, 49, 50, 25), sf)
g.DrawString(Me.txtBackroll.Text, New Font("Helvetica", 9,
GraphicsUnit.Pixel), Brushes.Black, New RectangleF(38, 49, 50, 25), sf)
g.DrawString("Op: " + Me.txtOperatorInitls.Text, New
Font("Helvetica", 9, GraphicsUnit.Pixel), Brushes.Black, New
RectangleF(5, 50, 50, 25), sf)
g.DrawString("Code: " + Me.txtCode.Text, New Font("Helvetica",
9, GraphicsUnit.Pixel), Brushes.Black, New RectangleF(38, 2, 100, 25),
sf)
g.DrawString("SO: " + Me.txtS0.Text, New Font("Helvetica", 9,
GraphicsUnit.Pixel), Brushes.Black, New RectangleF(155, 1, 60, 25), sf)
g.DrawString("Desc:" + Me.txtDescript1.Text, New
Font("Helvetica", 9, GraphicsUnit.Pixel), Brushes.Black, New
RectangleF(40, 12, 120, 25), sf)
g.DrawString(Me.txtDescript2.Text, New Font("Helvetica", 9,
GraphicsUnit.Pixel), Brushes.Black, New RectangleF(49, 22, 120, 25),
sf)
g.DrawString("PO: " + Me.txtPurchOrd.Text, New
Font("Helvetica", 9, GraphicsUnit.Pixel), Brushes.Black, New
RectangleF(38, 34, 80, 25), sf)
g.DrawString("Qty: " + Me.txtPressRepeats.Text, New
Font("Helvetica", 9, GraphicsUnit.Pixel), Brushes.Black, New
RectangleF(127, 17, 90, 60), sf)
g.DrawString("Roll # 1", New Font("Helvetica", 9,
GraphicsUnit.Pixel), Brushes.Black, New RectangleF(107, 30, 120, 60),
sf)
g.Dispose()
Me.PictureBox1.Image = i
End Sub
Private Sub btnPrintLabels_Click(ByVal sender As System.Object, ByVal e
As System.EventArgs) Handles Button2.Click
Try
'If you do not specify a printer it uses the default
'Me.PrntDoc_Img.PrinterSettings.PrinterName = "Canon
MF3110"
Me.PrntDoc_Img.DocumentName = "Vitex Label"
AddHandler PrntDoc_Img.PrintPage, AddressOf Me.pd_PrintPage
PrntDoc_Img.Print()
Catch ex As Exception
MessageBox.Show("An error occurred while printing", _
ex.ToString())
End Try
End Sub
' Specifies what happens when the PrintPage event is raised.
Private Sub pd_PrintPage(ByVal sender As Object, ByVal ev As
System.Drawing.Printing.PrintPageEventArgs)
' Draw a picture.
'ev.Graphics.
ev.Graphics.DrawImage(Me.PictureBox1.Image, _
ev.Graphics.VisibleClipBounds.Location)
' Indicate that this is the last page to print.
ev.HasMorePages = False
End Sub
End Class
Anything I can do to increase the text quality. 4 2109
Sounds like you're adding the text to the image and then printing the image.
You should probably send the image and then the text to the printer. The
printer driver will then render the text at the full resolution of the
printer.
"CG3000" <ca*************@yahoo.com> wrote in message
news:11**********************@u72g2000cwu.googlegr oups.com... I create a .PNG image ( in Macromedia Fireworks ) which has an gif in it in the top left corner and a lot of empty canvas space to the right.
I use about 10 text boxes on a form to populate that empty space with text.
I then print the image ( from a picture box on my form) on a UPS Thermal Printer ( label printer)
Problem is the resolution of the text is blurry.
I tried changing the image resolution but that made it print very small.
I dont know if I should try a differnt image type other then .png.
The PC that prints the label is running XP. The below code is what creates the image and prints it: Private Sub btnMakeLabel_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Dim imageName As String = "C:\Projects\Vitex\VPG_Small_3.png" Dim i As Image = Image.FromFile(imageName) Dim g As Graphics = Graphics.FromImage(i) Dim sf As StringFormat = CType(StringFormat.GenericTypographic.Clone(), StringFormat) sf.Alignment = StringAlignment.Center sf.LineAlignment = StringAlignment.Center Dim dt As Date = Date.Parse(Me.MonthCalendar1.SelectionRange.Start) Dim lblMonth As Integer = dt.Month Dim lblDay As Integer = dt.Day 'g.TextRenderingHint = Drawing.Text.TextRenderingHint.AntiAliasGridFit g.DrawString(lblMonth.ToString() + " " + lblDay.ToString(), New
Font("Helvetica", 9, GraphicsUnit.Pixel), Brushes.Black, New RectangleF(65, 49, 50, 25), sf) 'g.DrawString("Set # ", New Font("Helvetica", 7, GraphicsUnit.Point), Brushes.Black, New RectangleF(50, 34, 50, 25), sf)
g.DrawString(Me.txtSet.Text + "", New Font("Helvetica", 9, GraphicsUnit.Pixel), Brushes.Black, New RectangleF(48, 49, 50, 25), sf)
g.DrawString(Me.txtBackroll.Text, New Font("Helvetica", 9, GraphicsUnit.Pixel), Brushes.Black, New RectangleF(38, 49, 50, 25), sf)
g.DrawString("Op: " + Me.txtOperatorInitls.Text, New Font("Helvetica", 9, GraphicsUnit.Pixel), Brushes.Black, New RectangleF(5, 50, 50, 25), sf) g.DrawString("Code: " + Me.txtCode.Text, New Font("Helvetica", 9, GraphicsUnit.Pixel), Brushes.Black, New RectangleF(38, 2, 100, 25), sf) g.DrawString("SO: " + Me.txtS0.Text, New Font("Helvetica", 9, GraphicsUnit.Pixel), Brushes.Black, New RectangleF(155, 1, 60, 25), sf)
g.DrawString("Desc:" + Me.txtDescript1.Text, New Font("Helvetica", 9, GraphicsUnit.Pixel), Brushes.Black, New RectangleF(40, 12, 120, 25), sf) g.DrawString(Me.txtDescript2.Text, New Font("Helvetica", 9, GraphicsUnit.Pixel), Brushes.Black, New RectangleF(49, 22, 120, 25), sf) g.DrawString("PO: " + Me.txtPurchOrd.Text, New Font("Helvetica", 9, GraphicsUnit.Pixel), Brushes.Black, New RectangleF(38, 34, 80, 25), sf) g.DrawString("Qty: " + Me.txtPressRepeats.Text, New Font("Helvetica", 9, GraphicsUnit.Pixel), Brushes.Black, New RectangleF(127, 17, 90, 60), sf) g.DrawString("Roll # 1", New Font("Helvetica", 9, GraphicsUnit.Pixel), Brushes.Black, New RectangleF(107, 30, 120, 60), sf) g.Dispose() Me.PictureBox1.Image = i End Sub Private Sub btnPrintLabels_Click(ByVal sender As System.Object, ByVal e
As System.EventArgs) Handles Button2.Click Try 'If you do not specify a printer it uses the default 'Me.PrntDoc_Img.PrinterSettings.PrinterName = "Canon MF3110" Me.PrntDoc_Img.DocumentName = "Vitex Label" AddHandler PrntDoc_Img.PrintPage, AddressOf Me.pd_PrintPage
PrntDoc_Img.Print() Catch ex As Exception MessageBox.Show("An error occurred while printing", _ ex.ToString()) End Try
End Sub ' Specifies what happens when the PrintPage event is raised. Private Sub pd_PrintPage(ByVal sender As Object, ByVal ev As System.Drawing.Printing.PrintPageEventArgs) ' Draw a picture. 'ev.Graphics. ev.Graphics.DrawImage(Me.PictureBox1.Image, _ ev.Graphics.VisibleClipBounds.Location)
' Indicate that this is the last page to print. ev.HasMorePages = False End Sub End Class
Anything I can do to increase the text quality.
I am adding the text to the image and then printing it.
How do you send the image and the text separate?
Ill be honest and see I know how to print ONE document at a time. Not
send a document in "pieces"
I use VB6 and have only used dot net a couple of times (don't even have it
installed at work yet). But I would assume that after you send the image to
the printer with:
ev.Graphics.DrawImage(Me.PictureBox1.Image,
ev.Graphics.VisibleClipBounds.Location)
You could then send the text.
ev.Graphics.DrawString(Me.txtSet.Text + "", New Font("Helvetica",
9,GraphicsUnit.Pixel), Brushes.Black, New RectangleF(48, 49, 50, 25), sf)
You will probably need to adjust the sizes of the font, and the rectangle as
you are now working with the printer units, not the image units. I think in
VB6 by default each inch = 1440 pixels... not sure what it is in dot net.
Hopefully this will point you in the right direction as I can't test it
here.
"CG3000" <ca*************@yahoo.com> wrote in message
news:11**********************@z34g2000cwc.googlegr oups.com... I am adding the text to the image and then printing it.
How do you send the image and the text separate?
Ill be honest and see I know how to print ONE document at a time. Not send a document in "pieces"
Enfor thank you. I think you are right.
I did what you said in a small test and it worked.
I dont understand GDI+ to a greath depth but I read this has something
to do with the text resolution being separate from the PCs resolution.
Ill let you know after I add all my text box values. I initially tried
one text box value and I saw a HUGE diff in the resolution. This thread has been closed and replies have been disabled. Please start a new discussion. Similar topics
by: Chris Beall |
last post by:
I'm struggling with how to handle, on a web page, images that contain
text that the user must be able to read. Examples: tombstone photos,
photos or scans of historic documents (handwritten or...
|
by: Ben Amada |
last post by:
Hi group. I'm going to display a low resolution image in an HTML page. On
the web server, I have a high resolution version of that image. If I
display the high resolution image in the browser...
|
by: UJ |
last post by:
My client wants to have some text scale appropriately depending on the
resolution of the screen. This is very much like the way that flash works in
that as the area being displayed gets bigger, the...
|
by: Roger Withnell |
last post by:
How to I find out what size text the browser is set to?
Thanks in anticipation.
|
by: CG3000 |
last post by:
I create a .PNG image ( in Macromedia Fireworks ) which has an gif in
it in the top left corner and a lot of empty canvas space to the right.
I use about 10 text boxes on a form to populate that...
|
by: Andy Baxter |
last post by:
I have an image scrolling in a viewport for a panoramic image
viewer. The viewport can be resized to several set resolutions so people
can adjust the size according to their bandwidth. There are...
|
by: =?Utf-8?B?SlIx?= |
last post by:
I would like to add text to an image. I have tried to use DrawString and it
works on some images but on others it is very very small. I am pretty sure
it has something to do with the size of the...
|
by: bradyounie |
last post by:
I'm writing a program that displays a user-supplied Bitmap and then writes text fields to it. These "text fields" are things that the user can move around on the image, but to render them...
|
by: taylorcarr |
last post by:
A Canon printer is a smart device known for being advanced, efficient, and reliable. It is designed for home, office, and hybrid workspace use and can also be used for a variety of purposes. However,...
|
by: Charles Arthur |
last post by:
How do i turn on java script on a villaon, callus and itel keypad mobile phone
|
by: aa123db |
last post by:
Variable and constants
Use var or let for variables and const fror constants.
Var foo ='bar';
Let foo ='bar';const baz ='bar';
Functions
function $name$ ($parameters$) {
}
...
|
by: ryjfgjl |
last post by:
If we have dozens or hundreds of excel to import into the database, if we use the excel import function provided by database editors such as navicat, it will be extremely tedious and time-consuming...
|
by: BarryA |
last post by:
What are the essential steps and strategies outlined in the Data Structures and Algorithms (DSA) roadmap for aspiring data scientists? How can individuals effectively utilize this roadmap to progress...
|
by: nemocccc |
last post by:
hello, everyone, I want to develop a software for my android phone for daily needs, any suggestions?
|
by: Sonnysonu |
last post by:
This is the data of csv file
1 2 3
1 2 3
1 2 3
1 2 3
2 3
2 3
3
the lengths should be different i have to store the data by column-wise with in the specific length.
suppose the i have to...
|
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,...
|
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,...
| |