Newsgroup: it.comp.lang.vo-clipper
Titolo: pdf

Qualcuno ha già avuto qualche esperienza per convertire file dal formato 
rtf/word in PDF ?
Grazie . Alessandro

 rtf/word in PDF ?
Io lo faccio con una OLE a Word.
Ciao.Alberto.
-- 
===============================================================
Alberto Rubinelli - A2 SISTEMI  Opera 7.53->
news.individual.net
Via Costantino Perazzi 22 - 28100 NOVARA - ITALY
Tel 0321 640149  Fax 0321 391769 BBS 0321 392320
Mail: 
alb...@retrocomputing.net
  ICQ : 49872318
Visita il mio museo di computers: 
http://www.oldcomputers.it
---------------------------------------------------------------
Per favore, non scrivetemi in html, testo ascii a 7 bit
Non rispondo a chi mi scrive con indirizzo di reply alterato
===============================================================

 Io lo faccio con una OLE a Word.
Con che versione di Word? Con il 2000 non mi pare possibile.
EMG
--
EMAG Software Homepage:     
http://www.emagsoftware.it
The EMG's ZX-Spectrum Page: 
http://www.emagsoftware.it/spectrum
The Best of Spectrum Games: 
http://www.emagsoftware.it/tbosg

 Con che versione di Word? Con il 2000 non mi pare possibile.
no, infatti, c'e' da office xp in avanti mi pare, su office 2003 di sicuro
La stessa cosa si puo' fare con Open Office, il problema e' che non so  
come fare una OLE con OpenOffice :)
(lo preferireri )
Ciao.alberto.


 (lo preferireri )
