public function code128($kdnr, $vorname, $nachname, $gender)
 {
     $barcode = 'S' . $kdnr;
     $oo = 1;
     $pruefziffer = $this->pruefen($kdnr);
     $label = $kdnr . ' ' . $pruefziffer;
     $f1 = 'Arial.ttf';
     $f2 = 8;
     $a1 = '';
     $a2 = NULL;
     $a3 = '';
     $t = 50;
     $r = 1;
     if ($f1 !== '0' && $f1 !== '-1' && intval($f2) >= 1) {
         //$font = new BCGFontFile(\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::extPath('woehrl_stylecardantrag') . '/Classes/Barcode/Font'. $f1, intval($f2));
         $font = new \BCGFontFile(\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::extPath('woehrl_stylecardantrag') . 'Classes/Barcode/Font/' . $f1, intval($f2));
     } else {
         $font = 0;
     }
     $color_black = new \BCGColor(0, 0, 0);
     $color_white = new \BCGColor(255, 255, 255);
     $codebar = 'BCGcode128';
     $drawException = null;
     try {
         $code_generated = new $codebar();
         if (isset($a1) && intval($a1) === 1) {
             $code_generated->setChecksum(true);
         }
         if (isset($a2) && !empty($a2)) {
             $code_generated->setStart($a2 === 'NULL' ? null : $a2);
         }
         if (isset($a3) && !empty($a3)) {
             $code_generated->setLabel($a3 === 'NULL' ? null : $a3);
         }
         $code_generated->setThickness($t);
         $code_generated->setScale($r);
         $code_generated->setBackgroundColor($color_white);
         $code_generated->setForegroundColor($color_black);
         $code_generated->setFont($font);
         $code_generated->setLabel($label);
         $code_generated->parse($barcode);
     } catch (Exception $exception) {
         $drawException = $exception;
     }
     $drawing = new \BCGDrawing('./uploads/tx_woehrlstylecardantrag/' . $kdnr . '.png', $color_white);
     if ($drawException) {
         $drawing->drawException($drawException);
     } else {
         $drawing->setBarcode($code_generated);
         $drawing->setRotationAngle('0');
         $drawing->setDPI('72');
         $drawing->draw();
     }
     $drawing->finish(intval($oo));
     $image1 = imageCreateFromjpeg("./typo3conf/ext/woehrl_stylecardantrag/Resources/Public/Images/Woehrl-stylecard-Kundenkarte.jpg");
     $image2 = imageCreateFromPNG('./uploads/tx_woehrlstylecardantrag/' . $kdnr . '.png');
     imageCopy($image1, $image2, 28, 125, 0, 0, 123, 62);
     $color = ImageColorAllocate($image1, 255, 255, 255);
     $font_file = \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::extPath('woehrl_stylecardantrag') . '/Classes/Barcode/Font/Arial.ttf';
     if (strlen($vorname . ' ' . $nachname) < 24) {
         imagefttext($image1, 11, 0, 25, 70, $color, $font_file, $gender);
         imagefttext($image1, 11, 0, 25, 90, $color, $font_file, $vorname . ' ' . $nachname);
     } else {
         imagefttext($image1, 11, 0, 25, 70, $color, $font_file, $gender);
         imagefttext($image1, 11, 0, 25, 90, $color, $font_file, $nachname);
     }
     imagefttext($image1, 11, 0, 25, 110, $color, $font_file, $kdnr);
     if (imagejpeg($image1, './uploads/tx_woehrlstylecardantrag/stylecard_' . $kdnr . '.jpg', 100)) {
         return './uploads/tx_woehrlstylecardantrag/stylecard_' . $kdnr . '.jpg';
     }
 }
