Autore Topic: Problema nel salvare uno screenshot in gif  (Letto 1338 volte)

Offline Francoiky

  • Gamberetto
  • *
  • Post: 33
    • Mostra profilo
Problema nel salvare uno screenshot in gif
« il: 20 Agosto 2011, 19:18:22 »
Salve a tutti! Ho riscontrato un problema nel salvare una screenshot in formato gif
Codice: gambas [Seleziona]
$Screenshot = Desktop.Screenshot()
$Screenshot.Save("a.gif")

Eseguendo il programma mi restituisce l'errore "Unable to save picture". Ci tengo a precisare che salvando lo screenshot in altri formati funziona tutto perfettamente :-\. Anche se lo vedo difficile, esiste un modo per ovviare a questo problema???

Grazie in anticipo.

Offline Ceskho

  • Amministratore
  • Senatore Gambero
  • *****
  • Post: 3.778
  • Vi Veri Veniversum Vivus Vici
    • Mostra profilo
    • Pagina Personale
Re: Problema nel salvare uno screenshot in gif
« Risposta #1 il: 25 Agosto 2011, 01:21:58 »
Hai provato a passare il path completo?

Codice: gambas [Seleziona]
$Screenshot = Desktop.Screenshot()  
$Screenshot.Save("cartella/sottocartella/a.gif") 

Offline Francoiky

  • Gamberetto
  • *
  • Post: 33
    • Mostra profilo
Re: Problema nel salvare uno screenshot in gif
« Risposta #2 il: 25 Agosto 2011, 16:08:51 »
Si si, ho provato. Anche con il dialog mi da lo stesso errore. Ripeto, salvando in  altri formati (png, jpg, xpm) non mi da nessun problema. E' possibile che io la debba convertire in immagine prima di salvarla in gif? :-\

Offline Ceskho

  • Amministratore
  • Senatore Gambero
  • *****
  • Post: 3.778
  • Vi Veri Veniversum Vivus Vici
    • Mostra profilo
    • Pagina Personale
Re: Problema nel salvare uno screenshot in gif
« Risposta #3 il: 25 Agosto 2011, 16:36:26 »
Evidentemente c'è qualche problema per Gambas nel gestire quel tipo di immagine. Le picture, così come le image, dovrebbero supportare il formato gif. Strano.

Offline vuott

  • Moderatore globale
  • Senatore Gambero
  • *****
  • Post: 11.334
  • Ne mors quidem nos iunget
    • Mostra profilo
Re: Problema nel salvare uno screenshot in gif
« Risposta #4 il: 03 Gennaio 2012, 01:37:26 »
Ho posto questo problema direttamente a Minisini, il quale mi ha risposto così:

" Actually, gb.image.io relies on the gdk-pixbuf library to save the
picture. So the supported formats are the one supported by that library.

--
Benoît Minisini
"
« Chiunque, non ricorrendo lo stato di necessità, nel proprio progetto Gambas fa uso delle istruzioni Shell o Exec, è punito con la sanzione pecuniaria da euro 20,00 a euro 60,00. »

Offline sotema

  • Maestro Gambero
  • ****
  • Post: 467
    • Mostra profilo
Re: Problema nel salvare uno screenshot in gif
« Risposta #5 il: 04 Gennaio 2012, 15:57:02 »
Dalla documentazione della libreria gdk-pixbuf:
Citazione
Saves pixbuf to a file in type, which is currently "jpeg", "png", "tiff", "ico" or "bmp".
L'uomo ha inventato la bomba atomica, ma nessun topo al mondo costruirebbe una trappola per topi.
Albert Einstein

Offline vuott

  • Moderatore globale
  • Senatore Gambero
  • *****
  • Post: 11.334
  • Ne mors quidem nos iunget
    • Mostra profilo
