Visualizzazione dei risultati da 1 a 6 su 6

Discussione: [iText]Copiare pdf

  1. #1
    Utente di HTML.it L'avatar di wallrider
    Registrato dal
    Apr 2003
    Messaggi
    2,755

    [iText]Copiare pdf

    Ciao a tutti
    il mio obiettivo è "splittare" un file pdf: dato un file file.pdf, ottenere filea.pdf,fileb.pdf e filec.pdf, dove abc sono delle informazioni dentro il pdf originale.
    le informazioni le ricavo perfettamente, infatti su un file di log che mi creo ottengo

    copio file.pdf in filea.pdf
    copio file.pdf in fileb.pdf
    copio file.pdf in filec.pdf
    il problema è che usando questa funzione

    codice:
    	public static void copy(String fromFile, String toFile) throws IOException {
      		FileReader in = new FileReader(new File(fromFile));
     		FileWriter out = new FileWriter(new File(toFile));
     		int c;
      		while ((c = in.read()) != -1)
     			out.write(c);
      		in.close();
     		out.close(); 
    		/*System.out.println("Copio da "+fromFile+" a "+toFile);*/
     	}
    il file risultante ha il numero giusto di pagine ma il contenuto è completamente bianco.
    C'è qualche classe di iText che può fare al caso mio?
    RIP Cicciobenzina 9/11/2010

    "Riseminaciceli, i ceci nell'orto"

  2. #2
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284

    Re: [iText]Copiare pdf

    Originariamente inviato da wallrider
    codice:
    	public static void copy(String fromFile, String toFile) throws IOException {
      		FileReader in = new FileReader(new File(fromFile));
     		FileWriter out = new FileWriter(new File(toFile));
                    ....
    Per copiare file in generale i Reader/Writer non servono. Essi sono orientati ai "caratteri". Vanno usati FileInputStream/FileOutputStream (orientati ai byte), leggendo/scrivendo preferibilmente "a blocchi" (non 1 byte per volta!)
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  3. #3
    Utente di HTML.it L'avatar di wallrider
    Registrato dal
    Apr 2003
    Messaggi
    2,755
    ok funziona
    quindi posso usare le classi FileInputStream/FileOutputStream in qualsiasi occasione, che si tratti di files testo o binari?
    RIP Cicciobenzina 9/11/2010

    "Riseminaciceli, i ceci nell'orto"

  4. #4
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Originariamente inviato da wallrider
    quindi posso usare le classi FileInputStream/FileOutputStream in qualsiasi occasione, che si tratti di files testo o binari?
    Se devi fare una "copia" esatta del contenuto di un file, sì.
    Se devi leggere ed estrarre le informazioni .... no, dipende se testo/binario e come è il formato.
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  5. #5
    Utente di HTML.it L'avatar di wallrider
    Registrato dal
    Apr 2003
    Messaggi
    2,755
    Originariamente inviato da andbin
    Se devi fare una "copia" esatta del contenuto di un file, sì.
    ...
    intendevo questo

    grazie mille!
    RIP Cicciobenzina 9/11/2010

    "Riseminaciceli, i ceci nell'orto"

  6. #6
    Utente di HTML.it L'avatar di wallrider
    Registrato dal
    Apr 2003
    Messaggi
    2,755
    niente, le prestazioni sono pessime
    è possibile (sempre con iText) da un file di n pagine creare n/2 files, ovvero un file per ogni pagina dispari del file originario?
    questo è il codice attuale
    codice:
    ...
            PdfReader reader = new PdfReader(fileOriginale);
            int pages = reader.getNumberOfPages();
    		setFiles2CopyLogPath(destFolder);
    		
            for (int i = 1; i <= pages; i+=2) {
                byte[] streamBytes = reader.getPageContent(i);
                //String contentStream = new String(streamBytes);
    ...
    ho trovato in giro un po' di documentazione per creare files pdf, ma niente che utilizzi ciò che è ottenuto da getPageContent()

    voi avete esperienze in merito?
    RIP Cicciobenzina 9/11/2010

    "Riseminaciceli, i ceci nell'orto"

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.