@see iText in Action 2 - The reference for all itext stuff - chapter 16.3.3 integrating rich media !
On 3/08/2011 12:14, anishlodha04 wrote: > Hi, > I am new to itext and I am trying to embed fusion chart into a pdf as > RichMediaAnnotation but i am having some issues with that. > My swf file generates chart from an xml file. > i can't understand how to pass it as flashvars or by some other means so > that my embedded flash file can display charts. > > Here i am attaching my code. > > > ------------------------- > package com.embedflash; > > import java.io.FileNotFoundException; > import java.io.FileOutputStream; > > import com.itextpdf.text.Document; > import com.itextpdf.text.DocumentException; > import com.itextpdf.text.Rectangle; > import com.itextpdf.text.pdf.PdfAnnotation; > import com.itextpdf.text.pdf.PdfDeveloperExtension; > import com.itextpdf.text.pdf.PdfFileSpecification; > import com.itextpdf.text.pdf.PdfIndirectReference; > import com.itextpdf.text.pdf.PdfName; > import com.itextpdf.text.pdf.PdfWriter; > import com.itextpdf.text.pdf.richmedia.RichMediaActivation; > import com.itextpdf.text.pdf.richmedia.RichMediaAnnotation; > import com.itextpdf.text.pdf.richmedia.RichMediaConfiguration; > import com.itextpdf.text.pdf.richmedia.RichMediaInstance; > import com.itextpdf.text.pdf.richmedia.RichMediaParams; > > class TestEmbed > { > private static final String xmlString="<chart caption='Sales Summary' > subCaption='For the year 2010' numberPrefix='$' sformatNumberScale='1' > sNumberPrefix='$' syncAxisLimits='1' rotateValues='1' showSum='0'><set > label='Quarter 1' value='232400'/><set label='Quarter 2' > value='339800'/><set label='Quarter 3' value='411900'/><set label='Quarter > 4' value='398400'/> <categories><category label='Quarter 1'/><category > label='Quarter 2'/></categories> <dataset seriesName='Products'><set > value='232400'/><set value='232400'/> <dataset > seriesName='Product A'><set > value='232400'/><set value='232400'/></dataset> <dataset > seriesName='Product B'><set value='232400'/><set > value='232400'/></dataset><dataset seriesName='All Services' renderAs='line' > parentYAxis='S'><set value='214400'/><set > value='214100'/></dataset></dataset><lineset seriesName='Target > Profitability' valuePosition='BELOW'><set value='104400'/><set > value='104100'/></lineset></chart>"; > > TestEmbed() > { > Document doc = new Document(); > try > { > FileOutputStream fos = new FileOutputStream("output.pdf"); > PdfWriter writer = PdfWriter.getInstance(doc, fos); > writer.setPdfVersion(PdfWriter.PDF_VERSION_1_7); > > writer.addDeveloperExtension(PdfDeveloperExtension.ADOBE_1_7_EXTENSIONLEVEL3); > doc.open(); > RichMediaAnnotation media = new RichMediaAnnotation(writer,new > Rectangle(50, 800, 800, 800)); > PdfFileSpecification fs = > PdfFileSpecification.fileEmbedded(writer,"Column3D.swf", "output.pdf", > null); > PdfIndirectReference asset = media.addAsset("Column3D.swf", fs); > media.addAsset("Column3D.swf", fs); > RichMediaConfiguration config = new > RichMediaConfiguration(PdfName.FLASH); > RichMediaInstance instance = new RichMediaInstance(PdfName.FLASH); > RichMediaParams flashVars = new RichMediaParams(); > > String vars = "&dataXML="+xmlString; > flashVars.setFlashVars(vars); > instance.setParams(flashVars); > > instance.setAsset(asset); > config.addInstance(instance); > > PdfIndirectReference configRef = media.addConfiguration(config); > RichMediaActivation activation = new RichMediaActivation(); > activation.setConfiguration(configRef); > media.setActivation(activation); > > PdfAnnotation mediaanote = PdfAnnotation.createScreen(writer, > new Rectangle(200f, 700f, 400f, 800f), "Column3D.swf", fs, > "application/x-shockwave-flash", true); > > mediaanote.setFlags(PdfAnnotation.FLAGS_PRINT); > writer.addAnnotation(mediaanote); > doc.close(); > } catch (FileNotFoundException e) { > e.printStackTrace(); > } catch (DocumentException e) { > e.printStackTrace(); > } catch (Exception e) { > e.printStackTrace(); > } finally { > doc.close(); > } > } > > public static void main(String[] args) > { > TestEmbed e = new TestEmbed(); > } > > } > > > -- > View this message in context: > http://itext-general.2136553.n4.nabble.com/Embedding-Fusion-Charts-in-pdf-not-showing-any-chart-tp3714957p3714957.html > Sent from the iText - General mailing list archive at Nabble.com. > > ------------------------------------------------------------------------------ > BlackBerry® DevCon Americas, Oct. 18-20, San Francisco, CA > The must-attend event for mobile developers. Connect with experts. > Get tools for creating Super Apps. See the latest technologies. > Sessions, hands-on labs, demos& much more. Register early& save! > http://p.sf.net/sfu/rim-blackberry-1 > _______________________________________________ > iText-questions mailing list > iText-questions@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/itext-questions > > iText(R) is a registered trademark of 1T3XT BVBA. > Many questions posted to this list can (and will) be answered with a > reference to the iText book: http://www.itextpdf.com/book/ > Please check the keywords list before you ask for examples: > http://itextpdf.com/themes/keywords.php ------------------------------------------------------------------------------ BlackBerry® DevCon Americas, Oct. 18-20, San Francisco, CA The must-attend event for mobile developers. Connect with experts. Get tools for creating Super Apps. See the latest technologies. Sessions, hands-on labs, demos & much more. Register early & save! http://p.sf.net/sfu/rim-blackberry-1 _______________________________________________ iText-questions mailing list iText-questions@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/itext-questions iText(R) is a registered trademark of 1T3XT BVBA. Many questions posted to this list can (and will) be answered with a reference to the iText book: http://www.itextpdf.com/book/ Please check the keywords list before you ask for examples: http://itextpdf.com/themes/keywords.php