Visualizzazione dei risultati da 1 a 3 su 3
  1. #1

    TCPDF, html e immagini base 64

    salve!
    in un campo salvo un articolo in formato html e dentro ci possono essere anche immagini in base64.
    ad esempio:
    codice:
    
    <img alt="" src="data:image/gif;base64,R0lGODdh6AB2AHcAACH+GlNvZnR3YXJlOiBNaWNyb3NvZnQgT2ZmaWNlACwAAAAA6AB2AIf///8AnGvFxcW9vbXm5rW95rUxlDoxnBCUjJQAlDoAnFpKlJTv7+YZjJyUrVqUaxmUrRmU7xmUKRkQnO8Q75xj71oQ795jaxljrRlj7.....................</p>
    
    
    Ciao, questo è il resto del testo........</p>
    tramite tcpdf mi salvo il contenuto del campo facendo una query.
    solo che mi salvata solo la frase, mentre l'immagine non si vede.
    mi pare di aver capito di dover fare una cosa del genere:
    Codice PHP:
    $pdf->AddPage();

    $img base64_decode('CODICE BASE 64 COPIATO DAL DB');
    $pdf->Image('@' $img);

    $pdf->writeHTML($pdfTestotruefalsetruefalse'');
    $pdf->lastPage(); 
    solo che non so come passare alla funzione Image di tcpdf l'immagine che è incorporata nel resto del testo.

  2. #2
    ho provato a fare una cosa del genere:
    Codice PHP:
    $doc = new DOMDocument();
    $doc->loadHTML($pdfTesto);
    $xPath = new DOMXPath($doc);
    $nodo $xPath->query('//img[@src]');
    foreach (
    $nodo as $nodo) {
        
    $img base64_decode($nodo->getAttribute('src'));
        
    $pdf->Image('@' $img);

    solo che ottengo questo errore:
    codice:
    TCPDF ERROR: [Image] Unable to get image: C:\WINDOWS\Temp\img2F77.tmp
    penso che però potrebbe essere una strada percorribile.
    sapete dirmi qualcosa riguardo a questo errore?

  3. #3
    seguendo le indicazion di quest'altro thread ho risolto: http://forum.html.it/forum/showthrea...1#post13809541

    Codice PHP:
    $doc = new DOMDocument();
    $doc->loadHTML($pdfTesto);
    $xPath = new DOMXPath($doc);
    $nodo $xPath->query('//img[@src]');
    foreach (
    $nodo as $nodo) {
        
    $matches = array();
        if (
    preg_match('/^data:([^;]+);base64(.*)$/'$nodo->getAttribute('src'), $matches)) {
            
    $imgData $matches[2];
            
    $imgType $matches[1];
            
    $pdf->Image("@" base64_decode($imgData));
        }

    ciao!

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.