2013-03-26 4 views
2

글꼴 글꼴, 색상, 크기 및 스타일 (굵게, 기울임 꼴, 밑줄)과 같은 사용자 지정 글꼴 스타일로 보고서를 생성하는 응용 프로그램이 있습니다. 그리고 저는 Windows 시스템의 모든 font-family를 사용합니다.iReport 글꼴을 매개 변수로 변경하는 방법

.jrxml 파일에서 매개 변수를 사용하려고합니다. 이처럼 : <parameter name="fontFamily" class="java.awt.Font"/>

그리고 텍스트
: 난의 iReport에서 미리 볼 때

<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> 

, 그것은 로그인 오류 :

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)  

제발 도와주세요, 감사 :

+0

이것을 확인할 수 있습니다. http://stackoverflow.com/questions/10738431/jasperreports-change-font-size-by-param-value – Atrix1987

+0

@fanjavaid [조건부 스타일] (http : // jasperreports. sourceforge.net/sample.reference/jasper/index.html#conditionalstyles) –

+0

알렉스의 조건부 스타일 권장 사항은 두 번째이지만 $ P! 입력이 "Arial"또는 "Times New Roman"이되어 따옴표가 글꼴 이름과 함께 나타납니다 . – Lisa

답변

1

다음 속성을 설정하십시오.

Markup : html 
Text field expression : "<font face='" + $P{fontName} + "'>" + $F{field1} + "</font>" 

$ P {fontName} 값을 으로 설정하면 차이점을 볼 수 있습니다. MonospacedSansSerif.

관련 문제