Example #2
0
public function updateImage1($picname,$path,$prix="s_",$maxwidth=104,$maxheight=104){
	//1. 定义获取基本信息
	$path = rtrim($path,"/"); //去除后面多余的"/"
	$info1 = getimagesize($path."/".$picname);  //获取图片文件的属性信息
	$width = $info1[0]; //原图片的宽度
	$height = $info1[1]; //原图片的高度
	
	//2. 计算压缩后的尺寸
	if(($maxwidth/$width)<($maxheight/$height)){
		$w=$maxwidth;//新图片的宽度
		$h=($maxwidth/$width)*$height;//新图片的高度
	}else{
		$h=$maxheight;//新图片的宽度
		$w=($maxheight/$height)*$width;//新图片的高度
	}


	//3. 创建图像源
	$newim =imagecreateTrueColor($w,$h); //新图片源
	//根据原图片类型来创建图片源
	switch($info1[2]){
		case 1: //gif格式
			$srcim = imageCreateFromgif($path."/".$picname);
			break;
		case 2: //jpeg格式
			$srcim = imageCreateFromjpeg($path."/".$picname);
			break;
		case 3: //png格式
			$srcim = imageCreateFrompng($path."/".$picname);
			break;
		case 6: //bmp格式
			$srcim = imageCreateFrompng($path."/".$picname);
			break;
		default:
			exit("无效的图片格式!");
			break;
	}

	//4. 执行缩放处理
	imagecopyresampled($newim,$srcim,0,0,0,0,$w,$h,$width,$height);


	//5. 输出保存绘画
	//header("Content-Type:".$info['mime']); //设置响应类型为图片格式
	//根据原图片类型来保存新图片
	switch($info1[2]){
		case 1: //gif格式
			imagegif($newim,$path."/".$prix.$picname); //保存
			//imagegif($newim);//输出
			break;
		case 2: //jpeg格式
			imagejpeg($newim,$path."/".$prix.$picname);
			//imagejpeg($newim);
			break;
		case 3: //png格式
			imagepng($newim,$path."/".$prix.$picname);
			//imagepng($newim);
			break;
		case 6: //bmp格式
			imagebmp($newim,$path."/".$prix.$picname);
			break;
	}

	//6. 销毁资源
	imageDestroy($newim);
	imageDestroy($srcim);
}
Example #3
0
function ostatnie()
{
    //połączenie z bazą
    $servername = "localhost";
    $username = "******";
    $password = "******";
    $dbname = "xxxxxx";
    // Otworzenie połączenia z bazą
    $conn = new mysqli($servername, $username, $password, $dbname);
    // sprawdzenie połączenia
    if ($conn->connect_error) {
        die("Błąd połączenia z bazą danych: " . $conn->connect_error);
    }
    //połączenie z allegro
    $client = new SoapClient('https://webapi.allegro.pl/service.php?wsdl', array('trace' => true));
    $id = xxxxxxxxx;
    settype($numer, 'string');
    //filtry
    $options = array('filterId' => 'userId', 'filterValueId' => array($id));
    $options2 = array('filterId' => 'department', 'filterValueId' => array('electronics'));
    $options3 = array('filterId' => 'departmentPage', 'filterValueId' => array(0));
    $options4 = array('filterId' => 'category', 'filterValueId' => array('2'));
    $filters = array($options, $options3, $options2, $options4);
    $request = array('webapiKey' => 'xxxxxxxxxx', 'countryId' => '1', 'filterOptions' => $filters, 'resultScope' => '3');
    try {
        $array = $client->doGetItemsList($request);
    } catch (SoapFault $e) {
        echo $e->faultcode . '<br />';
        echo $e->faultstring;
    }
    //generowanie kodu aukcji
    //ustawienie ilosci okienek z aukcjami
    for ($i = 0; $i < 10; $i++) {
        //dane z allegro
        $text = $array->itemsList->item[$i]->itemTitle;
        //tytuł aukcji
        $id_aukcji = $array->itemsList->item[$i]->itemId;
        //pobranie numeru aukcji
        $url = $array->itemsList->item[$i]->photosInfo->item[1]->photoUrl;
        //link do obrazka z miniaturką UWAGA nie zawsze pierwszy obrazek jest najweikszej rozdzielczosci
        //zmienne
        $font = 'DroidSans.ttf';
        //czasmi trzeba ustawić cieżk bezwzgldna dla pliku
        $fontSize = 10;
        $lineHeight = 17;
        $polozenieNapisuOdGory = 100;
        $width = 128;
        //szerokość obrazka
        $height = 250;
        //wysokość obrazka
        $padding = 15;
        //padding tekstu jednostronny
        $kupTerazImg = 'teraz.jpg';
        //czasmi trzeba ustawić cieżk bezwzgldna dla pliku
        $fontSizeCena = 15;
        $cena = $array->itemsList->item[$i]->priceInfo->item[0]->priceValue . ' zł';
        $kupTeraz = 1;
        $kupTerazObraz = imageCreateFromjpeg($kupTerazImg);
        $polozenieCenyOdGory = 210;
        $polozenieCenyOdLewej = 40;
        $miniaturka = imageCreateFromjpeg($url);
        //miniaturka aukcji
        $filename = '/images/' . $i . '.jpg';
        //sciezka do pliku czasmi trzeba ustawić cieżk bezwzgldna
        //KONIEC ZMIENNYCH
        $obrazek_aukcji = imagecreatetruecolor($width, $height);
        //główny obrazek
        $white = imagecolorallocate($obrazek_aukcji, 255, 255, 255);
        $black = imagecolorallocate($obrazek_aukcji, 0, 0, 0);
        imagefill($obrazek_aukcji, 0, 0, $white);
        //wypełnienie obrazka białym tłem
        //wklejenie do głownego obrazka miniaturki aukcji (128 dotyczy standardowej miniaturki allegro)
        imagecopyresized($obrazek_aukcji, $miniaturka, 0, 0, 0, 0, 128, 96, 128, 96);
        $words = explode(' ', $text);
        $lines = array($words[0]);
        $currentLine = 0;
        // DODANIE TEKSTU AUKCJI DO OBRAZKA
        for ($x = 1; $x < count($words); $x++) {
            $titleLinesize = imagettfbbox($fontSize, 0, $font, $lines[$currentLine] . ' ' . $words[$x]);
            if ($titleLinesize[2] - $titleLinesize[0] <= $width - $padding * 2) {
                $lines[$currentLine] .= ' ' . $words[$x];
            } else {
                $currentLine++;
                $lines[$currentLine] = $words[$x];
            }
        }
        $whichLine = 1;
        foreach ($lines as $line) {
            $lineBoundBox = imagettfbbox($fontSize, 0, $font, "{$line}");
            $lineWidth = $lineBoundBox[0] + $lineBoundBox[2];
            $line_margin = round(($width - $lineWidth - $padding * 2) / 2);
            $linePositionY = $lineHeight * $whichLine;
            imagettftext($obrazek_aukcji, $fontSize, 0, $line_margin + $padding, $linePositionY + $polozenieNapisuOdGory, $black, $font, $line);
            $whichLine++;
        }
        //dodanie ceny
        imagettftext($obrazek_aukcji, $fontSizeCena, 0, $polozenieCenyOdLewej, $polozenieCenyOdGory, $black, $font, $cena);
        //dodanie obrazka jeśli kup teraz
        imagecopyresized($obrazek_aukcji, $kupTerazObraz, 0, 220, 0, 0, 128, 28, 128, 28);
        //finalne zapisanie obrazka na serwerze
        imagejpeg($obrazek_aukcji, $filename, 100);
        //przekazanie danych do bazy
        $sql = "UPDATE aukcje_allegro SET id_aukcji=" . $id_aukcji . " WHERE id_obrazka=" . $i;
        if ($conn->query($sql) === TRUE) {
        } else {
            echo "Error: " . $conn->error;
        }
    }
    //end of FOR
}
Example #4
0
<?php