Non riesco a capire come aggiungere un'immagine esterna (a cui fa riferimento un URL) a un PDF utilizzando iText. Questo tipo di cose è possibile?Aggiunta di immagini esterne a PDF utilizzando iText
La specifica PDF in 7.1.5 dice che dovresti essere in grado di fare riferimento a un PDF tramite un URL utilizzando una specifica URL. Questo è quello che ho finora:
PdfFileSpecification pdfSpec =
PdfFileSpecification.url(writer, "http://www.someurl.com/test.jpg");
StringBufferInputStream sbis = new StringBufferInputStream("");
PdfStream dict = new PdfStream(sbis, writer);
dict.put(PdfName.FILTER, PdfName.DCTDECODE)
dict.put(PdfName.TYPE, PdfName.XOBJECT);
dict.put(PdfName.SUBTYPE, PdfName.IMAGE);
dict.put(PdfName.WIDTH, new PdfNumber(100));
dict.put(PdfName.HEIGHT, new PdfNumber(100));
dict.put(PdfName.BITSPERCOMPONENT, new PdfNumber(8));
dict.put(PdfName.LENGTH, new PdfNumber(0));
dict.put(PdfName.F, pdfSpec);
PdfIndirectObject img = writer.addToBody(dict);
so ho ancora bisogno di assicurarsi che si aggiunge e roba lo spazio colore, ma la mia preoccupazione principale in questo momento è in realtà sempre questa immagine nel corpo del documento . Non riesco a capire come farlo ... sembra che non riesca a ottenere un riferimento a una PdfPage o al dizionario delle risorse o altro. È possibile usare iText?
Come nota a margine, questo esercizio è inutile se mi verrà presentato un avviso di sicurezza quando la vista tenta di caricare l'immagine. Qualcuno sa se questo è il caso?
Inoltre, se questo tipo di operazione di basso livello non è possibile in iText, esiste un'altra libreria PDF che rende questo più facile da eseguire? – MikeQ
Sulla base del tuo commento qui sotto, quello che stai cercando di fare è tracciare quando un documento viene aperto da un utente. Ecco un esempio di come aggiungere codice per effettuare una chiamata attiva a un URL: http://stackoverflow.com/questions/8099927/tracking-code-into-a-pdf-or-postscript-file – CobaltBlue