“Ritagliare” un’immagine da un pdf (parte II)

  • Creatore
    Topic
  • #11650
    lorenzo.pantieri
    Partecipante
      Up
      0
      Down
      ::


      Ciao a tutti.

      Scusate se apro un topic simile a questo, ma il problema ora è leggermente diverso.

      Ho un pdf di una pagina A4 composto da una sola immagine vettoriale: nella pagina c’è l’immagine, e nient’altro. Vorrei “ritagliare” –con precisione– l’immagine: in altre parole, vorrei ricavare un pdf contenente l’immagine in un “rettangolo minimo”, tagliando via tutto il bianco che è al di fuori.

      Finora me la sono cavata con lo strumento Taglierina di Acrobat Professional (o di Anteprima) ritagliando l’immagine andando “a occhio”. Così facendo, naturalmente, si introducono inevitabilmente delle (minuscole) differenze tra un’immagine e l’altra: il sottile bordino bianco non è sempre esattamente lo stesso, mentre io vorrei un risultato preciso.

      Forse una soluzione è agire sui bounding box (?), ma preferirei una soluzione semplice e “a prova di stupido”. 😉

      Dimenticavo: Mac OS X con Acrobat Pro (e Illustrator, se serve).

      Grazie mille,
      L.

    Visualizzazione 3 filoni di risposte
    • Autore
      Risposte
      • #11651
        Up
        0
        Down
        ::


        Ti posso suggerire una soluzione efficace ma non elegante.

        1)Fai calcolare a Ghostview il bounding box (visto che farlo ad occhio e’ scocciante :shock:)
        2)Edita il pdf e modifica i valori del MediaBox, settandoli uguali ai valori ritornati da Ghostview

        Per il primo punto da prompt usa un comando del genere
        `gswin32c.exe -q -dBATCH -sDEVICE=bbox -dFirstPage=1 -dLastPage=1 “il_mio_file.pdf”`

        Il device ‘bbox’ serve per ricavare il Bounding Box e l’HiResBoundingBox. Che a loro volta sono l’esatto ingombro della grafica dentro la pagina del tuo pdf.
        Una volta che hai l’HiResBoundingBox, lo trascrivi manualmente rispettando l’ordine, dentro MediaBox. Usa un editor spartano che non introduce formattazione e cerca qualcosa del tipo /MediaBox [x1 x2 x3 x4].
        Suppongo che se hai file pdf protetti, questo trucco non funziona perche’ non puoi editare il pdf a meno di corromperlo irremediabilmente. Dovresti prima sproteggerlo.

        Tuttavia questo trucco non e’ elegante, perche’ se apporti le modifiche come detto e ripeti il comando ghostscript sul pdf modificato, quest’ultimo ti da’ un warning dicendo che il file in questione e’ danneggiato. Ritengo che da qualche parte c’e’ un check (tipo un CRC o simili) anche se il pdf non e’ protetto/criptato. Ma qui mi avventuro in cose che non so. Nonostante tutto sia Ghosview che Adobe Reader 7 visualizzano perfettamente i pdf modificati.

        Occorrerebbe scrivere uno script che automatizzi il tutto…O meglio cercare in rete perche’ sono sicuro che qualcuno avra’ gia’ creato un utility affidabile.

        Buona fortuna

      • #11652
        Up
        0
        Down
        ::

        Ti posso suggerire una soluzione efficace ma non elegante.

        1)Fai calcolare a Ghostview il bounding box (visto che farlo ad occhio e’ scocciante :shock:)
        2)Edita il pdf e modifica i valori del MediaBox, settandoli uguali ai valori ritornati da Ghostview

        Per il primo punto da prompt usa un comando del genere
        `gswin32c.exe -q -dBATCH -sDEVICE=bbox -dFirstPage=1 -dLastPage=1 “il_mio_file.pdf”`

        Il device ‘bbox’ serve per ricavare il Bounding Box e l’HiResBoundingBox. Che a loro volta sono l’esatto ingombro della grafica dentro la pagina del tuo pdf.
        Una volta che hai l’HiResBoundingBox, lo trascrivi manualmente rispettando l’ordine, dentro MediaBox. Usa un editor spartano che non introduce formattazione e cerca qualcosa del tipo /MediaBox [x1 x2 x3 x4].
        Suppongo che se hai file pdf protetti, questo trucco non funziona perche’ non puoi editare il pdf a meno di corromperlo irremediabilmente. Dovresti prima sproteggerlo.

        Tuttavia questo trucco non e’ elegante, perche’ se apporti le modifiche come detto e ripeti il comando ghostscript sul pdf modificato, quest’ultimo ti da’ un warning dicendo che il file in questione e’ danneggiato. Ritengo che da qualche parte c’e’ un check (tipo un CRC o simili) anche se il pdf non e’ protetto/criptato. Ma qui mi avventuro in cose che non so. Nonostante tutto sia Ghosview che Adobe Reader 7 visualizzano perfettamente i pdf modificati.

        Occorrerebbe scrivere uno script che automatizzi il tutto…O meglio cercare in rete perche’ sono sicuro che qualcuno avra’ gia’ creato un utility affidabile.

        Funziona anche su Mac OS X, ovviamente si deve usare gs dal Terminale e non gswin32c.exe. Dando poi il comando “nano -w nomefile.pdf” la procedura funziona ottimamente.

        Ma c’è un modo meno invasivo: sotto alla riga con “/MediaBox [x1 x2 x3 x4]” si può aggiungere una riga
        `/CropBox [y1 y2 y3 y4]`
        e poi aprire il file con Acrobat che lo ripara; salvi e dovresti avere ciò che ti serve.

        Ciao
        Enrico

      • #11653
        lorenzo.pantieri
        Partecipante
          Up
          0
          Down
          ::

          Ti posso suggerire una soluzione efficace ma non elegante.

          Decisamente tu ed io abbiamo una concezione diversa di “fool-proof”! 🙄

          Sentiamo se arrivano soluzioni più semplici… 😉

          Grazie comunque,
          L.

        • #11654
          Up
          0
          Down
          ::

          Ma c’è un modo meno invasivo: sotto alla riga con “/MediaBox [x1 x2 x3 x4]” si può aggiungere una riga
          `/CropBox [y1 y2 y3 y4]`
          e poi aprire il file con Acrobat che lo ripara

          Avevo provato anch’io prima con il piu’ logico CropBox, ma il file modificato non era riparabile dal successivo riprocessamento con ghostscript. Forse Adobe Acrobat, che io non possiedo, e’ piu’ potente in tal senso.
          D’altra parte uso spesso il programmino eps2pdf (per Windows) e dal relativo manuale si desume che l’autore va a modificare addirittura /PageSize.
          L’importante e’ comunque risolvere il problema

          Saluti e buon fine settimana lungo

      Visualizzazione 3 filoni di risposte
      • Devi essere connesso per rispondere a questo topic.

      Go to top