////////////////////////////////////////////////////////////////////////// / ////////////////////////////
// wuhan explore Computer Studio //
//http://tansuo.51.net//
////////////////////////////////////////////////////////////////////////// / ////////////////////////////
// Ajouter pour personnaliser la spécification du papier
// Papername: nom de papier personnalisé
// Paperwidth: La largeur du papier, en unités de 0,1 mm
// PaperLength: la hauteur du papier, en unités de 0,1 mm
Procéduretdm.AddCustomPaper (constpapername: String; PaperWidth, PaperLength: Integer);
var
Printdevice, printdriver, printport: array [0..255] ofchar;
HDMODE: Thandle;
Hprinter: Thandle;
Forminfo: Tforminfo1;
Commencer
Imprimante.getPrinter (printdevice, printdriver, printport, hdmode);
OpenPrinter (printDevice, hPrinter, nil);
ifhprinter = 0Then
RAISEException.Create («Rejoindre l'imprimante a échoué!»);
avec Forminfodo
Commencer
Flags: = form_user;
pname: = pChar (papername);
Size.cx:=paperwidth*100;
Size.cy:==paperLength*100;
ImageAlbleArea.left: = 0;
ImageAlbleArea.top:=0;
ImageAlbleArea.Right: = Paperwidth * 100;
ImageAlbleArea.bottom: = PaperLength * 100;
fin;
// modifie le type de papier, sinon, en ajouter de nouveaux
ifnotSetForm (hPrinter, pChar (papername), 1, @ forminfo) puis
Addform (hPrinter, 1, @ forminfo);
ClosePrinter (hPrinter);
fin;
// Supprimer le document de spécification personnalisé
// Papername: nom de papier personnalisé
procéduretdm.deleTeTustomPaper (constpapername: string);
var
Printdevice, printdriver, printport: array [0..255] ofchar;
HDMODE: Thandle;
Hprinter: Thandle;
Commencer
Imprimante.getPrinter (printdevice, printdriver, printport, hdmode);
OpenPrinter (printDevice, hPrinter, nil);
ifhprinter = 0Then
RAISEException.Create («Rejoindre l'imprimante a échoué!»);
DeleteForm (hPrinter, pChar (papername));
ClosePrinter (hPrinter);
fin;