本文整理汇总了Java中net.sf.jasperreports.engine.design.JRDesignImage.setWidth方法的典型用法代码示例。如果您正苦于以下问题:Java JRDesignImage.setWidth方法的具体用法?Java JRDesignImage.setWidth怎么用?Java JRDesignImage.setWidth使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类net.sf.jasperreports.engine.design.JRDesignImage
的用法示例。
在下文中一共展示了JRDesignImage.setWidth方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: addTitle
import net.sf.jasperreports.engine.design.JRDesignImage; //导入方法依赖的package包/类
static void addTitle(String title, int elementWidth,boolean hasHeaderMap, boolean hasDetails,JasperDesign ret) {
JRDesignBand band = new JRDesignBand();
int titleHeight = 50;
band.setHeight(titleHeight);
JRDesignTextField textField = new JRDesignTextField();
textField.setBlankWhenNull(true);
textField.setX(0);
textField.setY(10);
textField.setWidth(elementWidth);
textField.setHeight(38);
textField.setHorizontalAlignment(HorizontalAlignEnum.CENTER);
textField.setFontSize(26);
textField.setBold(true);
JRDesignExpression expression = new JRDesignExpression();
expression.setText("\"" + title + "\"");
textField.setExpression(expression);
band.addElement(textField);
if(hasHeaderMap){
double pictureWidthPoints = elementWidth;// / 10.0;
double pictureXOffset = (elementWidth - pictureWidthPoints)/2.0;
double pictureWidthCM = pictureWidthPoints * ReportConstants.POINT_SIZE_IN_CM;
// get picture height
double pictureHeightCM = 10;
if(hasDetails==false){
// take whole page except for title
double points = getAvailablePageHeight(ret) - titleHeight -40;
pictureHeightCM = points * ReportConstants.POINT_SIZE_IN_CM;
}
else if (getAvailablePageHeight(ret) < getAvailableWidth(ret)){
// landscape; make shorter
pictureHeightCM = 6;
}
double pictureHeightPoints = pictureHeightCM / ReportConstants.POINT_SIZE_IN_CM;
String imgExpression = "((" + ReportConstants.IMAGE_PROVIDER_INTERFACE + ")" + "$P{" + ReportConstants.HEADER_MAP_PROVIDER_PARAMETER + "})."
+ ReportConstants.IMAGE_PROVIDER_INTERFACE_METHOD + "(" +pictureWidthCM +"," + pictureHeightCM + ",200)";
JRDesignImage img = new JRDesignImage(null);
img.setScaleImage(ScaleImageEnum.RETAIN_SHAPE);
img.setExpression(new JRDesignExpression(imgExpression));
img.setX((int)Math.round(pictureXOffset));
img.setY(titleHeight);
img.setWidth((int)Math.round(pictureWidthPoints));
img.setHeight((int)Math.round(pictureHeightPoints));
setImageBorder(img);
// img.getLineBox().s
band.setHeight(band.getHeight() + 10 +img.getHeight());
band.addElement(img);
//JRdesign
}
ret.setTitle(band);
}
示例2: createReportElement
import net.sf.jasperreports.engine.design.JRDesignImage; //导入方法依赖的package包/类
public JRDesignElement createReportElement(JasperDesign jd)
{
File parent = new File(IReportManager.getInstance().getCurrentDirectory());
// Try to figure it out the current directory of the report...
if (IReportManager.getInstance().getActiveVisualView() != null)
{
JrxmlVisualView view = IReportManager.getInstance().getActiveVisualView();
FileObject obj = view.getEditorSupport().getDataObject().getPrimaryFile();
File f = FileUtil.toFile(obj);
if (f != null && f.getParentFile().exists())
{
parent = f.getParentFile();
}
}
final javax.swing.JFileChooser jfc = new javax.swing.JFileChooser( parent );
jfc.setDialogTitle("Select an image file....");
jfc.setFileFilter( new javax.swing.filechooser.FileFilter() {
public boolean accept(java.io.File file) {
String filename = file.getName();
return (filename.endsWith(".jpg") ||
filename.endsWith(".jpeg") ||
filename.endsWith(".gif") ||
file.isDirectory()) ;
}
public String getDescription() {
return "Image *.gif|*.jpg";
}
});
jfc.setMultiSelectionEnabled(false);
final JRDesignImage element = new JRDesignImage(jd);
element.setWidth(100);
element.setHeight(50);
jfc.setDialogType( javax.swing.JFileChooser.OPEN_DIALOG);
if (jfc.showOpenDialog( null) == javax.swing.JOptionPane.OK_OPTION) {
element.setExpression( Misc.createExpression("java.lang.String", "\""+ Misc.string_replace("\\\\","\\",jfc.getSelectedFile().getPath() +"\"")));
IReportManager.getInstance().setCurrentDirectory(jfc.getSelectedFile().getParent(), true);
// Try to identify the image size...
SwingUtilities.invokeLater(new Runnable()
{
public void run()
{
try {
ImageIcon image = new ImageIcon(jfc.getSelectedFile().getPath());
if (image.getIconWidth() > 0)
{
element.setWidth( image.getIconWidth());
}
if (image.getIconHeight() > 0)
{
element.setHeight( image.getIconHeight());
}
} catch (Exception ex)
{
}
}
});
}
return element;
}
示例3: determineSizeOfTemplateBandAndReplaceTitlePlaceHolder
import net.sf.jasperreports.engine.design.JRDesignImage; //导入方法依赖的package包/类
/**
* replace the place holder in the targetBand with the report title, also
* add a set of dynamically generated user friendly report parameter fields
* to this band and add parameters to the report for them if not already
* present.
*
* @param designFile
* @param templateBand
* @param targetBand
* @param margin
* @return
* @throws JRException
*/
private int determineSizeOfTemplateBandAndReplaceTitlePlaceHolder(JasperDesign designFile, JRBand templateBand,
JRDesignBand targetBand, int margin) throws JRException
{
int maxY = 0;
for (JRElement element : templateBand.getElements())
{
JRDesignElement de = (JRDesignElement) element;
if (element instanceof JRStaticText)
{
JRStaticText st = (JRStaticText) element;
if (st.getText().equalsIgnoreCase("report name place holder"))
{
st.setText(reportProperties.getReportTitle());
st.setWidth((designFile.getPageWidth() - st.getX()) - (margin * 2));
}
}
if (element instanceof JRDesignImage)
{
JRDesignImage im = (JRDesignImage) element;
String expr = im.getExpression().getText();
if (expr.contains("logo.png"))
{
int height = 140;
final int imageWidth = designFile.getPageWidth() - (margin * 2);
String fileName = reportProperties.generateDynamicHeaderImage(imageWidth, height,
reportProperties.getReportTitle());
im.setWidth(imageWidth);
// im.setHeight(height);
im.setX(-8);
expr = expr.replace("logo.png", fileName);
im.setExpression(new JRDesignExpression(expr));
}
}
maxY = Math.max(maxY, de.getY() + de.getHeight());
targetBand.addElement(de);
}
JRDesignStaticText paramElement = new JRDesignStaticText();
paramElement.setText("Parameters");
paramElement.setWidth(525);
paramElement.setHeight(15);
paramElement.setBackcolor(new Color(95, 96, 98));
paramElement.setForecolor(new Color(255, 255, 255));
paramElement.setMode(ModeEnum.OPAQUE);
paramElement.setX(0);
paramElement.setY(maxY + 2);
paramElement.setFontName("Arial");
paramElement.setBold(true);
paramElement.setFontSize(12);
paramElement.setHorizontalAlignment(HorizontalAlignEnum.CENTER);
paramElement.setVerticalAlignment(VerticalAlignEnum.MIDDLE);
targetBand.addElement(paramElement);
maxY = paramElement.getY() + paramElement.getHeight();
maxY = addParametersToDisplayReportParameters(designFile, targetBand, maxY);
return maxY;
}