Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Работа с рисунком типа .tga

383
06 января 2008 года
zoh
237 / / 03.04.2005
Приветствую!

Необходимо сделать миниатюры для изображений типа .tga
Есть на jpg но для tga не формирует рисуннки.
В библиотеке не нащёл такой формат; помоги с этим.

Заранее спасибо!
15
07 января 2008 года
shaelf
2.7K / / 04.05.2005
Ты бы хоть указал с помощью чего пытался жать (уменьшать). Вообще я про такой формат не слышал и не уверен, что стандартными средствами можно жать (если только через какую нить внешнюю утилитку).
251
07 января 2008 года
SkyMаn
1.7K / / 31.07.2007
Вот пример. От него и танцуй.
Код:
<?php
function imagecreatefromtga ( $filename, $return_array = 0 )
{
    $handle = fopen ( $filename, 'rb' );
    $data = fread ( $handle, filesize( $filename ) );
    fclose ( $handle );
   
    $pointer = 18;
    $x = 0;
    $y = 0;
    $w = base_convert ( bin2hex ( strrev ( substr ( $data, 12, 2 ) ) ), 16, 10 );
    $h = base_convert ( bin2hex ( strrev ( substr ( $data, 14, 2 ) ) ), 16, 10 );
    $img = imagecreatetruecolor( $w, $h );

    while ( $pointer < strlen ( $data ) )
    {
        imagesetpixel ( $img, $x, $y, base_convert ( bin2hex ( strrev ( substr ( $data, $pointer, 3 ) ) ), 16, 10 ) );
        $x++;

        if ($x == $w)
        {
            $y++;
            $x=0;
        }

        $pointer += 3;
    }
   
    if ( $return_array )
        return array ( $img, $w, $h );
    else
        return $img;
}
?>
Использование:
Код:
<?php
// Get the image & its dimensions
$array = imagecreatefromtga("source_image.tga",1);

// the image ( resource image )
$image = $array[0];

// its dimensions ( integers )
$dimensions['width'] = $array[1];
$dimensions['height'] = $array[2];

// Delete the image resource array entry to free memory
imagedestroy($array[0]);
?>
Вторая переменная - $return_array - опциональная. Если хочешь просто загрузить TGA, не указывай второй параметр:
Код:
<?
// Return the resource image alone
$resource_image = imagecreatefromtga ( "source_image.tga" );

// Declare the content-type as a JPEG image.
header ( 'Content-type: image/jpeg' );

// Convert the image to JPEG for smaller file size and compatability
imagejpeg ( $resource_image, NULL, 100 );
imagedestroy ( $resource_image );
?>
383
10 января 2008 года
zoh
237 / / 03.04.2005
Спасибо
383
27 января 2008 года
zoh
237 / / 03.04.2005
Решил вернуться к теме.
Алгоритм перекодирует в jpg не совсем так.
я бы сказал ни как.
http://market.visboo.com/demon.php

просто наплывы какие-то.
Помогите, в интернете ничего путного не нашёл -(
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог