Example usage for com.liferay.portal.kernel.image ImageToolUtil read

List of usage examples for com.liferay.portal.kernel.image ImageToolUtil read

Introduction

In this page you can find the example usage for com.liferay.portal.kernel.image ImageToolUtil read.

Prototype

public static ImageBag read(InputStream inputStream) throws ImageResolutionException, IOException 

Source Link

Usage

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 ww w.ja  va  2  s. co 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;/*  ww w  . jav a  2s.co  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.document.library.thumbnails.internal.commands.AdaptiveMediaThumbnailsOSGiCommands.java

License:Open Source License

private void _migrate(String fileName, AdaptiveMediaImageConfigurationEntry configurationEntry,
        ThumbnailConfiguration thumbnailConfiguration) {

    try {//from   w  w  w.j a va 2s.  c  om
        FileVersion fileVersion = _getFileVersion(thumbnailConfiguration.getFileVersionId(fileName));

        if (fileVersion == null) {
            return;
        }

        AdaptiveMediaImageEntry adaptiveMediaImageEntry = _adaptiveMediaImageEntryLocalService
                .fetchAdaptiveMediaImageEntry(configurationEntry.getUUID(), fileVersion.getFileVersionId());

        if (adaptiveMediaImageEntry != null) {
            return;
        }

        byte[] bytes = DLStoreUtil.getFileAsBytes(fileVersion.getCompanyId(),
                DLPreviewableProcessor.REPOSITORY_ID, fileName);

        ImageBag imageBag = ImageToolUtil.read(bytes);

        RenderedImage renderedImage = imageBag.getRenderedImage();

        _adaptiveMediaImageEntryLocalService.addAdaptiveMediaImageEntry(configurationEntry, fileVersion,
                renderedImage.getWidth(), renderedImage.getHeight(), new UnsyncByteArrayInputStream(bytes),
                bytes.length);
    } catch (IOException | PortalException e) {
        _log.error(e);
    }
}

From source file:com.liferay.adaptive.media.document.library.thumbnails.internal.osgi.commands.AMThumbnailsOSGiCommands.java

License:Open Source License

private void _migrate(String fileName, AMImageConfigurationEntry amImageConfigurationEntry,
        ThumbnailConfiguration thumbnailConfiguration) {

    try {/*w  w  w.  j  a  va2 s. co m*/
        FileVersion fileVersion = _getFileVersion(thumbnailConfiguration.getFileVersionId(fileName));

        if (fileVersion == null) {
            return;
        }

        AMImageEntry amImageEntry = _amImageEntryLocalService
                .fetchAMImageEntry(amImageConfigurationEntry.getUUID(), fileVersion.getFileVersionId());

        if (amImageEntry != null) {
            return;
        }

        byte[] bytes = DLStoreUtil.getFileAsBytes(fileVersion.getCompanyId(),
                DLPreviewableProcessor.REPOSITORY_ID, fileName);

        ImageBag imageBag = ImageToolUtil.read(bytes);

        RenderedImage renderedImage = imageBag.getRenderedImage();

        _amImageEntryLocalService.addAMImageEntry(amImageConfigurationEntry, fileVersion,
                renderedImage.getHeight(), renderedImage.getWidth(), new UnsyncByteArrayInputStream(bytes),
                bytes.length);
    } catch (IOException | PortalException e) {
        _log.error(e);
    }
}

From source file:com.liferay.image.uploader.web.internal.portlet.action.UploadImageMVCActionCommand.java

License:Open Source License

