Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 11
  1. #1

    FPDF - caricare testo e immagini (PER SMANETTONI)

    Allora,

    io dal database mi carico un testo che devo stampare in FPDF. In questo testo ci sono i tag %l % che servono a rinchiudere il nome di un'immagine.

    sto facendo delle prove per vedere di farlo stampare a FPDF. questo è il codice che ho buttato giu che continua a dire "trovato token sconosciuto. Errore "Nan00". Ma dove sto sbagliando? il ciclo while assicuro che è giusto perchè sperimentato a parte, quindi il testo viene tagliato a dovere e il nome dell'immagine caricato giusto.

    forse sbaglio ad usare le funzioni di FPDF?

    grazie a tutti

    codice:
    <%
    
    Dim i,pdf
    
    immagini=array("..","logo.jpg")
    
    testo="Il mio %l1% testo preferito"
     
    Set pdf=CreateJsObject("FPDF")
    pdf.CreatePDF()
    pdf.SetPath("fpdf/")
    pdf.SetFont "Arial","",16
    pdf.Open()
    'pdf.LoadModels("TestModels") ' il nome del modello è specificato senza estensione.
    pdf.AddPage()
    pdf.SetFont "Times","",12
    
    
    
    fine=false
    partenza=1
    nuovo_testo=testo
    pezzo=""
    var=0
    allign=""
    while not fine=true
    		trovato=false
    		pezzo=""
    		var=instr(partenza,nuovo_testo,"%")
    		if var>0 then
    		trovato=true
    		
    		pezzo=mid(nuovo_testo,partenza,var-1)
    		
    		'inserisco il pezzo di testo nel pdf
    		pezzo=replace(pezzo,vbcrlf,"/n")
    		pdf.MultiCell 5,pezzo
    		
    		allign=mid(nuovo_testo,var+1,1)
    		'aggiorno il nuovo_testo
    		nuovo_testo=right(nuovo_testo,len(nuovo_testo)-var)
    		
    		'ricavo la stringa per l'immagine
    		partenza=1
    		
    		var=instr(partenza,nuovo_testo,"%")
    		if var>0 then
    		trovato=true
    		
    		pezzo=int(mid(nuovo_testo,partenza+1,var-2))
    
    		if allign="l" then
    		pdf.Image "img/" & immagini(pezzo),10,8,33
    		end if
    		
    		nuovo_testo=right(nuovo_testo,len(nuovo_testo)-var)
    		
    		end if
    		
    		end if
    		
    		if trovato=false then
    		fine=true
    		pdf.MultiCell 5,nuovo_testo
    		end if
    
    wend
    
    
    
    pdf.Close()
    pdf.Output()
    
    %>

  2. #2
    scusate avevo sbagliato a chiamare le sub

  3. #3
    Utente di HTML.it L'avatar di fraude
    Registrato dal
    Feb 2004
    Messaggi
    2,870
    Originariamente inviato da santino83
    scusate avevo sbagliato a chiamare le sub
    Ciao Santino, ma qual'è il codice giusto? Mi servirebbe anche a me...

  4. #4
    avevo sbagliato a chiamare il metodo MultiCell:

    codice:
    nuovo
    pdf.MultiCell 0,5,pezzo
    conta che però se inserisci l'immagine, poi devi settare l'ordinata Y (con setY) in maniera che un nuovo testo finisca sotto all'immagine...oppure l'ascissa X se vuoi che finisca a destra. altrimenti te li sovrascrive

    ciaoz

  5. #5
    Utente di HTML.it
    Registrato dal
    Jan 2002
    Messaggi
    687
    rettifico: mi scrive il primo pezzo della frase, foto ma poi non mi visualizza il testo rimanente.... :master:

    ciao

  6. #6
    Utente di HTML.it
    Registrato dal
    Jan 2002
    Messaggi
    687
    ma è possibile realizzare un'impaginazione così:

  7. #7
    Utente di HTML.it
    Registrato dal
    Jan 2002
    Messaggi
    687
    vediamo se stavolta acchiappa l'immagine
    Immagini allegate Immagini allegate

  8. #8
    Utente di HTML.it
    Registrato dal
    Feb 2005
    Messaggi
    1,150
    E' un 3d un pò vecchio, ma volevo segnalare che ho dovuto risolvere così, l'inserimento di una immagine all'interno di un testo (in questo caso il testo si posiziona semplicemente sopra e sotto l'immagine), perchè il recupero delle coordinate X,Y non sembrano funzionare.

    Premssa: Le dimensioni dell'immagine, la posizione e la pagina del documento dove inserirla la archivio nella tabella.

    Ho dovuto inserire una cella vuota (il codice indicato in bold), altrimenti l'immagine si sovrappone al testo.

    Se qualcuno ha una soluzione più pulita, mi faccia sapere.
    Chiaramente se notate che quello che ho scritto è sbagliato...sono qua



    codice:
    if numepage <> pdf.pageNO() then
           		numepage=pdf.pageNO()
    
    					SQLpubb = "SELECT * " _
    					& "FROM anagpubb where CODI_BOLL_RISU ="&vn_codibollavvi&" and nume_page="& numepage
           			Set rspubb = cnnSearch.Execute(SQLpubb)
    
           			if not rspubb.EOF then
              				pdf.SetY(Y)
    
    						pdf.SetX(X)
    						P=0
    						P=X + cint("0"&rspubb("NUME_POSI_ORIZ"))
    						l=0
    						l=0+cint("0"&rspubb("NUME_LUNG_IMAG"))
    						a=0
    						a=0+cint("0"&rspubb("NUME_ALTE_IMAG"))
    
    						pdf.Image "pubblicita/file/"&rspubb("DESC_NOME_FILE_rino")&".jpg", P, Y, l, a, "JPG"
    
    
    
    						pdf.SetY(Y)
    						pdf.SetX(X)
    						Y=pdf.getY()
    						X=pdf.getY()
    
              				pdf.Cell 0,l,"",0,1 
           			end if
       			end if
    
     			    Y=pdf.getY()

  9. #9
    Utente di HTML.it
    Registrato dal
    Feb 2005
    Messaggi
    1,150
    Originariamente inviato da mosquito70
    E' un 3d un pò vecchio, ma volevo segnalare che ho dovuto risolvere così, l'inserimento di una immagine all'interno di un testo (in questo caso il testo si posiziona semplicemente sopra e sotto l'immagine), perchè il recupero delle coordinate X,Y non sembrano funzionare.

    Premssa: Le dimensioni dell'immagine, la posizione e la pagina del documento dove inserirla la archivio nella tabella.

    Ho dovuto inserire una cella vuota (il codice indicato in bold), altrimenti l'immagine si sovrappone al testo.

    Se qualcuno ha una soluzione più pulita, mi faccia sapere.
    Chiaramente se notate che quello che ho scritto è sbagliato...sono qua



    codice:
    if numepage <> pdf.pageNO() then
           		numepage=pdf.pageNO()
    
    					SQLpubb = "SELECT * " _
    					& "FROM anagpubb where CODI_BOLL_RISU ="&vn_codibollavvi&" and nume_page="& numepage
           			Set rspubb = cnnSearch.Execute(SQLpubb)
    
           			if not rspubb.EOF then
              				pdf.SetY(Y)
    
    						pdf.SetX(X)
    						P=0
    						P=X + cint("0"&rspubb("NUME_POSI_ORIZ"))
    						l=0
    						l=0+cint("0"&rspubb("NUME_LUNG_IMAG"))
    						a=0
    						a=0+cint("0"&rspubb("NUME_ALTE_IMAG"))
    
    						pdf.Image "pubblicita/file/"&rspubb("DESC_NOME_FILE_rino")&".jpg", P, Y, l, a, "JPG"
    
    
    
    						pdf.SetY(Y)
    						pdf.SetX(X)
    						Y=pdf.getY()
    						X=pdf.getY()
    
              				pdf.Cell 0,a,"",0,1 
           			end if
       			end if
    
     			    Y=pdf.getY()
    Una rettifica.
    Ho sbagliato "lettera", ovvero questa riga va scritta così

    codice:
    pdf.Cell 0,a,"",0,1
    e non
    codice:
    pdf.Cell 0,l,"",0,1

  10. #10
    Utente di HTML.it L'avatar di serpiko
    Registrato dal
    Feb 2005
    Messaggi
    346
    scusatemi io vorrei realizzare una impaginazione proprio come quella postata sopra da nikasil
    premetto che ho tre campi immagine, ma non sempre ci sono tutte e tre le immagini! o meglio a volte ce ne sono due a volte 1 a volte 2 a volte 3 e a volte richiamo un semplice puntino bianco di 1px per 1 px (che ho chiamato bianco.jpg che equivale a nessuna immagine, o meglio l'immagine la richiamo ma essendo 1px per 1px sembra non ci sia immagine) quello che vorrei fare è che se il campo immagine c'è l'mmagine allora l'impaginazione è come quella descritta da nikasil se invece nel campo immagine c'è bianco.jpg allora non si crea quella vuoto dove inserire l'immagine ma il testo continua a scorrere... uéééé non mi mandate a quel paese!!!
    vi posto qui sotto il codice che io utilizzo al momento:

    codice:
    <%@language=vbscript%>
    
    
    
    <%
    id=Request.QueryString("id")
    Set rs = Server.CreateObject("ADODB.Recordset")
    SQL = "SELECT * FROM giornale where id =" & id & " ORDER BY id DESC"
    rs.Open SQL, objConn, 1, 3
    '-------------------------------
    Function RemoveTagHTML(sTexto)
    
    sTextoSemTag = sTexto
    
    Set ExpRegular = New RegExp 
    
    ExpRegular.IgnoreCase = True
    ExpRegular.Global = True
    ExpRegular.Pattern = "<[^>]*>"
    sTextoSemTag = ExpRegular.Replace(sTextoSemTag, "")
    
    Set ExpRegular = Nothing
    
    RemoveTagHTML = sTextoSemTag
    End Function
    '------------------------------
    'pentry = server.HTMLENcode(pentry)
    'Dim pentry
    'pentry = request.form("pentry")
    'pentry = Request.Querystring("pentry")
    'pentry = ucase(pentry)
    
    'dim prodotto
    'prodotto = rs("ptitolo")
    'Dim i,pdf,id
    
    'Set pdf=CreateJsObject("FPDF")
    'pdf.CreatePDF()
    'pdf.SetPath("fpdf/")
    'pdf.SetFont "Arial","",12
    'pdf.SetTopMargin(30)
    'pdf.Open()
    'pdf.LoadModels("testata") ' il nome del modello è specificato senza estensione.
    'pdf.AddPage()
    '---------------------------------
    Set pdf=CreateJsObject("FPDF")
    pdf.CreatePDF()
    pdf.SetPath("fpdf/")
    pdf.Open()
    pdf.LoadModels("NumeroPagina")
    pdf.AddPage()
    pdf.SetFont "Arial","B",11
    pdf.Ln(8)
    pdf.Cell 40,10, RS("ptitolo")
    pdf.Ln(8)
    pdf.SetFont "Arial","I",9
    pdf.MultiCell 0,5,RS("titoletto"), 0, "", 0
    'pdf.Ln(-3)
    'pdf.SetFont "Arial","I",10
    'pdf.Cell 60,10,"____________"
    pdf.Ln(6)
    pdf.SetFont "arial","",10
    pdf.Ln(6)
    pdf.Image "../" & rs("pimg1"),120,50,80 
    'pdf.MultiCell 190,10,RS("pentry")
    'Replace(Request.Form("pentry"), "&quot;", ""
    pdf.MultiCell 105,10,RemoveTagHTML(RS("pentry"))
    'pdf.Image rs("pimg1")
    'pdf.Image ("../" & rs("pimg1"))
    pdf.Close()
    pdf.Output()
    rs.close
    objConn.close
    %>
    attenta allo sportello quando scendi!!!!

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 © 2025 vBulletin Solutions, Inc. All rights reserved.