フォント ファミリ、色、サイズ、スタイル (太字、斜体、下線) などのカスタム フォント スタイルでレポートを生成するアプリケーションがあります。そして、私はWindowsシステムのすべてのフォントファミリを使用しています.
.jrxml ファイルでパラメーターを使用しようとしています。このような :
<parameter name="fontFamily" class="java.awt.Font"/>
そしてテキストで:
<staticText>
<reportElement uuid="3c9d8704-dbae-49ed-9787-477ff5b8742f" x="4" y="4" width="241" height="15" forecolor="#FFFFFF"/>
<textElement verticalAlignment="Middle">
<font fontName="$P{fontFamily}" size="11" isBold="true"/>
</textElement>
<text><![CDATA[Hasil Pemeriksaan PROCEDURE]]></text>
</staticText>
iReportでプレビューすると、エラーが記録されます:
Error filling print... Font '$P{fontFamily}' is not available to the JVM. See the Javadoc for more details.
java.lang.NoSuchMethodException: java.awt.Font.<init>(java.lang.String)
at java.lang.Class.getConstructor0(Class.java:2730)
at java.lang.Class.getConstructor(Class.java:1676)
at com.jaspersoft.ireport.designer.compiler.prompt.Prompter$1.run(Prompter.java:278)
at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:241)
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:727)
at java.awt.EventQueue.access$200(EventQueue.java:103)
at java.awt.EventQueue$3.run(EventQueue.java:688)
at java.awt.EventQueue$3.run(EventQueue.java:686)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:697)
at org.netbeans.core.TimableEventQueue.dispatchEvent(TimableEventQueue.java:104)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:242)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:161)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:150)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:146)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:138)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:91)
私を助けてください、前にありがとう:)