Foros del Web » Programando para Internet » PHP »

PHP OO convertir pdf creado con fpdf en jpg

Estas en el tema de convertir pdf creado con fpdf en jpg en el foro de PHP en Foros del Web. Buenas, tengo una base de datos con el origen de los apellidos y se arman los pdf en el momento con fpdf. Ahora quiero que ...
  #1 (permalink)  
Antiguo 04/06/2014, 03:20
 
Fecha de Ingreso: mayo-2012
Mensajes: 9
Antigüedad: 12 años, 5 meses
Puntos: 2
convertir pdf creado con fpdf en jpg

Buenas, tengo una base de datos con el origen de los apellidos y se arman los pdf en el momento con fpdf. Ahora quiero que ese resultado me lo convierta en imagen jpg para mostrarlo asi al visitante. Mi servidor me ha pasado un script para convertir pdf en jpg y funciona, pero no se como adaptarlo para, en lugar de cargar el pdf del ordenador del visitante, lo cargue de una carpeta de mi servidor. El script que me han hecho es:
<?php
$message = "";
$display = "";
if($_FILES)
{
$output_dir = "uploads/";
ini_set("display_errors",1);
if(isset($_FILES["myfile"]))
{
$RandomNum = time();

$ImageName = str_replace(' ','-',strtolower($_FILES['myfile']['name']));
$ImageType = $_FILES['myfile']['type']; //"image/png", image/jpeg etc.

$ImageExt = substr($ImageName, strrpos($ImageName, '.'));
$ImageExt = str_replace('.','',$ImageExt);
if($ImageExt != "pdf")
{
$message = "Invalid file format only <b>\"PDF\"</b> allowed.";
}
else
{
$ImageName = preg_replace("/\.[^.\s]{3,4}$/", "", $ImageName);
$NewImageName = $ImageName.'-'.$RandomNum.'.'.$ImageExt;

move_uploaded_file($_FILES["myfile"]["tmp_name"],$output_dir. $NewImageName);

$location = "/usr/local/bin/convert";
$name = $output_dir. $NewImageName;
$num = count_pages($name);
$RandomNum = time();
$nameto = $output_dir.$RandomNum.".jpg";
$convert = $location . " " . $name . " ".$nameto;
exec($convert);
for($i = 0; $i<$num;$i++)
{
$display .= "<img src='$output_dir$RandomNum-$i.jpg' title='Page-$i' /><br>";
}
$message = "PDF converted to JPEG sucessfully!!";
}
}
}
function count_pages($pdfname) {
$pdftext = file_get_contents($pdfname);
$num = preg_match_all("/\/Page\W/", $pdftext, $dummy);
return $num;
}
$content = $message.'<br />'.$display.'<br><form enctype="multipart/form-data" action="" method="post">
elija el archivo a convertir: <input name="myfile" type="file" /><br />
<input type="submit" value="subir" />
</form>';


echo $content;
?>
  #2 (permalink)  
Antiguo 04/06/2014, 04:57
Avatar de juanito1712  
Fecha de Ingreso: mayo-2010
Ubicación: Valencia
Mensajes: 1.124
Antigüedad: 14 años, 6 meses
Puntos: 66
Respuesta: convertir pdf creado con fpdf en jpg

$convert = $location . " " . $name . " ".$nameto;


imagino que

$location ruta de la aplicación que convierte el archivo
$name la ruta de origen
$nameto la ruta destino


ve a una nueva pagina y prueba con algo así y a ver si terminas con un jpg donde le has dicho

exec("/usr/local/bin/convert /la/ruta/de/mi/archivo.pdf /la/ruta/de/la/imagen.jpg");
  #3 (permalink)  
Antiguo 04/06/2014, 09:08
 
Fecha de Ingreso: mayo-2012
Mensajes: 9
Antigüedad: 12 años, 5 meses
Puntos: 2
Respuesta: convertir pdf creado con fpdf en jpg

ok. Muchas gracias Juanito. voy a probar a ver y te digo...
  #4 (permalink)  
Antiguo 08/08/2014, 04:16
 
Fecha de Ingreso: mayo-2012
Mensajes: 9
Antigüedad: 12 años, 5 meses
Puntos: 2
Respuesta: convertir pdf creado con fpdf en jpg

ahora q tengo un poquito de tiempo me he puesto otra vez a esto... No tengo mucha idea. A ver si queda alguien por ahi y me echa un cable. El error que me da es: Warning: exec() has been disabled for security reasons in /home/.../pruebas/usuarios/control/convert.php on line 25, vamos q se asusta y no ejecuta.
El codigo que he puesto para pasar de pdf a jpg es el siguiente:

<?php
$myfile = $_GET['apellido'];
$message = "";
$display = "";
$output_dir = "uploads/";
$location = "/usr/local/bin/convert";
$name = $output_dir. $myfile;
$num = count_pages($name);
$RandomNum = time();
$nameto = $output_dir.$RandomNum.".jpg";
$convert = $location . " " . $name . " ".$nameto;
exec($convert);
for($i = 0; $i<$num;$i++)
{
$display .= "<img src='$output_dir$RandomNum-$i.jpg' title='Page-$i' /><br>";
}
function count_pages($pdfname) {
$pdftext = file_get_contents($pdfname);
$num = preg_match_all("/\/Page\W/", $pdftext, $dummy);
return $num;
}
echo $display;
?>
  #5 (permalink)  
Antiguo 08/08/2014, 15:16
Avatar de juanito1712  
Fecha de Ingreso: mayo-2010
Ubicación: Valencia
Mensajes: 1.124
Antigüedad: 14 años, 6 meses
Puntos: 66
Respuesta: convertir pdf creado con fpdf en jpg

No se asusta, exec ha sido des habilitado por razones de seguridad.

Estás en un hosting gratuito?

si no, hacer esto con mensajes de error tan claros ayuda mucho y ahorra tiempo
A gogleá

Etiquetas: fpdf, jpeg, scripts
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 15:33.