Estrarre i dati video da un file PDF
Da Gambas-it.org - Wikipedia.
Versione del 27 set 2023 alle 14:56 di Vuott (Discussione | contributi)
Se un file PDF possiede dati video, questi possono essere raccolti per creare un file video indipendente.
Mostriamo un possibile codice, con il quale potranno essere raccolti i dati video, presenti nel file PDF, di formato ASF, AVI, MOV e MP4:
Public Sub Main() Dim s, id As String Dim asf, avi, mov, mp4, n, i As Integer s = File.Load("/percorso/del/file.pdf") n = InStr(s, "EmbeddedFile") If InStr(s, "ftypmp42", n) > 0 Then mp4 = InStr(s, "ftypmp42", n) If InStr(s, "ftypisom", n) * InStr(s, "mp41", InStr(s, "ftypisom", n)) > 0 Then mp4 = InStr(s, "ftypisom", n) If mp4 * InStr(s, "mp4", mp4) > 0 Then i = mp4 - 4 id = "mp4" Endif avi = InStr(s, "AVI LIST", n) If avi > 0 Then i = avi - 8 id = "avi" Endif i = InStr(s, "ftypqt", n) If i > 0 Then i = i - 4 id = "mov" Endif asf = InStr(s, "0&\xB2u\x8Ef\xCF\x11", n) If asf > 0 Then i = asf id = "asf" Endif ' Ottiene il valore della quantità dei dati video dichiarato nel file PDF: n = Val(Scan(Mid(s, n, i - n), "*Length * *")[1]) ' Crea il file video: File.Save("/tmp/video." & id, Mid(s, i, n)) End