Danjel wrote:
> On 10 Jun., 23:44, Kim Emax <kime...@gmail.com> wrote:
>> Hej Leif
>> On 8 Jun., 15:54, "Leif Neland" <l...@neland.dk> wrote:
>>
>>> Er der nogen, der har lavet et modul, der kan generere pakkelabels
>>> til postdanmark i pdf?
>>
>>> Selve systemet med at lave data til edifact eller lign regner jeg
>>> med ikke er et problem for mig, det er blot definitionen af en
>>> label, der er problemet...
> Jeg har ikke noget der virker i php, men har lige (fået) lavet et
> modul til vores ordresystem.
> PostDanmark, er bl.a. lidt "picky" med stregkoden, jeg har en godkendt
> font, som er tilgængelig gratis på nettet, der hedder
> 17.IDAutomationHC39M .
> Et bette link:
http://www.idautomation.com/fonts/free/
>
> Jeg kunne godt være interesseret i dit modul når det er færdigt, hvis
> du får det til at virke, og hvis det er noget som du havde tænkt dig
> at dele ud af
>
Jeg har nu fået "reverse-ingeniered" (sp?) den pakkelabel, der kommer ud fra
webpack.
Jeg bruger tcpdf, der bl.a. bruges i phpmyadmin og PHPExcel.
tcpdf laver også stregkoderne; så mangler jeg bare at PostDanmark siger god
for dem, og giver mig nogle stregkodeintervaller...
<?php
// charset=utf-8
require_once('PHPExcel/Shared/PDF/tcpdf.php');
// Dummy data til test
$afsender="430000000\nJoachim von And\nPengetank alle 1\90210 Andeby";
$modtager="Anders And\Gåserødvej 13\90210 Andeby";
$tnt="01078523765DK"
$ordrenr=12345;
$bar1="12S054";
$bar2="2WTI45";
$pakketypetxt="Privatpakke";
$dato="11.06.2009";
$pdf = new TCPDF("L", "mm", "A4", true, 'UTF-8', false);
$pdf->SetCreator(PDF_CREATOR);
$pdf->SetAuthor('Leif Neland');
$pdf->SetTitle('Pakkelabel');
$pdf->SetSubject('Test');
$pdf->setPrintHeader(false);
$pdf->setPrintFooter(false);
$pdf->SetDefaultMonospacedFont(PDF_FONT_MONOSPACED);
define ('PDF_MARGIN_TOP', 5);
$pdf->SetMargins(5, 2,162);
$pdf->SetAutoPageBreak(FALSE, 5);
$pdf->setImageScale(PDF_IMAGE_SCALE_RATIO);
$pdf->setLanguageArray($l);
$pdf->SetFont('helvetica', 'B', 20);
$pdf->AddPage();
//rammer
$pdf->Rect(5,5,130,200);
$pdf->Line(5,93,135,93);
$pdf->Line(5,156,135,156);
$pdf->Line(5,176,135,176);
$pdf->Line(20,27,87,45);
$pdf->Line(20,45,87,27);
$pdf->ImageEps("POST-4F.EPS", 10,6,30);
$pdf->SetXY(125,0);
$pdf->Write(0, $pakketypetxt,'',0, 'R');
$pdf->Write1DBarcode($bar1, "C128A",90,77,43,15,0.350,
array('text' => true, 'font' => 'helvetica', 'fontsize' => 8,
'stretchtext' => 0));
if ($bar2>"") {
$pdf->Write1DBarcode($bar2, "C128A",18,160,35,15,0.350,
array('text' => true, 'font' => 'helvetica', 'fontsize' => 8,
'stretchtext' => 0));
};
$pdf->Write1DBarcode($tnt, "C39",18,180,95,24,0.350,
array('position' => 'S', 'text' => true, 'font' => 'helvetica',
'fontsize' => 12, 'stretchtext' => 1));
$pdf->SetFont('helvetica', 'B', 10);
$pdf->setXY(15,20);
$pdf->Cell(0, 10, 'AFSENDER', 0, 1, 'L');
$pdf->SetFont('helvetica', '', 9);
$pdf->setXY(18,26);
$pdf->MultiCell(0, 0, $afsender, 0, 1, 'L');
$pdf->SetFont('helvetica', 'B', 10);
$pdf->setXY(15,46);
$pdf->Cell(0, 10, 'MODTAGER', 0, 1, 'L');
$pdf->SetFont('helvetica', '', 11);
$pdf->setXY(18,56);
$pdf->MultiCell(0, 0, $modtager, 0, 1, 'L');
$pdf->SetFont('helvetica', '', 11);
$pdf->setXY(18,55);
$pdf->Cell(0, 0, "Ordrenr. ".$ordrenr, 0, 1, 'R');
$pdf->SetFont('helvetica', 'B', 11);
$pdf->setXY(20,150);
$pdf->Cell(0, 0, "Afsendt Dato:", 0, 1, 'L');
$pdf->SetFont('helvetica', '', 11);
$pdf->setXY(48,150);
$pdf->Cell(0, 0, $dato, 0, 1, 'L');
$pdf->SetFont('helvetica', 'B', 11);
$pdf->setXY(70,150);
$pdf->Cell(0, 0, "Kolli", 0, 1, 'L');
$pdf->SetFont('helvetica', '', 11);
$pdf->setXY(82,150);
$pdf->Cell(0, 0, "1 af 1", 0, 1, 'L');
$pdf->SetFont('helvetica', 'B', 11);
$pdf->setXY(98,150);
$pdf->Cell(0, 0, "Vægt", 0, 1, 'L');
$pdf->SetFont('helvetica', 'B', 11);
$pdf->setXY(125,150);
$pdf->Cell(0, 0, "Kg.", 0, 1, 'L');
$pdf->SetFont('helvetica', 'B', 40);
$pdf->setXY(98,132);
$pdf->Cell(0, 0, "IT", 0, 1, 'R');
$pdf->Output('pakkelabel.pdf', 'I');
?>