Одно примечание: Имейте в виду, что RichMedia в PDF является PDF 1.7 с расширениями и, следовательно, работает только с Adobe Reader 9+ (10 не рекомендуется, так как это есть ошибка в этом которая никогда не была исправлена).
Первый ответ используется RenderX, так как я работаю для RenderX, это легко. Вот шаблон XSL, который можно использовать для вставки так называемой RichMedia Annotation.
Вы можете иметь некоторые XML в файл, как это:
<chart swf="SWF\Anychart.swf" flashvar="XMLData" width="300" height="300">
<anychart>....</anychart> <!-- put the XML for the chart here -->
<resources>
<resource src="img\a.png"/>
</resources>
</chart>
Вы можете получить от них для вызова шаблона ниже.
Параметры здесь:
chartxml: XML-файл, который приводит диаграмму
ширина и высота: само пояснительную
FlashVar: команда FlashVar передать XML в SWF. Для AnyChart это «XMLDATA» для FusionCharts это «dataXML»
@swf: в этом шаблоне это путь к фактической SWF-файла (например, «SWF'Anychart.swf» или «SWF \ Bar2D.swf "
ресурс: любой другой внешний ресурс нужны диаграмм или карта или что-то (например, изображения)
<xsl:template name="add-on.richmedia">
<xsl:param name="chartxml"/>
<xsl:param name="width"/>
<xsl:param name="height"/>
<xsl:param name="flashvar"/>
<fo:block>
<rx:rich-media-object scaling="non-uniform" name="test" width="{concat($width,'pt')}" height="{concat($height,'pt')}" content-width="scale-to-fit" content-height="scale-to-fit" transparency="true">
<xsl:attribute name="src">
<xsl:value-of select="@swf"/>
</xsl:attribute>
<rx:flash-var name="{$flashvar}" content="true">
<xsl:apply-templates select="$chartxml" mode="copy-of"/>
</rx:flash-var>
<xsl:for-each select="resources/resource">
<rx:rich-media-resource>
<xsl:attribute name="src">
<xsl:text>url('</xsl:text>
<xsl:value-of select="@src"/>
<xsl:text>')</xsl:text>
</xsl:attribute>
<xsl:attribute name="name">
<xsl:value-of select="@src"/>
</xsl:attribute>
</rx:rich-media-resource>
</xsl:for-each>
</rx:rich-media-object>
</fo:block>
</xsl:template>
Это вставить блок в документ FO с гм:. богатыми медиа-объект RenderX обрабатывает все внутренние элементы связи связанных активов (XML и любые ресурсы) внутри PDF. Результатом является интерактивная флеш-карта внутри do cument при форматировании в PDF. Есть и другие способы сделать это. Вы даже можете вставить флеш-память и использовать «XML-файл» (для Anychart) или «dataurl» для FUsioncharts и поместить URL-адрес в данные (например, http://mychartserver.com/getdata) или что угодно, и подавать динамические данные в PDF каждый раз, когда он открыт.
Для iText на вашем сайте есть идеальные образцы, а не размещение здесь. Посмотрите на эту ссылку, он показывает весь код в Java требуется вставить SWF и набор данных:
http://itextpdf.com/examples/iia.php?id=300
можно как с IText и RenderX, эти два инструмента, которые я использую больше всего. И вы можете встроить практически любой интерактивный Flash-контент. Я использую Anychart, но Fusionchart также работает. Я могу отправить код для вас немного. Придется выкопать его. –