Bonjour,
j'utilise vichuploaderbundle pour uploader des pdfs. J'aimerais récupérer ces fichiers depuis le contrôleur avant de les envoyer vers le template,ceci afin générer des vignettes de prévisualisation.
voici la classe d'"extraction" de la preview récupérée ici https://gist.github.com/slashfan/b68e58fe889fafeeaa45
voila le contrôleur
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28 <?php namespace Siraat\AdDinBundle\ImageExtractor; /** * ImageExtractor */ class ImageExtractor { const FORMAT_JPG = 'jpg'; const FORMAT_PNG = 'png'; /** * @param string $source source filepath * @param string $destination destination filepath * @param string $format destination format * * @return bool */ public static function extract($source, $destination, $format = self::FORMAT_PNG) { if (!extension_loaded('Imagick')) { return false; } $imagick = new \Imagick($source.'[0]'); $imagick->setFormat($format); return $imagick->writeImage($destination); } }
je récupère l'objet Response mais je ne sais pas comment le traiter pour en extraire le document afin de générer la vignette
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 public function indexAction(Request $request, $id) { $em = $this->getDoctrine()->getManager(); $document = $em->getRepository('SiraatAdDinBundle:Document')->findById($id); $downloadHandler = $this->get('vich_uploader.download_handler'); $response = $downloadHandler->downloadObject($document, $fileField = 'documentFile'); /*... j'ignore comment passer $response à ma classe ImageExtractor.... */ return $this->render('SiraatAdDinBundle:Main:index.html.twig', array('document' => $document)); }
si quelqu'un a des pistes je suis preneur![]()
Partager