Specifications

-
60
-
12.3 Example of program by Visual C++
Following is the Visual C++ 6.0 program list using MFC library.
// Get the DEVMODE structure of printer to use
// lpdevmode is the pointer for got DEVMODE structure
// Generate device context of specified printer
HDC hdc;
hdc = CreateDC(_T("CITIZEN CT-S2000"), _T("CITIZEN CT-S2000"), NULL, lpdevmode);
if (!hdc) return;
// Attach the printer device context to CDC
CDC PrinterCDC;
PrinterCDC.Attach(hdc);
// Make Print-Job
DOCINFO docInfo;
memset(&docInfo, 0, sizeof(docInfo));
docInfo.cbSize = sizeof(docInfo);
docInfo.lpszDocName = _T("Driver Print Test");
docInfo.lpszOutput = NULL;
docInfo.lpszDatatype = NULL;
docInfo.fwType = NULL;
// Start printing
int ypos = 0;
PrinterCDC.StartDoc(&docInfo);
PrinterCDC.StartPage();
// Windows font
CFont setFont;
CFont* poldFont;
CSize setSize;
CString txtPrintData;
setFont.CreatePointFont(10*10, _T("Arial"), &PrinterCDC);
poldFont = PrinterCDC.SelectObject(&setFont);
txtPrintData = _T("Font Arial / Size 10");
setSize = PrinterCDC.GetTextExtent(txtPrintData);
PrinterCDC.TextOut(0, ypos, txtPrintData);
PrinterCDC.SelectObject(poldFont);
setFont.DeleteObject();
ypos += setSize.cy;
// Printer font
setFont.CreatePointFont(12*10, _T("15 cpi"), &PrinterCDC);
poldFont = PrinterCDC.SelectObject(&setFont);
txtPrintData = _T("15 cpi / Size 12");
setSize = PrinterCDC.GetTextExtent(txtPrintData);
PrinterCDC.TextOut(0, ypos, txtPrintData);
PrinterCDC.SelectObject(poldFont);
setFont.DeleteObject();
ypos += setSize.cy;
// Barcode
setFont.CreatePointFont(42*10, _T("Code39"), &PrinterCDC);
poldFont = PrinterCDC.SelectObject(&setFont);
txtPrintData = _T("ABC123456");
setSize = PrinterCDC.GetTextExtent(txtPrintData);
PrinterCDC.TextOut(0, ypos, txtPrintData);