Skip to content
Snippets Groups Projects
Commit edf94fd4 authored by Toke Eskildsen's avatar Toke Eskildsen
Browse files

Fixes #9 (no black/whiter overlays without ALTO)

parent 0d6b4c22
No related branches found
No related tags found
No related merge requests found
...@@ -417,13 +417,37 @@ function processElements() { ...@@ -417,13 +417,37 @@ function processElements() {
IFS=$SAVEIFS IFS=$SAVEIFS
} }
# Generates overlays # Generates JavaScript snippet for black and white overlays
# src dest altofile # Input: src
# Output: OVERLAYS (not terminated with ']')
function blackWhite() {
local SRC="$1"
local IMAGE_WIDTH=$2
local IMAGE_HEIGHT=$3
local REL_HEIGHT=`echo "scale=2;$IMAGE_HEIGHT/$IMAGE_WIDTH" | bc`
# Special overlays to show absolute black and absolute white pixels
# The FULL_REL is a hack as OpenSeaDragon scales with respect to width
OVERLAYS="overlays: ["$'\n'
OVERLAYS="${OVERLAYS}{id: 'white',"$'\n'
OVERLAYS="${OVERLAYS} x: 0.0, y: 0.0, width: 1.0, height: $REL_HEIGHT,"$'\n'
OVERLAYS="${OVERLAYS} className: 'whiteoverlay'"$'\n'
OVERLAYS="${OVERLAYS}},"$'\n'
OVERLAYS="${OVERLAYS}{id: 'black',"$'\n'
OVERLAYS="${OVERLAYS} x: 0.0, y: 0.0, width: 1.0, height: $REL_HEIGHT,"$'\n'
OVERLAYS="${OVERLAYS} className: 'blackoverlay'"$'\n'
OVERLAYS="${OVERLAYS}},"$'\n'
}
# Generates overlayscase
# src dest altofile width height
# Output: ELEMENTS_HTML OVERLAYS OCR_CONTENT IDNEXT_CONTENT FULL_RELATIVE_HEIGHT # Output: ELEMENTS_HTML OVERLAYS OCR_CONTENT IDNEXT_CONTENT FULL_RELATIVE_HEIGHT
function processALTO() { function processALTO() {
local SRC=$1 local SRC="$1"
local DEST=$2 local DEST="$2"
local ALTO_FILE=$3 local ALTO_FILE="$3"
local IMAGE_WIDTH=$4
local IMAGE_HEIGHT=$5
# local WIDTH=$4 # local WIDTH=$4
# local HEIGHT=$5 # local HEIGHT=$5
...@@ -433,10 +457,13 @@ function processALTO() { ...@@ -433,10 +457,13 @@ function processALTO() {
OCR_CONTENT="" OCR_CONTENT=""
local ALTO="${SRC_FOLDER}/${ALTO_FILE}" local ALTO="${SRC_FOLDER}/${ALTO_FILE}"
blackWhite "$SRC" $IMAGE_WIDTH $IMAGE_HEIGHT
# TODO: Extract relevant elements from the Alto for display # TODO: Extract relevant elements from the Alto for display
if [ ! -f $ALTO ]; then if [ ! -f $ALTO ]; then
# TODO: Better handling of non-existence # TODO: Better handling of non-existence
ELEMENTS_HTML="<p class=\"warning\">No ALTO file at $ALTO</p>"$'\n' ELEMENTS_HTML="<p class=\"warning\">No ALTO file at $ALTO</p>"$'\n'
# Terminate the black/white overlay and return
OVERLAYS="${OVERLAYS}]"
return return
fi fi
cp "$ALTO" "$DEST" cp "$ALTO" "$DEST"
...@@ -464,18 +491,6 @@ function processALTO() { ...@@ -464,18 +491,6 @@ function processALTO() {
done done
ELEMENTS_HTML="${ELEMENTS_HTML}</table>"$'\n' ELEMENTS_HTML="${ELEMENTS_HTML}</table>"$'\n'
# Special overlays to show absolute black and absolute white pixels
# The FULL_REL is a hack as OpenSeaDragon scales with respect to width
OVERLAYS="overlays: ["$'\n'
OVERLAYS="${OVERLAYS}{id: 'white',"$'\n'
OVERLAYS="${OVERLAYS} x: 0.0, y: 0.0, width: 1.0, height: ${FULL_RELATIVE_HEIGHT},"$'\n'
OVERLAYS="${OVERLAYS} className: 'whiteoverlay'"$'\n'
OVERLAYS="${OVERLAYS}},"$'\n'
OVERLAYS="${OVERLAYS}{id: 'black',"$'\n'
OVERLAYS="${OVERLAYS} x: 0.0, y: 0.0, width: 1.0, height: ${FULL_RELATIVE_HEIGHT},"$'\n'
OVERLAYS="${OVERLAYS} className: 'blackoverlay'"$'\n'
OVERLAYS="${OVERLAYS}},"$'\n'
OCR_CONTENT="" OCR_CONTENT=""
IDNEXTS="" IDNEXTS=""
IDPREVS="" IDPREVS=""
...@@ -561,7 +576,7 @@ function makePreviewPage() { ...@@ -561,7 +576,7 @@ function makePreviewPage() {
echo " - ${P##*/}" echo " - ${P##*/}"
local ALTO_FILE="${BASE}${ALTO_EXT}" local ALTO_FILE="${BASE}${ALTO_EXT}"
processALTO "$SRC_FOLDER" "$DEST_FOLDER" "$ALTO_FILE" processALTO "$SRC_FOLDER" "$DEST_FOLDER" "$ALTO_FILE" $IMAGE_WIDTH $IMAGE_HEIGHT
# $IMAGE_WIDTH $IMAGE_HEIGHT # $IMAGE_WIDTH $IMAGE_HEIGHT
local NAVIGATION="" local NAVIGATION=""
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment