Eliminare i dati immagine da un file PDF
Vai alla navigazione
Vai alla ricerca
Per eliminare una o più immagini, mostrate in un file PDF, si dovranno eliminare i relativi dati immagine presenti in qual file.
I dati immagine sono preceduti da altri dati che hanno inizio con la stringa "obj\n<<" e terminano con la stringa "endstream\nendobj\n".
Pertanto si dovranno eliminare tutti i dati dal primo carattere della stringa "obj\n<<" fino all'ultimo carattere della stringa "endstream\nendobj\n".
Vanno altresì eliminate le eventuali stringhe formate dalla parola "Image" seguita da un carattere solitamente maiuscolo.
Per ottenere quanto sopra, può essere adottato il seguente codice:
Public Sub Main()
Dim s As String
Dim i, n As Integer
s = File.Load("/percorso/del/file.pdf")
While InStr(s, "Image") > 0
i = InStr(s, "Image")
' Se sono anche presenti una o più parole "Image" seguite da un carattere, le elimina:
If Not IsPunct(Mid(s, i + 5, 1)) Then
Mid(s, i, 6) = Null
Continue
Endif
i = RInStr(s, "obj\n<<", i)
n = InStr(s, "endstream\nendobj\n", i)
s = Replace(s, Mid(s, i, n - i + 19), Null)
Wend
' Salva il nuovo file PDF privo ora di immagini:"
File.Save("/tmp/senzaimmagini.pdf", s)
End