Vedi se puoi trarre qualcosa (tuttalpiù i nomi dell'oggetto OLE, delle
proprietà e dei metodi) da questo esempio trovato nel newsgroup di
xHarbour (
news.xharbour.org
):
Attached a zip file with a example to load a document, change it and
print
it using OpenOffice. Run ok, but dont hide the OpenOffice main window.
The
same code in Visual Basic Script run perfectly.
In the "win32ole.prg" version attached, i added suport for array of
VARIANT
(only TOleAuto objects). The code added is rised. I dont had changes of
other type.
i make any error with hb_item*() used in "win32ole.prg"?
To test, you need:
"OpenOffice 1.1" installed.
"oo.prg"       (attached to this message).
"win32ole.prg" (attached to this message).
"mydoc.sxw"    (attached to this message).
"myimg.jpg"    (attached to this message).
To build:
unzip "oo.zip" and execute "bld oo win32ole"
Thanks.
---------------------- oo.prg ----------------------
procedure main()
    local cDocument
    local cImage
    local cPrinter
    local oServiceManager
    local oDesktop
    local oDocument
    local oReplace
    local oGraphics
    local oGraphic
    local nGraphic
    local aArg
    local aProperty
    local oProperty
    local nProperty
    local lBusy
    cDocument := OOUrlFile(DiskName()+":\"+CurDir()+"\mydoc.sxw")
    cImage    := OOUrlFile(DiskName()+":\"+CurDir()+"\myimg.jpg")
    cPrinter  := GetDefaultPrinter()
    try
        oServiceManager := CreateObject("com.sun.star.ServiceManager")
    catch
        return
    end
    oDesktop :=
oServiceManager:createInstance("com.sun.star.frame.Desktop")
    aArg := {}
    AAdd(aArg, OOProperty(oServiceManager, "DocumentTitle",
"ooharbour"))
    AAdd(aArg, OOProperty(oServiceManager, "AsTemplate"   , .f.))
    AAdd(aArg, OOProperty(oServiceManager, "Preview"      , .f.))
    AAdd(aArg, OOProperty(oServiceManager, "Hidden"       , .t.))
    AAdd(aArg, OOProperty(oServiceManager, "ReadOnly"     , .f.))
    oDocument := oDesktop:loadComponentFromURL(cDocument, "_blank", 0,
aArg)
    oReplace  := oDocument:createReplaceDescriptor()
    oGraphics := oDocument:getGraphicObjects()
    for nGraphic := 0 to oGraphics:getCount()-1
        oGraphic := oGraphics:getByIndex(nGraphic)
        if oGraphic:getName() == "Imagen1"
            oGraphic:graphicURL := cImage
        endif
    next
    oReplace:SearchString  := "<nombre>"
    oReplace:ReplaceString := "Oscar"
    oDocument:replaceAll(oReplace)
    oReplace:SearchString  := "<apellidos>"
    oReplace:ReplaceString := "Hernandez Suarez"
    oDocument:replaceAll(oReplace)
    aArg := {}
    AAdd(aArg, OOProperty(oServiceManager, "Name", cPrinter))
    oDocument:printer := aArg
    oDocument:print({})
    lBusy := .t.
    do while lBusy
        aProperty := oDocument:printer
        for nProperty := 1 to Len(aProperty)
            oProperty := aProperty[nProperty]
            if oProperty:Name == "IsBusy"
                lBusy := oProperty:Value
                exit
            endif
        next
        hb_idleSleep(0.01)
    enddo
    oDocument:setModified(.f.)
    oDocument:close(.t.)
    return
static function OOProperty(oServiceManager, cName, uValue)
    local cStructure
    local oProperty
    cStructure      := "com.sun.star.beans.PropertyValue"
    oProperty       := oServiceManager:bridge_GetStruct(cStructure)
    oProperty:Name  := cName
    oProperty:Value := uValue
    return oProperty
static function OOUrlFile(cFile)
    // very basic.
    cFile := StrTran(cFile, ":", "|")
    cFile := StrTran(cFile, "\", "/")
    cFile := StrTran(cFile, " ", "%20")
    return "file:"+"/"+"/"+"/"+cFile


 xHarbour (
news.xharbour.org
):
mnnnn ... molto interessante ... ci guardo appena gioco un po' con queste  
cose :)
Grazie !
Ciao.Alberto.


> Qualcuno ha gią avuto qualche esperienza per convertire file dal formato


 A me servirebbe trasformare in PDF non in word.
Certo, trasformi in pdf, forse non mi sono spiegato.
Crei un oggetto OLE a word.
Poi invii i seguenti comandi, come fossero chiamate da visual basic
- apri word
- apri file xxx
- esporta in pdf file xxx
- chiudi word
Ciao.alberto.


Dovrebbe esserci la possibilità di generare documenti in PDF direttamente da
codice VO, se non ricordo male, credo ci fosse qualche esempio so
knowvo.com
.
Ciao.
                                    Francesco

 ha scritto nel messaggio 
news:cnt8mk$am3$1...@carabinieri.cs.interbusiness.it...


 Alessandro.
Non capisco, cosa c'entra report pro? Lo dovresti generare direttamente da
VO, senza utilizzare nessun generatore.
Francesco

 VO, senza utilizzare nessun generatore.
Ti spiego le mie intenzioni.
Da anteprima di stampa di  ReportPro ho aggiunto 1 pulsante sulla barra 
superiore dalla quale vado a generare
una email della stampa (o meglio dell'anteprima di stampa).
Per fare questo prima esporto il file in formato RTF poi (per ora lo zippo) 
lo metto in allegato.
Vorrei l'allegato generarlo in formato PDF quindi dovrei convertire o da RTF 
oppure l'altra possibilità è
convertire da "stampa su file" (postscript).
Ho trovato alcune utility free che fanno la conversione da RTF o da 
postscript ma sono macchinose e poco
controllabili.
Se hai qualche suggerimento ben venga ......
ciao e grazie Alessandro.

Complicata la storia. Poi mi spieghi come hai fatto a customizzare la barra
di report pro. Se l'anteprima la usi solo per l'invio di email potresti
utilizzare una tua finestra per l'anteprima e gestire il tutto da li oppure
generare il pdf e lanciare Acrobat Reader per leggerlo.
Al momento non riesco ad essere più costruttivo :-(
Ciao.
                    Francesco

Ci sono riuscito . Grazie a tutti.
Alessandro.


Non sarebbe male dire anche come, no?
Francesco

 ha scritto nel messaggio 
news:cohgtq$4kr$1...@balena.cs.interbusiness.it...


 ha scritto nel 
messaggio news:M3Yqd.236310$b5.11...@news3.tin.it...



Può essere utile. Se vuoi lo puoi pubblicare nel sito
http://www.infosas.it/instips.php
 con tutto l'allegato, senza doverlo
postare sul newsgroup, così chi vuole se lo scarica.
Ciao.
                        Francesco

Se mi date il vostro indirizzo email vi mando l'esempio documentato.
Ciao a tutti Alessandro.

 postare sul newsgroup, così chi vuole se lo scarica.
Ho qualche difficoltà , viste le dimensioni della documentazione ,ad 
inserirle direttamente nel tuo sito. Se mi mandi
il tuo email te le passo molto volentieri.
Ciao Alessandro. 

 ha scritto nel 
messaggio news:H03rd.238408$b5.11...@news3.tin.it...


 ha scritto nel 
messaggio news:H03rd.238408$b5.11...@news3.tin.it...




vig...@aruba.it
Grazie e buon Natale 
Marino Vignoli


jc...@tin.it
Grazie e buon Natale e felice anno
Claudio Carletta