protected FileEntry saveTempImageFileEntry(ActionRequest actionRequest) throws Exception {

    try {//from w  w  w.  ja  va  2s . c o  m
        FileEntry tempFileEntry = UploadImageUtil.getTempImageFileEntry(actionRequest);

        try (InputStream tempImageStream = tempFileEntry.getContentStream()) {

            ImageBag imageBag = ImageToolUtil.read(tempImageStream);

            RenderedImage renderedImage = imageBag.getRenderedImage();

            String cropRegionJSON = ParamUtil.getString(actionRequest, "cropRegion");

            if (Validator.isNotNull(cropRegionJSON)) {
                JSONObject jsonObject = JSONFactoryUtil.createJSONObject(cropRegionJSON);

                int height = jsonObject.getInt("height");
                int width = jsonObject.getInt("width");
                int x = jsonObject.getInt("x");
                int y = jsonObject.getInt("y");

                if ((x == 0) && (y == 0) && (renderedImage.getHeight() == height)
                        && (renderedImage.getWidth() == width)) {

                    return tempFileEntry;
                }

                if ((height + y) > renderedImage.getHeight()) {
                    height = renderedImage.getHeight() - y;
                }

                if ((width + x) > renderedImage.getWidth()) {
                    width = renderedImage.getWidth() - x;
                }

                renderedImage = ImageToolUtil.crop(renderedImage, height, width, x, y);
            }

            byte[] bytes = ImageToolUtil.getBytes(renderedImage, imageBag.getType());

            ThemeDisplay themeDisplay = (ThemeDisplay) actionRequest.getAttribute(WebKeys.THEME_DISPLAY);

            File file = FileUtil.createTempFile(bytes);

            try {
                TempFileEntryUtil.deleteTempFileEntry(themeDisplay.getScopeGroupId(), themeDisplay.getUserId(),
                        UploadImageUtil.getTempImageFolderName(), getTempImageFileName(actionRequest));
            } catch (Exception e) {
            }

            return TempFileEntryUtil.addTempFileEntry(themeDisplay.getScopeGroupId(), themeDisplay.getUserId(),
                    UploadImageUtil.getTempImageFolderName(), getTempImageFileName(actionRequest), file,
                    tempFileEntry.getMimeType());
        }
    } catch (NoSuchFileEntryException nsfee) {
        throw new UploadException(nsfee);
    } catch (NoSuchRepositoryException nsre) {
        throw new UploadException(nsre);
    }
}

From source file:com.liferay.image.uploader.web.internal.portlet.action.UploadImageMVCResourceCommand.java

License:Open Source License

protected void serveTempImageFile(MimeResponse mimeResponse, InputStream tempImageStream) throws Exception {

    ImageBag imageBag = ImageToolUtil.read(tempImageStream);

    byte[] bytes = ImageToolUtil.getBytes(imageBag.getRenderedImage(), imageBag.getType());

    String contentType = MimeTypesUtil.getExtensionContentType(imageBag.getType());

    mimeResponse.setContentType(contentType);

    PortletResponseUtil.write(mimeResponse, bytes);
}

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 {// ww  w  .  j  a v  a2  s .  c  o 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 storeThumbnailImages(FileVersion fileVersion, File file) throws Exception {

    ImageBag imageBag = ImageToolUtil.read(file);

    RenderedImage renderedImage = imageBag.getRenderedImage();

    storeThumbnailImages(fileVersion, renderedImage);
}

From source file:com.liferay.portlet.documentlibrary.util.ImageProcessorImpl.java

License:Open Source License

private void _generateImages(FileVersion fileVersion) {
    try {/*from   w ww  .j a  va 2s .c o  m*/
        if (!PropsValues.DL_FILE_ENTRY_THUMBNAIL_ENABLED) {
            return;
        }

        InputStream inputStream = fileVersion.getContentStream(false);

        byte[] bytes = FileUtil.getBytes(inputStream);

        ImageBag imageBag = ImageToolUtil.read(bytes);

        RenderedImage renderedImage = imageBag.getRenderedImage();

        if (renderedImage == null) {
            return;
        }

        storeThumbnailImages(fileVersion, renderedImage);
    } catch (NoSuchFileEntryException nsfee) {
    } catch (Exception e) {
        _log.error(e, e);
    } finally {
        _fileVersionIds.remove(fileVersion.getFileVersionId());
    }
}

From source file:com.liferay.portlet.documentlibrary.util.VideoProcessorImpl.java

License:Open Source License

@Override
protected void storeThumbnailImages(FileVersion fileVersion, File file) throws Exception {

    addFileToStore(fileVersion.getCompanyId(), THUMBNAIL_PATH,
            getThumbnailFilePath(fileVersion, THUMBNAIL_INDEX_DEFAULT), file);

    if (isCustomThumbnailsEnabled(1) || isCustomThumbnailsEnabled(2)) {
        ImageBag imageBag = ImageToolUtil.read(file);

        RenderedImage renderedImage = imageBag.getRenderedImage();

        storeThumbnailmage(fileVersion, renderedImage, THUMBNAIL_INDEX_CUSTOM_1);
        storeThumbnailmage(fileVersion, renderedImage, THUMBNAIL_INDEX_CUSTOM_2);
    }/*from w  w w  . j av a 2s.com*/
}