小弟目前用一般的印表機列印條碼,可能是方法不好!印出來的品質不佳,懇請各位大大,幫忙提供「好方法」!
#include
#pragma hdrstop #include "Unit1.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma link "BARCODELib_OCX"
#pragma resource "*.dfm"
TForm1 *Form1;
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
: TForm(Owner)
{
}
//---------------------------------------------------------------------------
void __fastcall TForm1::FormCreate(TObject *Sender)
{
ComboBox1->Text = "3";
ComboBox2->ItemIndex = 6;
BarCodeCtrl1->ShowData = false;
ImageBack->Width = BarCodeCtrl1->Width;
ImageBack->Height = BarCodeCtrl1->Height;
ImageBack->Left = BarCodeCtrl1->Left;
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Edit3Change(TObject *Sender)
{
BarCodeCtrl1->Value = Edit3->Text;
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button1Click(TObject *Sender)
{
PrinterSetupDialog1->Execute();
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button3Click(TObject *Sender)
{
Close();
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Panel1Click(TObject *Sender)
{
if (ColorDialog1->Execute())
Panel1->Color = ColorDialog1->Color;
BarCodeCtrl1->BackColor = Panel1->Color;
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Panel2Click(TObject *Sender)
{
if (ColorDialog1->Execute())
Panel2->Color = ColorDialog1->Color;
BarCodeCtrl1->ForeColor = Panel2->Color;
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button2Click(TObject *Sender)
{
PrintDialog1->Execute();
}
//---------------------------------------------------------------------------
void __fastcall TForm1::ComboBox1Change(TObject *Sender)
{
BarCodeCtrl1->LineWeight = StrToInt(ComboBox1->Text);
}
//---------------------------------------------------------------------------
void __fastcall TForm1::ComboBox2Change(TObject *Sender)
{
BarCodeCtrl1->Style = ComboBox2->ItemIndex;
}
//---------------------------------------------------------------------------
void __fastcall TForm1::CheckBox1Click(TObject *Sender)
{
if(BarCodeCtrl1->ShowData)
BarCodeCtrl1->ShowData = false;
else
BarCodeCtrl1->ShowData = true;
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button4Click(TObject *Sender)
{
Graphics::TBitmap*BMP=new Graphics::TBitmap();
TCanvas *MyCanvas= new TCanvas;;
TRect rect = BarCodeCtrl1->ClientRect;
HDC dc = GetDC(BarCodeCtrl1->Handle);
MyCanvas->Handle = dc;
BMP->Width = rect.Right - rect.Left;
BMP->Height = rect.Bottom - rect.Top;
BMP->Canvas->CopyRect(rect,MyCanvas,rect); //利用Canvas->CopyRect方法,複製TBitmap中的局部影像到TImage元件中
ImageBack->Picture->Assign(BMP); //TBitmap元件可以用來儲存Image元件上的圖形資料
delete MyCanvas;
delete BMP;
}
//---------------------------------------------------------------------------