当前位置: 首页>>代码示例>>Java>>正文


Java JRDesignImage.setWidth方法代码示例

本文整理汇总了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);
	}
 
开发者ID:PGWelch,项目名称:com.opendoorlogistics,代码行数:58,代码来源:ReportBuilderUtils.java

示例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;
}
 
开发者ID:JockiHendry,项目名称:ireport-fork,代码行数:68,代码来源:CreateImageAction.java

示例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;
}
 
开发者ID:rlsutton1,项目名称:VaadinUtils,代码行数:79,代码来源:JasperManager.java


注:本文中的net.sf.jasperreports.engine.design.JRDesignImage.setWidth方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。