List of usage examples for com.liferay.portal.kernel.image ImageToolUtil scale
public static RenderedImage scale(RenderedImage renderedImage, int maxHeight, int maxWidth)
From source file:com.idetronic.subur.service.impl.AuthorLocalServiceImpl.java
License:Open Source License
public Author updatePortrait(long authorId, byte[] bytes) throws PortalException, SystemException { Author author = authorPersistence.findByPrimaryKey(authorId); long imageMaxSize = Long.valueOf(PortletProps.get("author.image.max.size")); if ((imageMaxSize > 0) && ((bytes == null) || (bytes.length > imageMaxSize))) { throw new UserPortraitSizeException(); }/*from w w w . j a v a 2 s. c o m*/ long portraitId = author.getPortraitId(); if (portraitId <= 0) { portraitId = counterLocalService.increment(); author.setPortraitId(portraitId); } try { ImageBag imageBag = ImageToolUtil.read(bytes); RenderedImage renderedImage = imageBag.getRenderedImage(); if (renderedImage == null) { throw new UserPortraitTypeException(); } int maxHeight = Integer.valueOf(PortletProps.get("author.image.max.height")); int maxWidth = Integer.valueOf(PortletProps.get("author.image.max.width")); renderedImage = ImageToolUtil.scale(renderedImage, maxHeight, maxWidth); String contentType = imageBag.getType(); imageLocalService.updateImage(portraitId, ImageToolUtil.getBytes(renderedImage, contentType)); } catch (IOException ioe) { throw new ImageSizeException(ioe); } authorPersistence.update(author); return author; }
From source file:com.inikah.slayer.service.impl.PhotoLocalServiceImpl.java
License:Open Source License
private void minifyPhoto(Image image, long thumbnailId, float newWidth) { ImageBag imageBag = null;// w ww .ja v a 2 s .c o m try { imageBag = ImageToolUtil.read(image.getTextObj()); } catch (IOException e) { e.printStackTrace(); } if (Validator.isNull(imageBag)) return; RenderedImage renderedImage = imageBag.getRenderedImage(); float reduceBy = (newWidth / (float) image.getWidth()); long height = Math.round(image.getHeight() * reduceBy); long width = Math.round(image.getWidth() * reduceBy); renderedImage = ImageToolUtil.scale(renderedImage, (int) height, (int) width); byte[] bytes = null; try { bytes = ImageToolUtil.getBytes(renderedImage, image.getType()); } catch (IOException e) { e.printStackTrace(); } if (Validator.isNotNull(bytes)) { try { imageLocalService.updateImage(thumbnailId, bytes); } catch (PortalException e) { e.printStackTrace(); } catch (SystemException e) { e.printStackTrace(); } } }
From source file:com.liferay.adaptive.media.image.internal.scaler.AMDefaultImageScaler.java
License:Open Source License
@Override public AMImageScaledImage scaleImage(FileVersion fileVersion, AMImageConfigurationEntry amImageConfigurationEntry) { try {/*from w w w. j a va2 s . c o m*/ RenderedImage renderedImage = _tiffOrientationTransformer.transform(() -> _getInputStream(fileVersion)); Map<String, String> properties = amImageConfigurationEntry.getProperties(); int maxHeight = GetterUtil.getInteger(properties.get("max-height")); int maxWidth = GetterUtil.getInteger(properties.get("max-width")); RenderedImage scaledRenderedImage = ImageToolUtil.scale(renderedImage, maxHeight, maxWidth); return new AMImageScaledImageImpl( RenderedImageUtil.getRenderedImageContentStream(scaledRenderedImage, fileVersion.getMimeType()), scaledRenderedImage.getHeight(), scaledRenderedImage.getWidth()); } catch (IOException | PortalException e) { StringBundler sb = new StringBundler(4); sb.append("Unable to scale file entry "); sb.append(fileVersion.getFileEntryId()); sb.append(" to match adaptive media configuration "); sb.append(amImageConfigurationEntry.getUUID()); throw new AMRuntimeException.IOException(sb.toString(), e); } }
From source file:com.liferay.adaptive.media.image.internal.util.ImageProcessor.java
License:Open Source License
public RenderedImage scaleImage(FileVersion fileVersion, AdaptiveMediaImageConfigurationEntry configurationEntry) { try {/* w w w .ja v a 2s . co m*/ RenderedImage renderedImage = _tiffOrientationTransformer.transform(() -> _getInputStream(fileVersion)); Map<String, String> properties = configurationEntry.getProperties(); int maxHeight = GetterUtil.getInteger(properties.get("max-height")); int maxWidth = GetterUtil.getInteger(properties.get("max-width")); return ImageToolUtil.scale(renderedImage, maxHeight, maxWidth); } catch (PortalException pe) { throw new AdaptiveMediaRuntimeException.IOException(pe); } }
From source file:com.liferay.portlet.documentlibrary.service.impl.DLFileEntryLocalServiceImpl.java
License:Open Source License
public void updateSmallImage(long smallImageId, long largeImageId) throws PortalException, SystemException { try {// w w w . jav a 2 s . co m RenderedImage renderedImage = null; Image largeImage = imageLocalService.getImage(largeImageId); byte[] bytes = largeImage.getTextObj(); String contentType = largeImage.getType(); if (bytes != null) { ImageBag imageBag = ImageToolUtil.read(bytes); renderedImage = imageBag.getRenderedImage(); //validate(bytes); } if (renderedImage != null) { int height = PrefsPropsUtil.getInteger(PropsKeys.DL_FILE_ENTRY_THUMBNAIL_MAX_HEIGHT); int width = PrefsPropsUtil.getInteger(PropsKeys.DL_FILE_ENTRY_THUMBNAIL_MAX_WIDTH); RenderedImage thumbnailRenderedImage = ImageToolUtil.scale(renderedImage, height, width); imageLocalService.updateImage(smallImageId, ImageToolUtil.getBytes(thumbnailRenderedImage, contentType)); } } catch (IOException ioe) { throw new ImageSizeException(ioe); } }
From source file:com.liferay.portlet.documentlibrary.util.DLPreviewableProcessor.java
License:Open Source License
protected void storeThumbnailImage(FileVersion fileVersion, RenderedImage renderedImage, int index) throws Exception { if (!isThumbnailEnabled(index) || hasThumbnail(fileVersion, index)) { return;/*from w w w . ja v a2 s . c o m*/ } String type = getThumbnailType(fileVersion); String maxHeightPropsKey = PropsKeys.DL_FILE_ENTRY_THUMBNAIL_MAX_HEIGHT; String maxWidthPropsKey = PropsKeys.DL_FILE_ENTRY_THUMBNAIL_MAX_WIDTH; if (index == THUMBNAIL_INDEX_CUSTOM_1) { maxHeightPropsKey = PropsKeys.DL_FILE_ENTRY_THUMBNAIL_CUSTOM_1_MAX_HEIGHT; maxWidthPropsKey = PropsKeys.DL_FILE_ENTRY_THUMBNAIL_CUSTOM_1_MAX_WIDTH; } else if (index == THUMBNAIL_INDEX_CUSTOM_2) { maxHeightPropsKey = PropsKeys.DL_FILE_ENTRY_THUMBNAIL_CUSTOM_2_MAX_HEIGHT; maxWidthPropsKey = PropsKeys.DL_FILE_ENTRY_THUMBNAIL_CUSTOM_2_MAX_WIDTH; } RenderedImage thumbnailRenderedImage = ImageToolUtil.scale(renderedImage, PrefsPropsUtil.getInteger(maxHeightPropsKey), PrefsPropsUtil.getInteger(maxWidthPropsKey)); byte[] bytes = ImageToolUtil.getBytes(thumbnailRenderedImage, type); File file = null; try { file = FileUtil.createTempFile(bytes); addFileToStore(fileVersion.getCompanyId(), THUMBNAIL_PATH, getThumbnailFilePath(fileVersion, type, index), file); } finally { FileUtil.delete(file); } }
From source file:com.liferay.portlet.documentlibrary.util.PDFProcessorImpl.java
License:Open Source License
private void _generateImagesPB(FileVersion fileVersion, PDPage pdPage, int index) throws Exception { // Generate images RenderedImage renderedImage = pdPage.convertToImage(BufferedImage.TYPE_INT_RGB, PropsValues.DL_FILE_ENTRY_PREVIEW_DOCUMENT_DPI); if (PropsValues.DL_FILE_ENTRY_PREVIEW_DOCUMENT_MAX_HEIGHT != 0) { renderedImage = ImageToolUtil.scale(renderedImage, PropsValues.DL_FILE_ENTRY_PREVIEW_DOCUMENT_MAX_WIDTH, PropsValues.DL_FILE_ENTRY_PREVIEW_DOCUMENT_MAX_HEIGHT); } else {/*from ww w. j ava 2 s .com*/ renderedImage = ImageToolUtil.scale(renderedImage, PropsValues.DL_FILE_ENTRY_PREVIEW_DOCUMENT_MAX_WIDTH); } // Store images if (index == 0) { storeThumbnailImages(fileVersion, renderedImage); } else { File tempFile = null; try { String tempFileId = DLUtil.getTempFileId(fileVersion.getFileEntryId(), fileVersion.getVersion()); tempFile = getPreviewTempFile(tempFileId, index); tempFile.createNewFile(); ImageIO.write(renderedImage, PREVIEW_TYPE, new FileOutputStream(tempFile)); addFileToStore(fileVersion.getCompanyId(), PREVIEW_PATH, getPreviewFilePath(fileVersion, index), tempFile); } finally { FileUtil.delete(tempFile); } } }