Re: Problema nel salvare uno screenshot in gif
« Risposta #6 il: 04 Gennaio 2012, 17:56:04 »
Dalla documentazione della libreria gdk-pixbuf:
Citazione
Saves pixbuf to a file in type, which is currently "jpeg", "png", "tiff", "ico" or "bmp".

Il problema sembra persistere con .tif e con .ico... non so se è necessario qualche accorgimento o pre-parazione della Picture...
« Chiunque, non ricorrendo lo stato di necessità, nel proprio progetto Gambas fa uso delle istruzioni Shell o Exec, è punito con la sanzione pecuniaria da euro 20,00 a euro 60,00. »

Offline sotema

  • Maestro Gambero
  • ****
  • Post: 467
    • Mostra profilo
Re: Problema nel salvare uno screenshot in gif
« Risposta #7 il: 04 Gennaio 2012, 19:40:56 »
Immagino tu stia usando una distro ubuntu o derivata. Ubuntu ha una gestione particolare della dimensione del desktop. Se provi a digitare il comando
Codice: [Seleziona]
? desktop.count
nella console di gambas, il risultato è 1 indipendentemente dal numero di desktop virtuali che hai configurato. Allo stesso modo il comando
Codice: [Seleziona]
?desktop.w
riporta un valore pari alla somma dei desktop virtuali paralleli. Lo stesso dicasi per
Codice: [Seleziona]
?desktop.H
. Questa condizione porta lo scripts xdg-utils a non essere in grado di determinare la dimensione del desktop. Se provi a modificare la riga
Codice: c# [Seleziona]
$Screenshot = Desktop.Screenshot()
inserendo i parametri di posizione e dimensione
Codice: c# [Seleziona]
$Screenshot = Desktop.Screenshot(30,30,200,200)
  la cosa funziona. Attenzione oltre certe dimensioni ti genera lo stesso l'errore. Da investigare...
L'uomo ha inventato la bomba atomica, ma nessun topo al mondo costruirebbe una trappola per topi.
Albert Einstein

Offline fsurfing

  • Moderatore
  • Senatore Gambero
  • *****
  • Post: 2.484
    • Mostra profilo
Re: Problema nel salvare uno screenshot in gif
« Risposta #8 il: 04 Gennaio 2012, 19:44:06 »
se vuoi le dimensioni dello shermo mi pare bastino

w=screen.w
h=screen.h

Offline fsurfing

  • Moderatore
  • Senatore Gambero
  • *****
  • Post: 2.484
    • Mostra profilo
Re: Problema nel salvare uno screenshot in gif
« Risposta #9 il: 04 Gennaio 2012, 19:45:48 »
se poi si deve proprio avere una gif, si puo (purtroppo) usare imagemacic avviato tramite shell

Offline sotema

  • Maestro Gambero
  • ****
  • Post: 467
    • Mostra profilo
Re: Problema nel salvare uno screenshot in gif
« Risposta #10 il: 04 Gennaio 2012, 19:50:59 »
Citazione
se vuoi le dimensioni dello shermo mi pare bastino

w=screen.w
h=screen.h

giustissimo!!!
L'uomo ha inventato la bomba atomica, ma nessun topo al mondo costruirebbe una trappola per topi.
Albert Einstein

Offline vuott

  • Moderatore globale
  • Senatore Gambero
  • *****
  • Post: 11.334
  • Ne mors quidem nos iunget
    • Mostra profilo
Re: Problema nel salvare uno screenshot in gif
« Risposta #11 il: 05 Gennaio 2012, 00:09:55 »
Immagino tu stia usando una distro ubuntu o derivata.
Sì, uso Ubuntu.


Ubuntu ha una gestione particolare della dimensione del desktop. Se provi a digitare il comando
Codice: [Seleziona]
? desktop.count
nella console di gambas, il risultato è 1 indipendentemente dal numero di desktop virtuali che hai configurato.
...A me restituisce un numero pari ai desktop utilizzati, o comunque attivati.


