source: pmb4.1/trunk/fuentes/pmb/circ/carte-lecteur.inc.php @ 478

Last change on this file since 478 was 478, checked in by mabarracus, 4 years ago

copy trusty code 4.1

  • Property svn:executable set to *
File size: 4.4 KB
Line 
1<?php
2// +-------------------------------------------------+
3// © 2002-2004 PMB Services / www.sigb.net pmb@sigb.net et contributeurs (voir www.sigb.net)
4// +-------------------------------------------------+
5// $Id: carte-lecteur.inc.php,v 1.9 2007-03-10 09:03:17 touraine37 Exp $
6
7if (stristr($_SERVER['REQUEST_URI'], ".inc.php")) die("no access");
8
9// la largeur de la zone pour le nom
10$var = "pdfcartelecteur_largeur_nom";
11$largeur_nom = $$var;
12
13// la position en X
14$var = "pdfcartelecteur_pos_h";
15$pos_x = $$var;
16
17// la position en Y
18$var = "pdfcartelecteur_pos_v";
19$pos_y = $$var;
20
21// Valable du
22$var = "pdfcartelecteur_valabledu";
23$valabledu = $$var;
24// au
25$var = "pdfcartelecteur_valableau";
26$valableau = $$var;
27// Carte N°
28$var = "pdfcartelecteur_carteno";
29$carteno = $$var;
30
31// le texte qui apparait juste au dessus du code-barre
32$var = "pdfcartelecteur_biblio_name";
33eval ("\$bibli_name=\"".$$var."\";");
34
35// PARAMETRES
36// ----------
37//   cb_first : code barre de début
38//   nbr_cb : nombre de codes-barres à produire
39$cb_first="100000";
40$nbr_cb=1;
41
42define("CBG_NBR_X_CELLS",        4);     // Nombre d'étiquettes en largeur sur la page
43define("CBG_NBR_Y_CELLS",        19);     // Nombre d'étiquettes en hauteur
44
45// marges, mesures en mm
46define("CBG_LEFT_MARGIN",        6);
47define("CBG_RIGHT_MARGIN",       6);
48define("CBG_TOP_MARGIN",         13);
49define("CBG_BOTTOM_MARGIN",      13);
50
51// marges intérieures du bord de l'étiquette au code barre, mesures en mm
52define("CBG_INNER_LEFT_MARGIN",   4);
53define("CBG_INNER_RIGHT_MARGIN",  4);
54define("CBG_INNER_TOP_MARGIN",    1);
55define("CBG_INNER_BOTTOM_MARGIN", 1);
56
57// place allouée au nom de la bibliothèque, mesure en mm
58define("CBG_TEXT_HEIGHT",         2);
59// Taille de la police, en points
60define("CBG_TEXT_FONT_SIZE",      6);
61// Taille du texte du code-barre, 1 : le plus petit ; 5 : le plus grand
62define("CBG_CB_TEXT_SIZE",        3);
63// Résolution du code barre. Si vous augmentez ce paramètre, il faudra peut-être
64// augmenter la taille de la police. Une valeur faible produit un fichier moins volumineux
65define("CBG_CB_RES",              5);
66// l'apparence du code barre dépend étroitement de la résolution et de la taille du texte
67
68// Démarrage et configuration du pdf
69$nom_classe=$fpdf."_Etiquette";
70$ourPDF=new $nom_classe(CBG_NBR_X_CELLS, CBG_NBR_Y_CELLS);
71$ourPDF->Open();
72$ourPDF->addPage();
73$ourPDF->SetPageMargins(CBG_TOP_MARGIN, CBG_BOTTOM_MARGIN, CBG_LEFT_MARGIN, CBG_RIGHT_MARGIN);
74
75$requete = "SELECT id_empr, empr_cb, empr_nom, empr_prenom, empr_date_adhesion, empr_date_expiration, date_format(empr_date_adhesion, '".$msg["format_date"]."') as aff_empr_date_adhesion, date_format(empr_date_expiration, '".$msg["format_date"]."') as aff_empr_date_expiration FROM empr WHERE id_empr='$id_empr' LIMIT 1 ";
76$res = mysql_query($requete, $dbh);
77$empr = mysql_fetch_object($res);
78
79$xpos_top = 12;
80$ypos_left = 0;
81
82$ourPDF->SetFont($pmb_pdf_font, '', 14);
83$ourPDF->SetXY(($pos_x+40 - $largeur_nom/2), $pos_y);
84$ourPDF->MultiCell($largeur_nom, 7, $empr->empr_prenom." ".$empr->empr_nom, 0, "C", 0);
85
86$largeur_carteno = 70;
87$ourPDF->SetFont($pmb_pdf_font, '', 10);
88$ourPDF->SetXY(($pos_x+40 - $largeur_carteno/2), $pos_y+30);
89$ourPDF->MultiCell($largeur_carteno, 8, $carteno." ".$empr->empr_cb, 0, "C", 0);
90
91$largeur_valable = 70;
92$ourPDF->SetFont($pmb_pdf_font, '', 10);
93$ourPDF->SetXY(($pos_x+40 - $largeur_valable/2), $pos_y+35);
94$ourPDF->MultiCell($largeur_valable, 8, $valabledu." ".$empr->aff_empr_date_adhesion." ".$valableau." ".$empr->aff_empr_date_expiration, 0, "C", 0);
95
96$xpos = $pos_x + 16 ;
97$ypos = $pos_y+16 ;
98// code barre
99        $ourPDF->SetFont($pmb_pdf_font, '', CBG_TEXT_FONT_SIZE);
100        $ourPDF->SetCBFontSize(CBG_CB_TEXT_SIZE);
101        $ourPDF->SetCBXRes(CBG_CB_RES);
102        $ourPDF->SetCBStyle(BCS_ALIGN_CENTER | BCS_BORDER | BCS_DRAW_TEXT);
103        $cbwidth = $ourPDF->GetStickWidth() - CBG_INNER_LEFT_MARGIN - CBG_INNER_RIGHT_MARGIN;
104        $cbheight = $ourPDF->GetStickHeight() - CBG_INNER_TOP_MARGIN - CBG_INNER_BOTTOM_MARGIN;
105        if ($bibli_name != '') $cbheight -= CBG_TEXT_HEIGHT;
106        if ($bibli_name != "") {
107                $ourPDF->SetXY($xpos, $ypos + CBG_INNER_BOTTOM_MARGIN);
108                $ourPDF->Cell($ourPDF->GetStickWidth(), CBG_TEXT_HEIGHT, $bibli_name, 0, 0, 'C');
109                }
110        $x = $xpos + CBG_INNER_LEFT_MARGIN;
111        $y = $ypos + CBG_INNER_TOP_MARGIN;
112        if ($bibli_name != "") $y += CBG_TEXT_HEIGHT;
113        $ourPDF->DrawBarcode($empr->empr_cb, $x, $y, $cbwidth, $cbheight, 'c39');
114
115$ourPDF->SetLineWidth(1);
116$ourPDF->Rect($pos_x+10, $pos_y+14, 60, 17, "D");
117
118
119$ourPDF->Output();
120?>
Note: See TracBrowser for help on using the repository browser.