проблемы со штрих-кодом

olya_p

Guest
проблемы со штрих-кодом

Помогите разобраться!

У нас в программе используется штрих-код.
Когда был php 4.2.3 с библиотекой php_gd.dll штрих код нормально печатался и считывался.
php 4.3.2 с php_gd2.dll тоже.
А вот php 4.3.4 с php_gd2.dll штрих-код печатается с "тенью" и соответственно потом не считывается.

ОС 2000 server sp3. Apache 1.3.29

В чем может быть проблема?
 

lucas

Guest
штрих-код печатается с "тенью"
Это не объяснение проблемы.
Просмотри код, создающий изображение штрих-кода, и разберись, какая функция дает такой эффект.
 

olya_p

Guest
вот кусок кода:
PHP:
<?php
    $im = ImageCreate ($w, $h);
    $bg_color = ImageColorAllocate ($im, 255, 255, 255);
    $fg_color = ImageColorAllocate ($im, 0, 0, 0);

    list ($tx1, $ty1, $tx2, $ty1, $tx2, $ty2) = ImageTTFBBox ($pt, 0, $font, $string);
    $sw = ImageFontWidth ($f_size) * strlen ($string);
    $sh = ImageFontHeight ($f_size);

    if ($tx2 - $tx1 > $w)
        $x = 0;
    else
        $x = ($w - $tx2 + $tx1)>>1;
    ImageTTFText ($im, $pt, 0, $x, $h-$sh-1, $fg_color, $font, $string);

    if ($sw > $w)
        $x = 0;
    else
        $x = ($w - $sw) >> 1;
    ImageString ($im, $f_size, $x, $h-$sh, $string, $fg_color);

    ImagePNG ($im);
    ImageDestroy ($im);
?>
а как картинку в сообщение вставить?
 

IntenT

SkyDiver
olya_p
можно просто ссылку дать

-~{}~ 10.03.04 12:28:

olya_p
Здается мне тут дело в сглаживании шрифтов..
Если вернуть взад старую библиотеку от пхп 4.3.2?
 

olya_p

Guest
а будет ли работать библиотека от старого php?
 

tony2001

TeaM PHPClub
>Если вернуть взад старую библиотеку от пхп 4.3.2?
сам-то пробовал?

>а будет ли работать библиотека от старого php?
нет, не будет.
 

_RVK_

Новичок
Можно оффтоп?
tony2001 а почему не будет? Обычная динамическая библиотека, имена функций те же... Новые не юзаем....
 

tony2001

TeaM PHPClub
>Обычная динамическая библиотека
это ты про что так?
для того, чтобы он смог подгрузиться, нужно соотв-е как минимум 2-х параметров при сборке РНР и модуля:
1) версии API (которая в разных версиях PHP ессно разная)
2) был ли включен debug
 

_RVK_

Новичок
tony2001 те теоретически можно, да только PHP ругаться будет что версия библиотеки не та? Не могу с dll проверить, под линухом сижу....
 

olya_p

Guest
спасибо, разобралась.

там надо было убрать сглаживание цветов
вместо
PHP:
ImageTTFText ($im, $pt, 0, $x, $h-$sh-1, $fg_color, $font, $string);
использовать
PHP:
ImageTTFText ($im, $pt, 0, $x, $h-$sh-1, -1, $font, $string);
 
Сверху