» » » » Иконка из Java-приложения средствами PHP

Иконка из Java-приложения средствами PHP

 

Скрипт извлекает пиктограмку из jar-файла

if(!isset($_GET['jar']))die("Не указан параметр jar!");
 
$zip = new ZipArchive;
if ($zip->open(base64_decode($_GET['jar'])) === TRUE) {
   if($manifest = $zip->getFromName('META-INF/MANIFEST.MF')){
    if (strpos($manifest, 'MIDlet-Icon: ') !== FALSE){
            $jad = explode('MIDlet-Icon: ',$manifest);
            $icon = str_replace("\n",' ', $jad[1]);
            $icon = str_replace("\r",' ', $icon);
            $icon = strtok($icon,' ');
            $icon = preg_replace('#^/#', NULL, $icon);
        }else $icon='icon.png';
   }else exit;
 
if($image = $zip->getFromName($icon)){
   $image = imagecreatefromstring($image);
   $width=imagesx($image);
   $height=imagesy($image);
   $x_ratio=16/$width;
   $y_ratio=16/$height;
   if(($width<=16)&&($height<=16)){
      $tn_width=$width;
      $tn_height=$height;
   }elseif(($x_ratio*$height)<16){
      $tn_height=ceil($x_ratio*$height);
      $tn_width=16;
   }else{
      $tn_width=ceil($y_ratio*$width);
      $tn_height=16;
   }
   $dst=ImageCreate($tn_width,$tn_height);
   imagecopyresampled($dst, $image, 0, 0, 0, 0, $tn_width,$tn_height,$width,$height);
   $image = $dst;
}else{
  //иконка по умолчанию, если в архиве нет иконки
  $image = imagecreatefrompng('default_icon.png');
}
 
header('Content-type: image/png');
ImagePng($image);
ImageDestroy($image);
$zip->close();
}


Пример вызова:

<img src=\"icon.php?jar='.base64_encode('java_game.jar').'\"/>

скачать dle 11.0фильмы бесплатно
[xfgiven_url] [/xfgiven_url] [xfgiven_vbversion][/xfgiven_vbversion] [xfgiven_modversion][/xfgiven_modversion] [xfgiven_supported][/xfgiven_supported] [xfgiven_dbchanges][/xfgiven_dbchanges] [xfgiven_codechanges][/xfgiven_codechanges] [xfgiven_usesplugins][/xfgiven_usesplugins] [xfgiven_templateedit][/xfgiven_templateedit] [xfgiven_autotemplate][/xfgiven_autotemplate] [xfgiven_addfiles][/xfgiven_addfiles] [xfgiven_translations][/xfgiven_translations]

Дополнительная информация : Extra Info

Источник
Версия Vbulletin:Vbulletin version[xfvalue_vbversion]
Версия модуля:Mod version[xfvalue_modversion]
Поддержка: Supported:[xfvalue_supported]
Изменение БД: DB changes:[xfvalue_dbchanges]
Правка кода: Code changes:[xfvalue_codechanges]
Плагины: Use plugins:[xfvalue_usesplugins]
Правка шаблонов: Template edits:[xfvalue_templateedit]
Автоправка шаблонов: Auto Template:[xfvalue_autotemplate]
Доп.файлы: Add files:[xfvalue_addfiles]
Доп. языки: Translations:[xfvalue_translations]

File engine/modules/userbox.php not found.

Комментариев пока нет, добавьте свой!

Информация

Посетители, находящиеся в группе Гости, не могут оставлять комментарии к данной публикации.

{mainlink_code_links}
{mainlink_code_ads}
{sape_links}
File engine/modules/ed-shortbar/bar.php not found.