summaryrefslogtreecommitdiff
path: root/Build/source/texk/dvisvgm/dvisvgm-src/libs/ff-woff/fontforge/macbinary.c
diff options
context:
space:
mode:
Diffstat (limited to 'Build/source/texk/dvisvgm/dvisvgm-src/libs/ff-woff/fontforge/macbinary.c')
-rw-r--r--Build/source/texk/dvisvgm/dvisvgm-src/libs/ff-woff/fontforge/macbinary.c227
1 files changed, 0 insertions, 227 deletions
diff --git a/Build/source/texk/dvisvgm/dvisvgm-src/libs/ff-woff/fontforge/macbinary.c b/Build/source/texk/dvisvgm/dvisvgm-src/libs/ff-woff/fontforge/macbinary.c
deleted file mode 100644
index 85df7c5971e..00000000000
--- a/Build/source/texk/dvisvgm/dvisvgm-src/libs/ff-woff/fontforge/macbinary.c
+++ /dev/null
@@ -1,227 +0,0 @@
-/* Copyright (C) 2000-2012 by George Williams */
-/*
- * Redistribution and use 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.
-
- * The name of the author may not be used to endorse or promote products
- * derived from this software without specific prior written permission.
-
- * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``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 AUTHOR 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.
- */
-#include "fontforgevw.h"
-
-#if __Mac
-# include <ctype.h>
-# include "carbon.h"
-#else
-#undef __Mac
-#define __Mac 0
-#endif
-
-/* I had always assumed that the mac still believed in 72dpi screens, but I */
-/* see that in geneva under OS/9, the pointsize does not match the pixel */
-/* size of the font. But the dpi is not constant (and the differences */
-/* excede those supplied by rounding errors) varying between 96 and 84dpi */
-
-/* A Mac Resource fork */
-/* http://developer.apple.com/techpubs/mac/MoreToolbox/MoreToolbox-9.html */
-/* begins with a 16 byte header containing: */
-/* resource start offset */
-/* map start offset */
-/* resource length */
-/* map length */
-/* then 256-16 bytes of zeros */
-/* the resource section consists of (many) */
-/* 4 byte length count */
-/* resource data */
-/* the map section contains */
-/* A copy of the 16 byte header */
-/* a 4 byte mac internal value (I hope) */
-/* another 4 bytes of mac internal values (I hope) */
-/* a 2 byte offset from the start of the map section to the list of resource types */
-/* a 2 byte offset from the start of the map section to the list of resource names */
-/* The resource type list consists of */
-/* a 2 byte count of the number of resource types (-1) */
-/* (many copies of) */
-/* a 4 byte resource type ('FOND' for example) */
-/* a 2 byte count of the number of resources of this type (-1) */
-/* a 2 byte offset from the type list start to the resource table */
-/* a resource table looks like */
-/* a 2 byte offset from the resource name table to a pascal */
-/* string containing this resource's name (or 0xffff for none) */
-/* 1 byte of resource flags */
-/* 3 bytes of offset from the resource section to the length & */
-/* data of this instance of the resource type */
-/* 4 bytes of 0 */
-/* The resource name section consists of */
-/* a bunch of pascal strings (ie. preceded by a length byte) */
-
-/* The POST resource isn't noticeably documented, it's pretty much a */
-/* straight copy of the pfb file cut up into 0x800 byte chunks. */
-/* (each section of the pfb file has it's own set of chunks, the last may be smaller than 0x800) */
-/* The NFNT resource http://developer.apple.com/techpubs/mac/Text/Text-250.html */
-/* The FOND resource http://developer.apple.com/techpubs/mac/Text/Text-269.html */
-/* The sfnt resource is basically a copy of the ttf file */
-
-/* A MacBinary file */
-/* http://www.lazerware.com/formats/macbinary.html */
-/* begins with a 128 byte header */
-/* (which specifies lengths for data/resource forks) */
-/* (and contains mac type/creator data) */
-/* (and other stuff) */
-/* (and finally a crc checksum) */
-/* is followed by the data section (padded to a mult of 128 bytes) */
-/* is followed by the resource section (padded to a mult of 128 bytes) */
-
-/* Crc code taken from: */
-/* http:// mirror.ctan.org/tools/macutils/crc */
-/* MacBinary files use the same CRC that binhex does (in the MacBinary header) */
-
-/* ******************************** Creation ******************************** */
-struct resource {
- uint32 pos;
- uint8 flags;
- uint16 id;
- char *name;
- uint32 nameloc;
- uint32 nameptloc;
-};
-
-enum psstyle_flags { psf_bold = 1, psf_italic = 2, psf_outline = 4,
- psf_shadow = 0x8, psf_condense = 0x10, psf_extend = 0x20 };
-
-uint16 _MacStyleCode( const char *styles, SplineFont *sf, uint16 *psstylecode ) {
- unsigned short stylecode= 0, psstyle=0;
-
- if ( strstrmatch( styles, "Bold" ) || strstrmatch(styles,"Demi") ||
- strstrmatch( styles,"Heav") || strstrmatch(styles,"Blac") ||
-/* A few fonts have German/French styles in their names */
- strstrmatch( styles,"Fett") || strstrmatch(styles,"Gras") ) {
- stylecode = sf_bold;
- psstyle = psf_bold;
- } else if ( sf!=NULL && sf->weight!=NULL &&
- (strstrmatch( sf->weight, "Bold" ) || strstrmatch(sf->weight,"Demi") ||
- strstrmatch( sf->weight,"Heav") || strstrmatch(sf->weight,"Blac") ||
- strstrmatch( sf->weight,"Fett") || strstrmatch(sf->weight,"Gras")) ) {
- stylecode = sf_bold;
- psstyle = psf_bold;
- }
- /* URW uses four leter abbreviations of Italic and Oblique */
- /* Somebody else uses two letter abbrevs */
- if ( (sf!=NULL && sf->italicangle!=0) ||
- strstrmatch( styles, "Ital" ) ||
- strstrmatch( styles, "Obli" ) ||
- strstrmatch(styles, "Slanted") ||
- strstrmatch(styles, "Kurs") ||
- strstr( styles,"It" ) ) {
- stylecode |= sf_italic;
- psstyle |= psf_italic;
- }
- if ( strstrmatch( styles, "Underline" ) ) {
- stylecode |= sf_underline;
- }
- if ( strstrmatch( styles, "Outl" ) ) {
- stylecode |= sf_outline;
- psstyle |= psf_outline;
- }
- if ( strstr(styles,"Shadow")!=NULL ) {
- stylecode |= sf_shadow;
- psstyle |= psf_shadow;
- }
- if ( strstrmatch( styles, "Cond" ) || strstr( styles,"Cn") ||
- strstrmatch( styles, "Narrow") ) {
- stylecode |= sf_condense;
- psstyle |= psf_condense;
- }
- if ( strstrmatch( styles, "Exte" ) || strstr( styles,"Ex") ) {
- stylecode |= sf_extend;
- psstyle |= psf_extend;
- }
- if ( (psstyle&psf_extend) && (psstyle&psf_condense) ) {
- if ( sf!=NULL )
- LogError( _("Warning: %s(%s) is both extended and condensed. That's impossible.\n"),
- sf->fontname, sf->origname );
- else
- LogError( _("Warning: Both extended and condensed. That's impossible.\n") );
- psstyle &= ~psf_extend;
- stylecode &= ~sf_extend;
- }
- if ( psstylecode!=NULL )
- *psstylecode = psstyle;
-return( stylecode );
-}
-
-uint16 MacStyleCode( SplineFont *sf, uint16 *psstylecode ) {
- const char *styles;
-
- if ( sf->cidmaster!=NULL )
- sf = sf->cidmaster;
-
- if ( sf->macstyle!=-1 ) {
- if ( psstylecode!=NULL )
- *psstylecode = (sf->macstyle&0x3)|((sf->macstyle&0x6c)>>1);
-return( sf->macstyle );
- }
-
- styles = SFGetModifiers(sf);
-return( _MacStyleCode(styles,sf,psstylecode));
-}
-
-/* ******************************** Reading ********************************* */
-
-
-struct kerns {
- unsigned char ch1, ch2;
- short offset; /* 4.12 */
-};
-
-
-#if __Mac
-static SplineFont *HasResourceFork(char *filename,int flags,enum openflags openflags,
- SplineFont *into,EncMap *map) {
- /* If we're on a mac, we can try to see if we've got a real resource fork */
- /* (if we do, copy it into a temporary data file and then manipulate that)*/
- SplineFont *ret;
- FILE *resfork;
- char *tempfn=filename, *pt, *lparen, *respath;
-
- if (( pt=strrchr(filename,'/'))==NULL ) pt = filename;
- if ( (lparen = strchr(pt,'('))!=NULL && strchr(lparen,')')!=NULL ) {
- tempfn = copy(filename);
- tempfn[lparen-filename] = '\0';
- }
- respath = malloc(strlen(tempfn)+strlen("/..namedfork/rsrc")+1);
- strcpy(respath,tempfn);
- strcat(respath,"/..namedfork/rsrc");
- resfork = fopen(respath,"r");
- if ( resfork==NULL ) {
- strcpy(respath,tempfn);
- strcat(respath,"/rsrc");
- resfork = fopen(respath,"r");
- }
- free(respath);
- if ( tempfn!=filename )
- free(tempfn);
- if ( resfork==NULL )
-return( NULL );
- ret = IsResourceFork(resfork,0,filename,flags,openflags,into,map);
- fclose(resfork);
-return( ret );
-}
-#endif