Programmino in visual basic per convertire pdf in html

jitter1
Avrei bisogno di convertire dei pdf contenenti testo semplice (senza tabelle, formule o altro) in file html "pulito".
Esempio: se ho sul pdf "Oggi piove", voglio che mi restituisca "Oggi piove", senza tag sovrabbondanti. In word esiste questa funzione, ma restituisce un documento, appunto, con molte formattazioni, invece a me serve un documento in uscita che contenga solo i tag essenziali: grassetto, corsivo, sottolineato, a capo, apice e pochi altri.
Qualcuno conosce dei tool per fare questa cosa, eventualmente anche a pagamento se non troppo costosi?

Risposte
jitter1
p.s. Lo scopo non è tanto ottenere il codice html, che si potrebbe anche inserire a mano, ma ottenerlo in modo veloce, perché ho tanti documenti da convertire.

jitter1
Grazie per la risposta Sergio, purtroppo io ho windows...

"Sergio":
Ci mette dentro un sacco di  


Questi non disturbano: visto che sono tutti uguali, come dici tu, possono essere eliminati tutti in una volta. Il problema sono i tag che variano, tipo quelli sulla posizione, che devo toglierli.

Va bene anche una soluzione completamente diversa, cioè mi basterebbe anche ottenere un altro documento di testo con i tag giusti, in qualsiasi modo.
Una volta avevo provato con le macro in word. P. es., per ottenere il corsivo, facendogli sostituire tutte le stringhe "spazio + lettera a" con "a", e poi "lettera a + spazio" con "a, in tutte le combinazioni possibili di lettere, ma non funzionava, c'è qualche ostacolo che ora non ricordo.

Oppure esistono gli html cleaner, ma per quanto puliscono non puliscono abbastanza: io devo togliere tutte le "class", le posizioni, il tipo di carattere, tutto tranne i formati fondamentali...

jitter1
... e col visual basic di word si potrebbe fare? Dico visual basic perché è l'unico linguaggio di cui ho una conoscenza minima. Meno che minima, però, infatti non mi ricordo come, la scorsa estate avevo impostato quello che segue: erano un ciclo per fare correzioni automatiche in word. Comunque, sapete se c'è la possibilità di dire al programma: "Riconosci il corsivo e applicagli il tag "?

Se invece questo non fosse possibile, o fosse difficile, avete idea di quanto mi potrebbe costare retribuire una persona che mi faccia un programmino del genere? Quanto tempo ci potrebbe volere?


Private Sub cbbFiabe_Click()
Selection.HomeKey Unit:=wdStory
    
    Const z = 100
    Dim parola(0 To z) As String
    Dim sostit(0 To z) As String
    Dim x As Integer
    x = 0

  parola(x) = "Le avventure di Pinocchio"
    sostit(x) = "<em>Le avventure di Pinocchio</em>"
    x = x + 1
    
     parola(x) = "Gepetto"
    sostit(x) = "Geppetto"
    x = x + 1
    
    For x = 0 To z
        Selection.Find.ClearFormatting
        Selection.Find.Replacement.ClearFormatting
        Selection.Find.Replacement.Highlight = True
        Options.DefaultHighlightColorIndex = wdBrightGreen          'evidenzia
        Selection.Range.HighlightColorIndex = wdBrightGreen         'evidenzia
        With Selection.Find
        .Forward = True
        .Wrap = wdFindContinue
        .Format = True
        .MatchCase = True
        .MatchWholeWord = True
        .MatchWildcards = False
        .MatchSoundsLike = False
        .MatchAllWordForms = False
        
            .Text = parola(x)
            .Replacement.Text = sostit(x)
        End With
        
        Selection.Find.Execute Replace:=wdReplaceAll
        Selection.HomeKey Unit:=wdStory
    Next
End Sub

jitter1
Sì, ho cercato con google e ho visto che ci sono questi tool che ti inviano il file per email. Solo che questi documenti non appartengono a me, quindi non mi fido molto: non vorrei che qualcuno si "impossessasse" dei testi, li archiviasse. E' praticamente impossibile, sarà uno scrupolo eccessivo, ma non si sa mai.

