salve tutti.

sto cercando di estrapolare del testo da documenti pdf.
sto usando questa funzione:
function pdf2string ($sourceFile)
{
//print "chiamata pdf2string
";
$textArray = array ();
$objStart = 0;

$fp = fopen ($sourceFile, 'rb');
$content = fread ($fp, filesize ($sourceFile));
fclose ($fp);
//print $content;
//$searchTagStart = chr(13).chr(10).'stream';
$searchTagStart = 'stream';
//print $searchTagStart;
$searchTagStartLenght = strlen ($searchTagStart);
$objStart = strpos ($content, $searchTagStart, $objStart);
//print $objStart;
while (($objStart = strpos ($content, $searchTagStart, $objStart)) && ($objEnd = strpos ($content, 'endstream', $objStart+1)))
{
//print "
$objStart e finisce $objEnd
";
$data = substr ($content, $objStart + $searchTagStartLenght + 2, $objEnd - ($objStart + $searchTagStartLenght) - 2);
//print "Stringa:

" .$data."

";
$data = @gzuncompress($data);
if ($data != FALSE && strpos ($data, 'BT') !== FALSE && strpos ($data, 'ET') !== FALSE)
{
$textArray [] = ExtractText ($data);
} else {
if ($data == FALSE) print "False";
}

$objStart = $objStart < $objEnd ? $objEnd : $objStart + 1;
}

return $textArray;
}

function ExtractText ($postScriptData)
{
//print "Chiamata extracttext
";
while ((($textStart = strpos ($postScriptData, '(', $textStart)) && ($textEnd = strpos ($postScriptData, ')', $textStart + 1)) && substr ($postScriptData, $textEnd - 1) != '\\'))
{
$plainText .= substr ($postScriptData, $textStart + 1, $textEnd - $textStart - 1);
if (substr ($postScriptData, $textEnd + 1, 1) == ']') //this adds quite some additional spaces between the words
{
$plainText .= ' ';
}

$textStart = $textStart < $textEnd ? $textEnd : $textStart + 1;
}

return stripslashes ($plainText);
}


ORA IL problema e' che la funzione:

$data = @gzuncompress($data);

da un bel false e non capisco il perche'!

Qualcuno mi sa dare una mano. GRAZIE!