diff --git a/3rdparty/yuicompressor/LICENSE.TXT b/3rdparty/yuicompressor/LICENSE.TXT new file mode 100644 index 0000000..8a1c7a1 --- /dev/null +++ b/3rdparty/yuicompressor/LICENSE.TXT @@ -0,0 +1,54 @@ +YUI Compressor Copyright License Agreement (BSD License) + +Copyright (c) 2013, Yahoo! Inc. +All rights reserved. + +Redistribution and use of this software in source and binary forms, +with or without modification, are permitted provided that the following +conditions are met: + +* Redistributions of source code must retain the above + copyright notice, this list of conditions and the + following disclaimer. + +* Redistributions in binary form must reproduce the above + copyright notice, this list of conditions and the + following disclaimer in the documentation and/or other + materials provided with the distribution. + +* Neither the name of Yahoo! Inc. nor the names of its + contributors may be used to endorse or promote products + derived from this software without specific prior + written permission of Yahoo! Inc. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE +FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER +CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, +OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +This software also requires access to software from the following sources: + +The Jarg Library v 1.0 ( http://jargs.sourceforge.net/ ) is available +under a BSD License � Copyright (c) 2001-2003 Steve Purcell, +Copyright (c) 2002 Vidar Holen, Copyright (c) 2002 Michal Ceresna and +Copyright (c) 2005 Ewan Mellor. + +The Rhino Library ( http://www.mozilla.org/rhino/ ) is dually available +under an MPL 1.1/GPL 2.0 license, with portions subject to a BSD license. + +Additionally, this software contains modified versions of the following +component files from the Rhino Library: + +[org/mozilla/javascript/Decompiler.java] +[org/mozilla/javascript/Parser.java] +[org/mozilla/javascript/Token.java] +[org/mozilla/javascript/TokenStream.java] + +The modified versions of these files are distributed under the MPL v 1.1 +( http://www.mozilla.org/MPL/MPL-1.1.html ) diff --git a/3rdparty/yuicompressor/yuicompressor-2.4.8.jar b/3rdparty/yuicompressor/yuicompressor-2.4.8.jar new file mode 100644 index 0000000..a1cf0a0 Binary files /dev/null and b/3rdparty/yuicompressor/yuicompressor-2.4.8.jar differ diff --git a/CMakeLists.txt b/CMakeLists.txt index 9d3add6..e14ffe2 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -170,7 +170,7 @@ include(${CMAKE_SOURCE_DIR}/src/css_class_names.cmakelists.txt) configure_file (${CMAKE_SOURCE_DIR}/src/util/css_const.h.in ${CMAKE_SOURCE_DIR}/src/util/css_const.h) configure_file (${CMAKE_SOURCE_DIR}/share/base.css.in ${CMAKE_SOURCE_DIR}/share/base.css) configure_file (${CMAKE_SOURCE_DIR}/share/fancy.css.in ${CMAKE_SOURCE_DIR}/share/fancy.css) -configure_file (${CMAKE_SOURCE_DIR}/share/js_src/pdf2htmlEX.js.in ${CMAKE_SOURCE_DIR}/share/js_src/pdf2htmlEX.js) +configure_file (${CMAKE_SOURCE_DIR}/share/pdf2htmlEX.js.in ${CMAKE_SOURCE_DIR}/share/pdf2htmlEX.js) set(PDF2HTMLEX_SRC ${PDF2HTMLEX_SRC} src/Param.h @@ -229,11 +229,25 @@ set(PDF2HTMLEX_SRC ${PDF2HTMLEX_SRC} add_executable(pdf2htmlEX ${PDF2HTMLEX_SRC}) target_link_libraries(pdf2htmlEX ${PDF2HTMLEX_LIBS}) -add_custom_target(pdf2htmlEX.min.js ALL DEPENDS ${CMAKE_SOURCE_DIR}/share/pdf2htmlEX.min.js) +add_custom_target(pdf2htmlEX_resources ALL DEPENDS + ${CMAKE_SOURCE_DIR}/share/base.min.css + ${CMAKE_SOURCE_DIR}/share/fancy.min.css + ${CMAKE_SOURCE_DIR}/share/pdf2htmlEX.min.js + ) + add_custom_command(OUTPUT ${CMAKE_SOURCE_DIR}/share/pdf2htmlEX.min.js - COMMAND ${CMAKE_SOURCE_DIR}/share/js_src/compile.sh + COMMAND ${CMAKE_SOURCE_DIR}/share/build_js.sh DEPENDS - ${CMAKE_SOURCE_DIR}/share/js_src/pdf2htmlEX.js + ${CMAKE_SOURCE_DIR}/share/pdf2htmlEX.js + ) + +add_custom_command(OUTPUT + ${CMAKE_SOURCE_DIR}/share/base.min.css + ${CMAKE_SOURCE_DIR}/share/fancy.min.css + COMMAND ${CMAKE_SOURCE_DIR}/share/build_css.sh + DEPENDS + ${CMAKE_SOURCE_DIR}/share/base.css + ${CMAKE_SOURCE_DIR}/share/fancy.css ) install (TARGETS pdf2htmlEX DESTINATION bin) diff --git a/share/base.css.in b/share/base.css.in index 013af54..48f3cf4 100644 --- a/share/base.css.in +++ b/share/base.css.in @@ -1,6 +1,9 @@ /* vim: set shiftwidth=2 tabstop=2 autoindent cindent expandtab filetype=css: */ -/* Demo CSS for pdf2htmlEX */ -/* Copyright 2012,2013 Lu Wang */ +/*! + * Base CSS for pdf2htmlEX + * Copyright 2012,2013 Lu Wang + * https://github.com/coolwanglu/pdf2htmlEX/blob/master/share/LICENSE + */ /* Part 1: Web Page Layout: Free to modify, except for a few of them which are required by pdf2htmlEX.js, see the comments */ #sidebar { /* Sidebar */ position:absolute; diff --git a/share/build_css.sh b/share/build_css.sh new file mode 100755 index 0000000..8894a04 --- /dev/null +++ b/share/build_css.sh @@ -0,0 +1,25 @@ +#!/bin/sh +# Compile and optimize CSS code +# Copyright 2013 Lu Wang + + +BASEDIR=$(dirname $0) +YUI_DIR="$BASEDIR/../3rdparty/yuicompressor" +YUI_JAR="$YUI_DIR/yuicompressor-2.4.8.jar" + +build () { + INPUT="$BASEDIR/$1" + OUTPUT="$BASEDIR/$2" + (echo "Building $OUTPUT with YUI Compressor" && \ + java -jar "$YUI_JAR" \ + --charset utf-8 \ + -o "$OUTPUT" \ + "$INPUT" && \ + echo 'Done.') || \ + (echo 'Failed. ' && \ + echo 'Using the uncompressed version.' && \ + cat "$INPUT" > "$OUTPUT") +} + +build "base.css" "base.min.css" +build "fancy.css" "fancy.min.css" diff --git a/share/js_src/compile.sh b/share/build_js.sh similarity index 90% rename from share/js_src/compile.sh rename to share/build_js.sh index 9d847e8..ad412da 100755 --- a/share/js_src/compile.sh +++ b/share/build_js.sh @@ -7,12 +7,12 @@ BASEDIR=$(dirname $0) -CLOSURE_COMPILER_DIR="$BASEDIR/../../3rdparty/closure-compiler" +CLOSURE_COMPILER_DIR="$BASEDIR/../3rdparty/closure-compiler" CLOSURE_COMPILER_JAR="$CLOSURE_COMPILER_DIR/compiler.jar" EXTERNS="$CLOSURE_COMPILER_DIR/jquery-1.9.js" INPUT="$BASEDIR/pdf2htmlEX.js" OUTPUT_FN="pdf2htmlEX.min.js" -OUTPUT="$BASEDIR/../$OUTPUT_FN" +OUTPUT="$BASEDIR/$OUTPUT_FN" (echo "Building $OUTPUT_FN with closure-compiler..." && \ java -jar "$CLOSURE_COMPILER_JAR" \ diff --git a/share/fancy.css.in b/share/fancy.css.in index 59969bd..37e3d14 100644 --- a/share/fancy.css.in +++ b/share/fancy.css.in @@ -1,6 +1,9 @@ /* vim: set shiftwidth=2 tabstop=2 autoindent cindent expandtab filetype=css: */ -/* Fancy styles */ -/* Copyright 2013 Lu Wang */ +/*! + * Fancy styles for pdf2htmlEX + * Copyright 2012,2013 Lu Wang + * https://github.com/coolwanglu/pdf2htmlEX/blob/master/share/LICENSE + */ @keyframes fadein { from { opacity:0;} to { opacity:1;} } @-webkit-keyframes fadein { from { opacity:0;} to { opacity:1;} } @keyframes swing { diff --git a/share/js_src/pdf2htmlEX.js.in b/share/pdf2htmlEX.js.in similarity index 98% rename from share/js_src/pdf2htmlEX.js.in rename to share/pdf2htmlEX.js.in index 089efbe..5b379a3 100644 --- a/share/js_src/pdf2htmlEX.js.in +++ b/share/pdf2htmlEX.js.in @@ -1,5 +1,10 @@ /* vim: set shiftwidth=2 tabstop=2 autoindent cindent expandtab filetype=javascript : */ -/** @license pdf2htmlEX.js * Copyright 2012,2013 Lu Wang and other contributors * https://github.com/coolwanglu/pdf2htmlex * https://github.com/coolwanglu/pdf2htmlEX/blob/master/share/LICENSE */ +/** + * @license + * Core UI functions for pdf2htmlEX + * Copyright 2012,2013 Lu Wang and other contributors + * https://github.com/coolwanglu/pdf2htmlEX/blob/master/share/LICENSE + */ /* * pdf2htmlEX.js : a simple UI for pdf2htmlEX *