Se provi a modificare la riga
Codice: c# [Seleziona]
$Screenshot = Desktop.Screenshot()
inserendo i parametri di posizione e dimensione
Codice: c# [Seleziona]
$Screenshot = Desktop.Screenshot(30,30,200,200)
  la cosa funziona. Attenzione oltre certe dimensioni ti genera lo stesso l'errore. Da investigare...
A me continua anche così a generarmi errore se tento di salvare in .tif oppure in .ico:-\
« Chiunque, non ricorrendo lo stato di necessità, nel proprio progetto Gambas fa uso delle istruzioni Shell o Exec, è punito con la sanzione pecuniaria da euro 20,00 a euro 60,00. »

Offline vuott

  • Moderatore globale
  • Senatore Gambero
  • *****
  • Post: 11.334
  • Ne mors quidem nos iunget
    • Mostra profilo
Re: Problema nel salvare uno screenshot in gif
« Risposta #12 il: 30 Novembre 2014, 05:26:37 »
Dalla documentazione della libreria gdk-pixbuf:
Citazione
Saves pixbuf to a file in type, which is currently "jpeg", "png", "tiff", "ico" or "bmp".

Ho scritto un'apposita pagina nella nostra WIKI contenente un breve codice per conoscere i formati disponibili:
http://www.gambas-it.org/wiki/index.php?title=Conoscere_i_formati_immagine_disponibili_con_GTK_mediante_le_funzioni_del_API_di_GDK-PixBuf


Ad ogni modo, segnalo anche questa discussione:
http://www.gambas-it.org/smf/index.php?topic=3823.msg34544
« Ultima modifica: 09 Gennaio 2015, 00:24:51 da vuott »
« Chiunque, non ricorrendo lo stato di necessità, nel proprio progetto Gambas fa uso delle istruzioni Shell o Exec, è punito con la sanzione pecuniaria da euro 20,00 a euro 60,00. »

Offline vuott

  • Moderatore globale
  • Senatore Gambero
  • *****
  • Post: 11.334
  • Ne mors quidem nos iunget
    • Mostra profilo
Re: Problema nel salvare uno screenshot in gif
« Risposta #13 il: 23 Gennaio 2015, 17:35:26 »
Dalla documentazione della libreria gdk-pixbuf:
Citazione
Saves pixbuf to a file in type, which is currently ...... "ico" ...
Per convertire e salvare una immagine in un file immagine di formato .ico, è possibile utilizzare direttamente alcune funzioni della libreria gdk-pixbuf, citata da sotema.

Ne ho fatto un brevissimo riassunto nella nostra WIKI:

http://www.gambas-it.org/wiki/index.php?title=Convertire_un%27immagine_in_un_file_immagine_di_formato_ICO_mediante_le_funzioni_esterne_del_API_di_Libgdk_pixbuf
« Chiunque, non ricorrendo lo stato di necessità, nel proprio progetto Gambas fa uso delle istruzioni Shell o Exec, è punito con la sanzione pecuniaria da euro 20,00 a euro 60,00. »

Offline vuott

  • Moderatore globale
  • Senatore Gambero
  • *****
  • Post: 11.334
  • Ne mors quidem nos iunget
    • Mostra profilo
Re: Problema nel salvare uno screenshot in gif
« Risposta #14 il: 29 Gennaio 2015, 02:54:01 »
Per convertire e salvare un file immagine in un file immagine di formato .GIF, è possibile utilizzare alcune funzioni della libreria Libgd.

Ne ho fatto un brevissimo riassunto nella nostra WIKI:

http://www.gambas-it.org/wiki/index.php?title=Convertire_un_file_immagine_in_un_file_immagine_di_tipo_GIF_con_le_funzioni_esterne_del_API_di_Libgd
« Chiunque, non ricorrendo lo stato di necessità, nel proprio progetto Gambas fa uso delle istruzioni Shell o Exec, è punito con la sanzione pecuniaria da euro 20,00 a euro 60,00. »