#!/bin/bash TMPDIR=tmp; rm $TMPDIR/* OUTPUTDIR=tmp/io-make ; rm $OUTPUTDIR/* TMPTEX=`date +%s`.tex LAYERID=layerid SVGDIR=i/free/svg # --------------------------------------------------------------------- # source i/free/bash/separateLayers.function # ----------------------------------------------------------------- # SVGLIST=$TMPDIR/`date +%s`.list ls $SVGDIR | grep svg > $SVGLIST separateLayers # ================================================================= # for IDENTIFIER in `ls ${SVGDIR}/ | grep svg | cut -d "_" -f 1 | cut -d "-" -f 1` do echo $IDENTIFIER SOURCELIST=$TMPDIR/source.list; rm $SOURCELIST ####################################### # WRITE LIST WITH POSSIBLE SOURCES # ####################################### ls $TMPDIR/*.layer | \ grep $IDENTIFIER > $SOURCELIST ####################################### if [ `cat $SOURCELIST | wc -l` -le 0 ];then exit 0; fi K=1 while [ $K -le 8 ]; do LAYERLIST=$TMPDIR/layers.list; rm $LAYERLIST ##################################################################### # WRITE LIST WITH LAYERS,SORT,UNIQ (LAYERID) # ##################################################################### for LAYER in `grep -h $LAYERID \`cat $SOURCELIST\` | \ grep -v XX | sed 's/>//g' | cut -d "\"" -f 1-2 | \ sort | uniq` do SELECTLAYERFILE=`grep -H $LAYER \`cat $SOURCELIST \` | \ cut -d : -f 1 | shuf -n 1` echo $SELECTLAYERFILE >> $LAYERLIST done SVG=`ls $SVGDIR | grep $IDENTIFIER | head -1` HEADENDLINENUMBER=`cat -n $SVGDIR/$SVG | \ grep $HEADEND | \ cut -f 1 | \ head -1` ##################################################################### # WRITE ALL LAYERS TO A NEW SVG FILE # ##################################################################### if [ `echo $SVG | grep 'R+' | wc -l` -gt 0 ]; then ROTATOR='-R+' else ROTATOR= fi BASENAME=`echo \`basename $SVG \` | cut -d "_" -f 1 | sed 's/-R+//g'` CONNECTS=`echo \`basename $SVG \` | cut -d "_" -f 2-10` WORD=$BASENAME;SEPARATED=;C=1; while [ $C -lt `echo $WORD | wc -c` ]; do SEPARATED=$SEPARATED`echo $WORD | cut -c $C`,; C=`expr $C + 1`; done; SHUFFLED=`echo $SEPARATED | sed 's/,/\n/g' | shuf `; FRSTCHAR=`echo $SHUFFLED | sed 's/ //g' | cut -c 1 | tr '[:lower:]' '[:upper:]'` NAMEBODY=`echo $SHUFFLED | sed 's/ //g' | cut -c 2-100 | tr '[:upper:]' '[:lower:]'` NEWNAME=${FRSTCHAR}${NAMEBODY} NEWSVG=$TMPDIR/${NEWNAME}${ROTATOR}_${CONNECTS} NEWPDF=$OUTPUTDIR/${NEWNAME}${ROTATOR}_${CONNECTS%%.*}.pdf head -n $HEADENDLINENUMBER $SVGDIR/$SVG > $NEWSVG for LAYERFILE in `cat $LAYERLIST | sort` do FILE=${LAYERFILE##*/} NAME=${FILE%%.*} ID=`grep $LAYERID $LAYERFILE | cut -d "\"" -f 2 | head -1` if [ `find $TMPDIR -name "${NAME}.svg" | \ wc -l` -lt 1 ]; then cat $LAYERFILE >> $NEWSVG fi done echo "" >> $NEWSVG sed -i 's/style="display:none"//g' $NEWSVG inkscape --export-pdf=$NEWPDF \ --export-area-page \ --export-text-to-path $NEWSVG K=`expr $K + 1` done done exit 0;