come ritagliare un’immagine in includegraphics con xelatex

  • Creatore
    Topic
  • #59949
    Up
    0
    Down
    ::


    Salve,

    Se compilo l’esempio allegato con $pdflatex esempio.tex le opzioni trim/clip funzionano correttamente.
    Quando invece compiloo usando $xelatex esempio.tex le opzioni trim/clip NON funzionano correttamente.

    Come posso compilare con xelatex ritagliando correttamente le immagini (se possibile sia con, sia senza opzione handout)?
    nota: non vorrei ritagliare le immagini con un programma di image editing manualmente.

    `\documentclass[9pt]{beamer}
    %\documentclass[9pt,handout]{beamer}
    %\usepackage{pgfpages}
    %\pgfpagesuselayout{4 on 1}[a4paper,border shrink=5mm,landscape, frame]
    \usepackage[english]{babel}
    \usepackage{graphicx,graphics,calc}
    \begin{document}
    \begin{frame}
    \includegraphics[trim=10mm 10mm 10mm 10mm,clip,width=3cm]{fig} \hspace{1mm}
    \includegraphics[trim=0mm 0mm 0mm 0mm,clip,width=3cm]{fig}
    \end{frame}
    \end{document}`

Visualizzazione 3 filoni di risposte
  • Autore
    Risposte
    • #59950
      OldClaudio
      Partecipante
        Up
        0
        Down
        ::


        xelatex per ora non ha la capacità “clip”; quindi non serve usare né viewport né trim sia con lopzione clio sia con il comando asteriscato.

        Devi scontronare prima con una cosa come pdfcrop oppure lavorando con software grafici che, all’occorrenza, non facciano perdere la natura vettoriale alle immagini.

        Per esempio se hai da scontornare una immagine in formato eps, NON usare il programma Gimp; esso è in grado di aprire il formato eps, ma non è in grado di salvare in quel formato, ma salva solo in uno dei tanti formati a matrici di pixel, perdendo così la natura vettoriale del disegno. Certo se l’immagine era una fotografia in formato eps (raro ma non impossibile) allora anche Gimp va bene. Ma se era un disegno al tratto riesci ad inserire il tuo disegno in modo decente sole se mantieni una densità di pixel al pollice enorme, altrimenti l’immagine può sgranarsi ad un punto tale da diventare indecente.

        Per ora, quindi, se proprio devi usare Xelatex, devi procedere manualmente.

      • #59951
        Up
        0
        Down
        ::

        xelatex per ora non ha la capacità “clip”; quindi non serve usare né viewport né trim sia con lopzione clio sia con il comando asteriscato.
        […]
        Per ora, quindi, se proprio devi usare Xelatex, devi procedere manualmente.

        Grazie per la risposta Claudio.

        A questo indirizzo http://answerpot.com/showthread.php?649663-PDF+Media%2C+Trim%2C+and+Bleed+boxes+in+XeTeX ho trovato :

        I have been looking into creating pre-press quality (PDF X-1a at least) PDFs via XeLaTeX. It seems that most things are there: embedded fonts (pdffonts tells me that they are), hyperxmp for metadata, etc. The only thing missing seems to be the TrimBox and Bleed Boxes. Is there a way to get these into XeTeX? I can do it using \special but it seems like something the geometry package should do when knows it will produce PDFs (and should work with the crop package).

        Cosa e’ “\special” potrebbe essere una soluzione?

      • #59952
        Up
        0
        Down
        ::

        xelatex per ora non ha la capacità “clip”; quindi non serve usare né viewport né trim sia con lopzione clio sia con il comando asteriscato.
        […]
        Per ora, quindi, se proprio devi usare Xelatex, devi procedere manualmente.

        Grazie per la risposta Claudio.

        A questo indirizzo http://answerpot.com/showthread.php?649663-PDF+Media%2C+Trim%2C+and+Bleed+boxes+in+XeTeX ho trovato :

        I have been looking into creating pre-press quality (PDF X-1a at least) PDFs via XeLaTeX. It seems that most things are there: embedded fonts (pdffonts tells me that they are), hyperxmp for metadata, etc. The only thing missing seems to be the TrimBox and Bleed Boxes. Is there a way to get these into XeTeX? I can do it using \special but it seems like something the geometry package should do when knows it will produce PDFs (and should work with the crop package).

        Cosa e’ “\special” potrebbe essere una soluzione?

        La questione discussa là riguarda l’interazione fra crop, geometry e XeLaTeX. Non ha nulla a che fare con il clipping di immagini incluse.

        Ciao
        Enrico

      • #59953
        OldClaudio
        Partecipante
          Up
          0
          Down
          ::


          \special è un comando per inserire nel file di uscita comandi speciali per il “driver” che rende visibile/stampabile il file di uscita e serve quindi per inserire nel file di uscita cose scritte nel linguaggio del driver.

          Però volendo, forse, si potrebbe fare in un colpo solo la compilazione Xellatex e lo scontornamento; basta dire a Xelatex di lanciare il programma esterno pdfcorp sul file dell’immagine e poi rinominare l’immagine col nome volute perché \includegraphics la includa; per esempio se tu dovessi scontornare il file figura.pdf potreti provare a fare così:

          `
          \begin{figure}
          \immediate\write18{mv figura.pdf ./figura-old.pdf}
          \immediate\write18{pdfcrop figura-old.pdf figura.pdf}
          \centering
          \includegraphics[width=…]{figura}
          \caption[..]{…}
          \label{…}
          \end{figure}
          `

          Per altro puoi dare il comando da terminale pdfcrop –help e vedere che cosa poi fare di più con quello script perl.

          Questo modo di procedere può funzionare, e dovrebbe funzionare senz’altro se fra le opzioni per lanciare xelatex hai inserito anche –shell-escape e se la tua versione di Xelatex è sufficientemente recente.Se l’opzione –shell-escape non c’è, tieni presente che la distribuzione TeXLive 2010 ammentte di default un versione limitata di quell’opzione che consente ai compilatori pdftex, xetex e luatex di eseguire alcuni comandi esterni fra cui probabilmente c’è anche pdfcrop questo a sua volta prevede l’opzione –restricted che forse è quella da usare se manc nella stringa di lancio l’opzione non ristretta.

          Pdfcrop consente anche di eseguire tutta l’operazione con ghostscript di versione 8.x nel caso che i programma di lancio non sia in grado di determinare il bounding box da solo; quindi con xetex forse dovrebbe essere questa la via da seguire.

          nota che ti ho fornito molte informazioni, e ti ho indicato dove approfondire; io generalmente preferisco operare a mano,ma \write18 è molto comodo, quindi se vuoi seguire questa strada bisogna che tu approfondisca meglio. Io non l’ho mai seguita, e non ho voglia di farlo perché, come ho detto, preferisco procedere a mano.

          Altra soluzione; visto che non hai problemi a scontornare o a ritagliare una figura con pdftex, creati un file minimi da eseguire con pdftex che ti produca solo la figura voluta e scontornata su un’unica pagina; esiste fra i mille pacchetti di laTeX anche un pacchetto che produce le pagine già scontornate, cioè già su un supporto fisico (virtuale) avente le stesse dimensioni della figura o del contenuto della pagina. usa quel pacchetto e avrai direttamente la figura scontornata o ritagliata.

          Capisco che è sempre un modo di operare esterno, anche se metti i comandi di sistema dentro all’argomento di \write18, cambia la forma ma non la sostanza; è sempre un programma esterno che fa il lavoro.

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

      Go to top