For some Mac fonts, the font information is stored entirely in the resource fork of the file. On Mac OS X, such fonts look like normal files in Finder, but from tools like ls (and anything else that uses the POSIX layer) these look like zero byte files.
The __MACOSX/._*
files from the Zip file are AppleDouble encoded versions of the combination of the resource fork and some extra Finder information from the original files. AppleDouble files are used by Mac OS X when storing files that have a resource fork or Finder info on filesystems that do not support resource forks and Finder info (here Zip is considered a filesystem).
I am not a Windows user and my searches did not turn on any pre-made tools for this. I did find a set of tools that might work. It would be best to run them on a Mac, but they might work on Windows, too.
If you have access to a Mac
- extract your Zip archive on that Mac (double-click it, do not use the command-line unzip) and
- use a tool like Fondu to extract the TTF (or whatever) from the resource fork
- (I just found the fondu, I have never used it before; caveat emptor)
If you do not have access to a Mac, you may still be able to use fondu, but you will need to compile fondu yourself (it looks like it is possible to build it on Linux, so you might also be able to build it in (e.g.) Cygwin). The next problem is that fondu does not seem able to read AppleDouble files, so you will have to find something that can extract the bare resource fork from the AppleDouble encoded ._*
file. I am not sure which Windows-specific tools might be able to decode AppleDouble, but the Mac::AppleSingleDouble Perl module can do it:
perl -MMac::AppleSingleDouble -e 'for(@ARGV) {
$a = new Mac::AppleSingleDouble($_);
if(open $f, ">", $_.".rsrc") {
binmode $f;
print $f $a->get_entry(2);
close $f;
}
}'__MACOSX/._Webdings
# now I have a __MACOSX/._Webdings.rsrc file from which fondu can extract Webdings.ttf
If you are familiar with building Unix-oid tools, building fondu should be easy. For the Perl bit, you should be able to use the cpan tool that comes with most installations of Perl (or, if you are familiar with the layout and installation of Perl modules, just download the AppleSingleDouble.pm file and put it in an appropriate place).
A possible way is to install Fiddler which acts as a proxy on your own computer. When you'll set it as a default proxy in your browser all connections will go through it, including every Flash connection. Then you can save all the files the Flash applet requests and place it on a locally-installed webserver in appropriate directories.
Probably this is the only way to "save", i.e. duplicate functionality of sites with such dynamically loaded content.
There may be troubles with a e.g. game which stores its level data in different files for each level and loads them when you unlock that level, but you can try guessing file names in such a case.
Best Answer
http://mac.eltima.com/freeflashplayer.html
Update: That link will take you to the free software I was talking about, but just noticed as of July 2010, the company is changing the software name to elmedia player.