Class CoverpageBookProcessor

  • All Implemented Interfaces:
    BookProcessor

    public class CoverpageBookProcessor
    extends java.lang.Object
    implements BookProcessor
    If the book contains a cover image then this will add a cover page to the book. If the book contains a cover html page it will set that page's first image as the book's cover image. FIXME: will overwrite any "cover.jpg" or "cover.html" that are already there.
    • Field Detail

      • MAX_COVER_IMAGE_SIZE

        public static int MAX_COVER_IMAGE_SIZE
      • log

        private static final org.slf4j.Logger log
      • DEFAULT_COVER_PAGE_ID

        public static final java.lang.String DEFAULT_COVER_PAGE_ID
        See Also:
        Constant Field Values
      • DEFAULT_COVER_PAGE_HREF

        public static final java.lang.String DEFAULT_COVER_PAGE_HREF
        See Also:
        Constant Field Values
      • DEFAULT_COVER_IMAGE_ID

        public static final java.lang.String DEFAULT_COVER_IMAGE_ID
        See Also:
        Constant Field Values
      • DEFAULT_COVER_IMAGE_HREF

        public static final java.lang.String DEFAULT_COVER_IMAGE_HREF
        See Also:
        Constant Field Values
    • Constructor Detail

      • CoverpageBookProcessor

        public CoverpageBookProcessor()
    • Method Detail

      • findCoverPage

        private Resource findCoverPage​(Book book)
      • setCoverResourceIds

        private void setCoverResourceIds​(Book book)
      • fixCoverResourceId

        private void fixCoverResourceId​(Book book,
                                        Resource resource,
                                        java.lang.String defaultId)
      • getCoverPageHref

        private java.lang.String getCoverPageHref​(Book book)
      • getCoverImageHref

        private java.lang.String getCoverImageHref​(Resource imageResource,
                                                   Book book)
      • calculateAbsoluteImageHref

        static java.lang.String calculateAbsoluteImageHref​(java.lang.String relativeImageHref,
                                                           java.lang.String baseHref)
      • createCoverpageHtml

        private java.lang.String createCoverpageHtml​(java.lang.String title,
                                                     java.lang.String imageHref)
      • calculateResizeSize

        private java.awt.Dimension calculateResizeSize​(java.awt.image.BufferedImage image)
      • createThumbnail

        private byte[] createThumbnail​(byte[] imageData)
                                throws java.io.IOException
        Throws:
        java.io.IOException
      • createResizedCopy

        private java.awt.image.BufferedImage createResizedCopy​(java.awt.Image originalImage,
                                                               int scaledWidth,
                                                               int scaledHeight,
                                                               boolean preserveAlpha)