vict85
In acrobat reader fai File>Save ad other>text a quel punto copy il testo in un HTML e crei manualmente il CSS se ti serve. Dubito che qualsiasi metodo automatico possa fare di meglio di questo metodo semi-manuale e, testo a parte, il codice HTML che devi aggiungere è piuttosto insignificante. Molto più rapido di scriverti manualmente un programma visual basic che ti gestisce i PDF. Il PDF è un formato piuttosto complesso e potrebbe contenere moltissima roba che convertendo ti è inutile.

jitter1
"vict85":
In acrobat reader fai File>Save ad other>text a quel punto copy il testo in un HTML e crei manualmente il CSS se ti serve

E' che salvando in text perde le formattazioni e inserisce a ogni riga un a capo che non ci dovrebbe essere. Su un documento solo, aggiungere automaticamente i tag è un attimo, ma su decine di documenti sono molte ore di lavoro. Magari meno ore che fare un programma in vb, quello sì.

"vict85":
Il PDF è un formato piuttosto complesso e potrebbe contenere moltissima roba che convertendo ti è inutile.


Infatti, quello è il problema. Una possibilità potrebbe anche essere trasformare esattamente in word il pdf, e l'word è forse meno complesso, poi, da trasformare; per convertire salvare in doc da pdf esiste un'estensione a pagamento di acrobat. Ho provato la demo ma fa un sacco di errori (vedi altro thread di ieri).

vict85
I PDF come sono stati creati? Il problema è che il PDF non è un file pensato come file intermedio. È spesso molto meglio creare il nuovo file dalla sorgente piuttosto che dal prodotto finito. Inoltre penso comunque che sia più facile aggiungere i tag da un txt piuttosto che a partire dal PDF. Insomma, non è il tuo caso, ma hai un risultato migliore compilando un file LaTeX in HTML piuttosto che passare da PDF o anche dal DVI. Ammesso ovviamente che ci sia un compilatore che lo faccia, ma penso che qualcuno l'abbia fatto.

jitter1
Non lo
"vict85":
I PDF come sono stati creati? Il problema è che il PDF non è un file pensato come file intermedio.


Non lo so, probabilmente salvando un documento word in formato pdf , o addirittura potrebbero essere stati scannerizzati (in quel caso è grigia). Ma mi è impossibile risalire all'origine.

hamming_burst
[ot]
"Sergio":

Purtroppo gira solo su Linux e il link a una versione Win32 sembra alquanto defunto...

zio google fa trovare qui un link alternativo per il programma alla versione 1.3 (non lo ho installato quindi non so se funziona ancora).
il link originale si può [url=https://web.archive.org/web/20070523161440/http://guiguy.wminds.com/downloads/pdf2htmlgui/index.html]ritrovare[/url] (senza però possibilità di download) tramite la wayback machine di Internet archive si può navigare il sito, anche se abb lentamente.[/ot]

jitter1
"Sergio":
Potresti forse provare [url=http://www.somepdf.com/some-pdf-to-html-converter.html]SomePDF


Ne ho scaricati e provati alcuni da quel sito, ma mi sa che non è la strada giusta, perché questi tool ti permettono di riprodurre l'impaginazione del pdf in html, mentre a me serve eliminare tutte le impostazioni di impaginazione.
Forse, più che su un "convertitore", dovrei puntare su un "cleaner" del codice (html cleaner): in un primo passaggio trasformo con un convertitore, al secondo pulisco.
Ce n'è uno valido (http://word2cleanhtml.com/), che però - non so perché - mi funziona solo una volta, al secondo testo che carico mi si blocca.

"hamming_burst":
zio google fa trovare qui un link alternativo per il programma alla versione 1.3 (non lo ho installato quindi non so se funziona ancora).


L'ho scaricato, ma a me non funziona, mi dice che manca un file.

claudio862
Calibre permette di convertire da PDF a EPUB e credo anche HTML (in fondo un EPUB è un HTML zippato). Ci sono un po' di opzioni per fargli indovinare quando iniziare un nuovo paragrafo e quando no, e dovrebbe mantenere la formattazione.

jitter1
Questo l'ho trovato:
http://www.html-cleaner.com/

Rispondi
Per rispondere a questa discussione devi prima effettuare il login.