mirror of
https://codeberg.org/streams/streams.git
synced 2024-09-20 05:35:12 +00:00
62 lines
No EOL
1.3 KiB
PHP
62 lines
No EOL
1.3 KiB
PHP
<?php /** @file */
|
|
|
|
namespace Zotlabs\Daemon;
|
|
|
|
|
|
class Thumbnail {
|
|
|
|
static public function run($argc,$argv) {
|
|
|
|
if(! $argc == 2)
|
|
return;
|
|
|
|
$c = q("select * from attach where hash = '%s' ",
|
|
dbesc($argv[1])
|
|
);
|
|
|
|
if(! $c)
|
|
return;
|
|
|
|
$preview_style = intval(get_config('system','thumbnail_security',0));
|
|
|
|
$attach = $c[0];
|
|
$isize = 300;
|
|
|
|
if(strpos($attach['filetype'],'text/') !== false) {
|
|
$stream = @fopen($attach['content'],'rb');
|
|
if($stream) {
|
|
$content = trim(stream_get_contents($stream,4096));
|
|
$content = str_replace("\r",'',$content);
|
|
$content_a = explode("\n",$content);
|
|
}
|
|
if($content_a) {
|
|
$fsize = 4;
|
|
$lsize = 8;
|
|
$image = imagecreate($isize,$isize);
|
|
imagecolorallocate($image,255,255,255);
|
|
$colour = imagecolorallocate($image,0,0,0);
|
|
$border = imagecolorallocate($image,64,64,64);
|
|
|
|
$x1 = 0;
|
|
$y1 = 0;
|
|
$x2 = ImageSX($image) - 1;
|
|
$y2 = ImageSY($image) - 1;
|
|
|
|
for($i = 0; $i < 2; $i++) {
|
|
ImageRectangle($image, $x1++, $y1++, $x2--, $y2--, $border);
|
|
}
|
|
|
|
foreach($content_a as $l => $t) {
|
|
$l = $l + 1;
|
|
$x = 3;
|
|
$y = ($l * $lsize) + 3 - $fsize;
|
|
imagestring($image,1,$x,$y,$t,$colour);
|
|
if(($l * $lsize) >= $isize) {
|
|
break;
|
|
}
|
|
}
|
|
imagejpeg($image,$attach['content'] . '.thumb');
|
|
}
|
|
}
|
|
}
|
|
} |