f



getting PDF information using GhostScript?

I would like to get (some) information about a PDF.

For reasons of installation ease I would prefer
NOT to install xpdf (which would give me pdfinfo(1)).

So - is there any way to use GhostScript
(which can read PDF rather well :-)
to get a pagecount and the media
size for each page?

   BugBear
0
bugbear (609)
10/11/2006 12:05:37 PM
comp.lang.postscript 3552 articles. 0 followers. Post Follow

2 Replies
423 Views

Similar Articles

[PageSpeed] 12

bugbear wrote:
> I would like to get (some) information about a PDF.
> 
> For reasons of installation ease I would prefer
> NOT to install xpdf (which would give me pdfinfo(1)).
> 
> So - is there any way to use GhostScript
> (which can read PDF rather well :-)
> to get a pagecount and the media
> size for each page?
> 
>   BugBear

You'd have to dig into how ghostscript interprets PDF - it does
it using it's PostScript interpreter equipped with a couple of
additional PDF-specific operators. But even without these (you need
not decompose PDF streams etc. to access the information e.g.
pdfinfo provides) you "easily" could write a PostScript program to extract
this information.

Helge

PS: "easily": the quotes mean you'd need some PostScript skills, though.

-- 
Helge Blischke
Softwareentwicklung
SRZ Berlin | Firmengruppe besscom
http://www.srz.de
0
h.blischke (329)
10/11/2006 12:23:56 PM
bugbear wrote:
> ...
> is there any way to use GhostScript
> (which can read PDF rather well :-)
> to get a pagecount and the media
> size for each page?
> ...

I don't know of a ready-made Ghostscript tool for this, but with some
digging and some PS/PDF knowledge you can write your own. GS's PDF
interpreter is written [almost] entirely in PostScript, files
LIB\pdf*.ps.

The general schema to use this is:

    pdfdict begin
        (filename.pdf) (r) file pdfopen begin
            ... processing goes here ...
        end
    end

Some GS-specific procedures that seem usefull for your purpose:

    pdfopen
    pdfpagecount
    pdffindpage
    pget
    oforce oget oforce_array

Their definitions, with comments from which you get semantics and
parameters, are in GS's pdf_base.ps and pdf_main.ps.

A word about the "o" procs: GS uses a special construct to represent
PDF references (those "obj# gen# R" from PDFs). These "o" procs handle
such references too, in addition to actual objects. For example "oget"
is similar to PostScript "get", but even if the PDF contains a
reference "oget" resolves it and returns the object pointed to.

It may help to take a look as GS's pdf2dsc.ps; has a different purpose,
but needs to enumerate page sizes.

0
sags5495 (139)
10/11/2006 2:03:08 PM
Reply:

Similar Artilces:

using Using Ghostscript on certain PDF files fails to generate thumbnails: Error: /undefined in --get--
We have a few PDF's that we get that were generated via Illustrator. You can confirm that by simply viewing the following files via a text editor like Wordpad. We are using Ghostscript to generate JPG thumbnails of PDF files. Many work fine but there are several cases where the thumbnail generation fails. We noticed that in Acrobat 6 the files will not open and throw an "Expected a non-negative integer." message upon opening. Note that the "MediaBox" field has negative numbers (seen via opening the file via a text editor), but then we compensate for that and the thumbnail still does not generate. Also, when you open the file in Acrobat 5.0, you get a very quick message that "The file is being repaired" and when you try to close the file, you get a confirmation message to save changes. File that generated a thumbnail: http://ld.livecache.net/F/340541/AARPFLredwave.pdf A "bad" file that did not generate a thumbnail: http://ld.livecache.net/F/347813/AARPtagFLbig293.pdf A file that was fixed after just opening and saving in Acrobat 5.0 and generated a thumbnail: http://ld.livecache.net/F/348115/AARPtagFL293_fixed.pdf from the log file: ESP Ghostscript 7.05 (2003-02-05) Copyright (C) 2002 artofcode LLC, Benicia, CA. All rights reserved. This software comes with NO WARRANTY: see the file PUBLIC for details. Error: /undefined in --get-- Operand stack: PageCount --dict:1/1(L)-- Root Execution stack: %interp_exit .runexec2 ...

problem converting the postscript file to pdf using ghostscript
i have a post script file which has four pagees three pages are in Potrait and the fourth is landscape when i run command this command "gswin32c -q -dLOCALFONTS -dSAFER -dNOPAUSE -dBATCH -sDEVICE=pdfwrite -dAutoRotatePages=/None -sOutputFile=c:\S100834431_GScript_6.pdf -dCompatibilityLevel=1.4 -c ..setpdfwrite -f C:\S100834431.ps" it generates a pdf file i get the first three pages correct but the fourth page which was landscape is not displayed properly pls help me ...

How to parse the log file to get useful information using perl or shell?
hi all, I have a very long log file like the below, how could I useful info I need like this: sr-204 Tec cache size: "ls -l C:\Tivoli\lcf\dat\1\LCFNEW\Tmw2k\Tec\cache" total 1 -rw-rw-rw- 1 0 0 54 Nov 01 23:53 EventServer#opp1_0.dat Also is get every 3 lines just after every "Tec cache size" including the "Tec cache size" line. Or even could I get just include the host name and file size? Like this: sr-204 54 sr-207 54 .... The log file like this: ..... ================= sr-204.domain1.com: DISSE0155I Distribution ID: `1278500431.264831...

Just When I Was Getting Used To Using Using
I have a class Packet that contains a nested class Payload and an enumeration: struct Packet { struct Payload { } ; } ; I had gotten into the habit of writing: using Packet::Payload; so I could write: Payload::..blah.. instead of Packet::Payload::..blah I have done this... (gulp) in many, many .cpp files. I tried out the new Visual C++ Express compiler from you-know-who on my source code and got 1000's of error messages: ...\Packet\Packet.cpp(13) : error C2885: 'Packet::Payload': not a valid using-declaration at non-class scope What does the standard say? Is th...

PDF to PCL using Ghostscript
Hi All, I'm running into a problem converting a PDF file to PCL in a UNIX environment using GhostScript. During my initial tests in Windows 2K, I was able to do the conversion, and have the PCL format correctly, but in the UNIX version something different is happening... The Problem: Page is formatted to print in landscape on 8.5" (612p) X 11" (792p) paper. In windows, the correct paper size comes out using the following command line: gswin32c -sDEVICE=ljet4 -sOutputFile=C:\test.pcl C:\test.pdf Note that there's no specification of paper size in there at all, and it works fine. In Unix The following command line is executed using the EXACT SAME FILE: gs -sDEVICE=ljet4 -SOutputFile=test.pcl -dBATCH -dQUIET -dNOPAUSE test.pdf The paper size that comes out here is A4 Legal. The pdf files are EXACTLY the same, and I can't figure out what's going on here. I've tried using the -g and -r switches as well, but that didn't seem to help.... Any ideas? Thanks, Stu stuart.weitzman@nordstrom.com Stu <stuart.weitzman@nordstrom.com> wrote: > In Unix The following command line is executed using the EXACT SAME > FILE: > > gs -sDEVICE=ljet4 -SOutputFile=test.pcl -dBATCH -dQUIET -dNOPAUSE > test.pdf > > The paper size that comes out here is A4 Legal. The pdf files are > EXACTLY the same, and I can't figure out what's going on here. Try adding '-sPAPERSIZE=letter'. It sounds like the version of Gho...

How to use Ghostscript PDF Printer?
I've installed Ghostscript 8.50 and then added the ps2pdf printer to the system (Win XP). What do I have to do now to print documents to PDF? I guess I have to install another printer that produces the PS and then "handles" it to the ps2pdf? Please help me a bit. Thanks a lot :) darn right wrote: > I guess I have to install another printer that produces the PS and > then "handles" it to the ps2pdf? Please help me a bit. Yes. You just need to install a PostScript printer driver for any printer, for example HP8000. Then you select print to file, give a suitable...

How to embed svg in pdf using postscript?
I would be very grateful if someone could help me with this. Please give me an example or tell me were to search for an answer. Not an easy task, but possible. First you need to write a SVG interpreter in PS. Then embed the interpreter source and SVG stream into a PDF PostScript XObject. Then the resulting SVG/PS/PDF object needs to be executed on a PDF renderer that also contains a PS engine (like the 6.X Harlequin RIP). Give yourself at least a man-year for this one. If you have a trival example you could get simple SVG to execute in a day or two. "roger eroom" <guru@gmx.net> wrote in message news:40b4e911$0$214$edfadb0f@dread12.news.tele.dk... > I would be very grateful if someone could help me with this. Please give me > an example or tell me were to search for an answer. > > Thanks for the answer. I've heard that the new PS language supports the embedding of svg (just like for jpg). Actually what I'm trying to do is to write a piece of PS code in framemaker that in the resulting pdf will embed or link the pdf to the svg file. The acrobat reader 6.0 has a plugin included and can easily read svg in pdf files. Someone has even created an acrobat plugin that will embed svg but I cannot really control the position of the svg on the pdf page with it... "frank" <frank@dsea.com> wrote in message news:c92qih$jro$1@la4.digilink.net... > > Not an easy task, but possible. > > First you need to write a SV...

postscript banner page using ghostscript
I have three print job environment variables I like to supply with ghostscript command to convert a print banner template to dynamic banner page file : $printUserID, $printDocumentName and $printTimeStamp How do I go about applying in gs command? Thanks! JM! ...

Printing Header information Using Postscript
Hi all, Greetings to all. i am struck with this requirement. can any one help me to solve the problem? i have a requirement to print some common information (like a header in word) in all the pages. Is there any support available in postscript to print the common header information. Do i need to add the common header information in all the pages? Thanks in advance regards Dinesh On Mar 13, 4:40 pm, "Dineshkumar" <vcdineshku...@gmail.com> wrote: > Hi all, > > Greetings to all. > > i am struck with this requirement. can any one help me to solve the > problem? > > i have a requirement to print some common information (like a header > in word) in all the pages. Is there any support available in > postscript to print the common header information. Do i need to add > the common header information in all the pages? That is the most straightforward way to do it, if you can use a scripting language like perl on your output postscript file. To do it within postscript, you have to redefine the showpage operator. For example, you'd insert the %%BeginSetup-%%EndSetup section shown below into your postscript: %!PS-Adobe-3.0 %%Pages: 2 %%BeginSetup /oldshowpage /showpage load bind def /showpage { gsave 280 750 moveto /Helvetica findfont 9 scalefont setfont (Page heading here) show grestore oldshowpage } bind def %%EndSetup %%Page: 1 1 /Helvetica findfont 12 scalefont setfont 100 100 moveto (This is th...

Can one get useful information from this?
Hello, When one executes a query with OCIStmtExecute, is there a way to tell the *number* of rows affected by the statment? Can an example be provided as to how to get the number of rows affected by an insert / update or delete statement executed through the OCIStmtExecute? TIA On 31 Aug 2005 16:25:18 -0700, "milkyway" <d0mufasa@hotmail.com> wrote: >When one executes a query with OCIStmtExecute, is there a way to tell >the *number* of rows affected by the statment? Can an example be >provided as to how to get the number of rows affected by an insert / >update or delete statement executed through the OCIStmtExecute? OCI_ATTR_ROW_COUNT statement handle attribute. http://download-uk.oracle.com/docs/cd/B19306_01/appdev.102/b14250/ociaahan.htm#i428664 -- Andy Hassall :: andy@andyh.co.uk :: http://www.andyh.co.uk http://www.andyhsoftware.co.uk/space :: disk and FTP usage analysis tool ...

PDF 2 EPS using ghostscript
Hi Guys, I'm trying to convert a PDF to EPS using the GhostScript. Does anyone know if its possible to set the colorspace when doing so? It seems to default to RBG, which of course does not help too much in the print world. Thanks Warrick Warrick FitzGerald wrote: > I'm trying to convert a PDF to EPS using the GhostScript. Does anyone know > if its possible to set the colorspace when doing so? It seems to default > to RBG, which of course does not help too much in the print world. EPS generator in Ghostscript reduces everything to path, image, and image mask in device color space. Device color spaces are: Gray, RGB, and CMYK (RGB is the default). Device color space can be selected as: <</ProcessColorModel /DeviceCMYK>> setpagedevice why? You can generate an EPS from a PDF using Acrobat. (but not using Acrobat Reader, and that may be all you have) -- Mac Townsend, Adcom Graphics, Fairfield, California: Electronic Prepress & Large Format Imaging www.adcomgraphics.com On Wed, 10 Sep 2003 20:29:17 +0000, Alex Cherepanov wrote: > Warrick FitzGerald wrote: > >> I'm trying to convert a PDF to EPS using the GhostScript. Does anyone know >> if its possible to set the colorspace when doing so? It seems to default >> to RBG, which of course does not help too much in the print world. > > EPS generator in Ghostscript reduces everything to path, image, and > image mask in device color space. Device color ...

Attaching a file to a PDF using Ghostscript (or other)?
Hi all - I'm trying to accomplish something that I thought might be fairly straightforward, but to no avail so far. I'm using Ghostscript (essentially just the ps2pdf bit I believe) to stitch together 2 PDFs and some bookmarks into a single PDF. In addition, I'd like to add the original native document to the PDF as an attached file if possible. This is my current gs command: gs -q -dNOPAUSE -dBATCH -sDEVICE=pdfwrite -sOutputFile=output.pdf original.PDF indesign.PDF bookmark.ps Does anyone know of a switch to gs to make this work or another program to allow this to be done in an automated fashion? Running on Mac OS 10.4.5 Thanks - Dave dmacdonald@apposite.net schrieb: .... > In addition, I'd like to add the original native document to the PDF as > an attached file if possible. .... > Does anyone know of a switch to gs to make this work or another program > to allow this to be done in an automated fashion? Running on Mac OS > 10.4.5 Hello, you should try pdftk, see http://www.accesspdf.com/pdftk/ Hope this helps. Regards, Dirk -- Dipl.-Ing. Dirk Krause http://www.fh-schmalkalden.de/url.php?/page/1026/select_wert/3023 Please use the web form in the line above to establish personal contact. Do not use the e-mail address shown in the header lines, mails to this address go into the electronic trash can. Thanks. >>>>> "dmacdonald" =3D=3D dmacdonald <dmacdonald@apposite.net> writes: dmacdonald> ...

pdf -> pcl using Ghostscript
I've heard it's possible to put a PDF through Ghostscript and get PCL out the other end. I have a couple of questions: 1) Would this work in a batch environment i.e. I use ksh under posix to process spool files via a daemon. I know I can use GS to process postscript in batch so the next step is PDF. 2) Do I need to install any type of drivers on my printers? We are using HP9000 and HP8150 printers. I read somewhere that you can only do the conversion from PDF to PCL when you open a GSV window and look at it online... I can't use this if its a restriction. "printdude19...

Using Ghostscript to Scale PDF Files
I need to scale PDF files by a certain percentage whilst ripping to a raster format like tiffg4 or pxl color. If I attempt to convert the PDF (841mm x 594mm) directly to the raster format it doesn't scale (or rotate or shift): ************************MyCommand.CMD********************************** -dBATCH -dNOPAUSE -dSAFER -r600 -sDEVICE=tiffg4 -sOutputFile=MyTif.tif -c "<</Policies <</PageSize 5>> >> setpagedevice " -c "<< 0.5 0.5 scale -90 rotate -2384 0 translate >> setuserparams" -f MyPDF.PDF **********************End MyCommand.CMD***************************** If I first convert the PDF to EPS using epswrite then use a simliar command file to the above to create the resultant tiffg4 file it works. *************************MyCommand1.CMD - PDF- >EPS****************************** -dBATCH -dNOPAUSE -dSAFER -r600 -sDEVICE=epswrite -sOutputFile=MyEps.EPS -f MyPDF.PDF ************************End MyCommand1.CMD************************* *************************MyCommand2.CMD - EPS- >TIFG4****************************** -dBATCH -dNOPAUSE -dSAFER -r600 -sDEVICE=tiffg4 -sOutputFile=MyEps.TIF -c "<</Policies <</PageSize 5>> >> setpagedevice " -c "<< 0.5 0.5 scale -90 rotate -2384 0 translate >> setuserparams" -f MyEps.EPS ************************End MyCommand2.CMD************************* Not too bad performance-wise for the B&W to tiffg4 but when convertin...

Trying to get some useful information out of VHDL with Tcl
Hi, In an attempt to extract interconnection information from VHDL files I started using regular expressions, but the nature of VHDL make those regular expressions large and quite difficult to maintain and extend as I fill in new features. Has anybody a better idea than to use regexps for parsing for such a difficult language? -- Svenn On Tue, 2 Dec 2008 04:55:28 -0800 (PST), Svenn Are Bjerkem wrote: >In an attempt to extract interconnection information from VHDL files I >started using regular expressions, but the nature of VHDL make those >regular expressions large and quite difficult to maintain and extend >as I fill in new features. Yes, it's a loser. Stripping away all the comments makes things a tad easier, but it's still not appropriate RE-fodder. The received wisdom here on c.l.t is clearly opposed to the use of REs for serious parsing applications. > Has anybody a better idea than to use >regexps for parsing for such a difficult language? Have you looked at GHDL? You might be able to steal the VHDL parser from that. I don't know whether it is able to write out the syntax tree in a form that could easily be sucked into a Tcl script, though. The practical reality is that you will do far better to load your VHDL model into a simulator, and use its foreign-language interface (FLI, VHPI or what-have-you) to traverse the connectivity of instantiated entities. If you consider all the complications that can be introduced by generics, ...

get summary information using PROC SQL
Dear All, I have a question about how to combine two datasets and get some summary information. I have a monthly dataset (data1) which consists of four variables: the stock ID, current month, return in current month, and holding period for each stock(HP). The HP is, by the way, different across stocks across months. Now, for data1, I want to get the rolling return for each stock in each month for previous HP-months. The complete monthly return data are in another dataset (data2).I tried the following code but failed. Could anybody please help me? Thanks! my code: proc sql; create tabl...

PDF PDF PDF
For anyone struggling to figure out how to create a PDF in SWX it's pretty simple but you may have to have the Bluebeam version of swx FIRST go to Tools>Options and check "Save as PDF" Then you can save them right from the save as dialog. Maybe I'm the only dumbass that could't figure that out! ;0) But it was in help under "PDF" An easier way is to download a program from www.pdf995.com that "prints" you files to a PDF foramat. This program works with SW and any other program you use to print with. "3d" <jmiller at marvelindustri...

How to use wget to get information of a jsp page
I have a jsp page that takes one parameter say: http://www.a.com/a.jsp?id=1and use different id to generate different pages,now I want to get the results from that and I use>> wget "http://www.a.com/a.jsp?id=1"unfortunately, I can only get the source code of a.jsp, which isuseless to me.Is there any other methods for doing this? Yang wrote:> I have a jsp page that takes one parameter say: http://www.a.com/a.jsp?id=1> > and use different id to generate different pages,> now I want to get the results from that and I use>>> wget "http://www.a.com/a.jsp?id...

Hackers use Google to get private information
http://www.stuff.co.nz/stuff/0,2106,3680878a11,00.html RELATED LINKS =BB Have your say =BB Subscribe to Archivestuff Hackers use Google to get private information 26 May 2006 By SOPHIE NEVILLE Sensitive government information and confidential documents are readily accessible through Internet search engines, new research has shown. A Massey University study has found that hacking attacks via the popular search engine Google are on the rise and New Zealand sites are less secure than those in the United States and Australia. Information systems senior lecturer Ellen Rose said supposedly private information was easy to find via Google. Businesses and government departments needed to put more effort into protecting their information. "Google was intended to help you find things on the Web, but you can find all sorts of things that perhaps people don't want you to find." Researchers developed a computer programme that ran 170 queries a day for three months against the Google database, looking at sites in New Zealand, Australia, the US and the Czech Republic. It found sensitive data was easier to find than before and New Zealand sites were particularly vulnerable. Half the queries returned sensitive information, but some was available for only a short time, Dr Rose said. She would not say what was discovered or from where, but said Google allowed hackers to find vulnerable websites. Advertisement Advertisement spamhotmail@yahoo.com writes: > Hac...

tool that shows the same PDF coordinates as ghostscript uses
The PDF format takes the bottom left corner of a document to be the origin (0,0). This makes it difficult to get coordinates for cropping because Ghostscript's /CropBox command uses this coordinate system. Consequently, the display command cannot easily be used to get coordinates. Is there a graphical tool that will directly give the /CropBox coordinates for a selected region? BTW, coordinates from the display command cannot be translated either, because it finds a different page area geometry than the pdfinfo command. In article <a2d8a7c7d93d8c0228a5b95e227bcb6e@dizum.com>, nobody@dizum.com says... > The PDF format takes the bottom left corner of a document to be the > origin (0,0). This makes it difficult to get coordinates for cropping > because Ghostscript's /CropBox command uses this coordinate > system. Ghostscript doesn't have a /CropBox command. It does have -dUseCropBox, and that obviously uses the PDF user space co-orindates as given by the PDF file. > Is there a graphical tool that will directly give the /CropBox > coordinates for a selected region? A 'selected region' ? CropBox is a per page entry in the page dictionary, so a 'selected region' doesn't mean much. You can use pdf_info.ps, in the Ghostscript 'toolbin' directory, teh usage is at the top of the file, here it is anyway: % usage: gs -dNODISPLAY -q -sFile=____.pdf [-dDumpMediaSizes] [- dDum...

getting pdf file in palm using linux.
this is a long shot but does anyone know how to get a pdf file into a palm from linux? "tru178" <tru178@nospam.net> wrote in news:pan.2003.07.29.03.50.55.666071@nospam.net: > this is a long shot but does anyone know how to get a pdf > file into a palm from linux? Acrobat Reader for Palm. On the Adobe website. -- Regards, Stan Stan Gosnell <GLSNightPilot@yahoo.com> writes: > "tru178" <tru178@nospam.net> wrote in > news:pan.2003.07.29.03.50.55.666071@nospam.net: > >> this is a long shot but does anyone ...

Adding pictures to PDF file using GhostScript
Hello, is it possible with GhostScript to add pictures into a PDF file (on fixed positions)? And if it is, how? Regards Marc Marc Muehlfeld wrote: > Hello, > > is it possible with GhostScript to add pictures into a PDF file (on > fixed positions)? And if it is, how? > > Regards > Marc Use GhostScript to convert the PDF into single page .eps files and then write a .ps file to use those as a page background and add your photos to that. Jeff Coffield ...

HTML to PDF/PostScript using style sheets?
Hi all, Can anyone please recommend me a package (either free or commercial) for MacOS X which will convert HTML to PostScript _including_ processing the style sheets correctly? All the free ones I'm aware of don't make any use of style sheets, and so you don't get to make the output look particularly pretty. As I'm developing a browser-based reservation system for a travel company, we want to be able to print off letters, vacancy lists and whatnot for posting to customers and the most straightforward way is (we hope) to write HTML files and then convert to PostScript ...

How to get user information using Java API?
Hi, I have JAVA program that is executed on a remote machine to authenticate a user using DIIOP with username/password using the NotesFactory.CreateSession method against a 7.0.2 Domino Server running on a remote machine. I need to retreive the information (phone, email etc) for this user. What API can I use? thanks, Jyothi PS: The only method I found so far is to open the db names.nsf and use "People" view to get all the entries and use FTSearch to match the username - obviously this is not ideal. I could not filter the entries/ documents using a key with the loginn...

Web resources about - getting PDF information using GhostScript? - comp.lang.postscript

Ghostscript - Wikipedia, the free encyclopedia
Ghostscript is a suite of software based on an interpreter for Adobe Systems ' PostScript and Portable Document Format (PDF) page description ...

Ghostscript 9.0 supports ICC profiles
... also supports ICC colour profiles and allows third-party Colour Management Modules (CMMs) to be integrated The developers have released Ghostscript ...

Bill Casselman's course page
PostScript is an interpreted language originally intended for use in printers.It can be used for many tasks involving complicatedgraphics, and ...

GhostPCL, GhostPDF, and GhostXPS
GhostPCL is Artifex Software's implementation of the PCL-5™ and PCL-XL™ family of page description languages. For more information please see ...

FileOptimizer can compress 33 different formats
... The program is essentially a front end for a host of other tools. Present it with a PDF file, say, and behind the scenes it’ll call up Ghostscript ...

The comet is here: Icaros 1.4 has been released!
We are really excited to announce the immediate availability of the new "point release" of Icaros Desktop, the most known distribution of the ...

Coders at Work: L Peter Deutsch
A prodigy, L Peter Deutsch started programming in the late ’50s, at age 11, when his father brought home a memo about the programming of design ...

Commands tagged mate - commandlinefu.com
Great UNIX/Bash commands tagged with mate - see these and many other invaluable command-line nuggets at commandlinefu.com

Cygwin Gold Stars
Cygwin Install Cygwin Update Cygwin Search Packages Licensing Terms Cygwin/X Community Reporting Problems Mailing Lists Newsgroups Gold Stars ...

World atlas of Flickr geotaggers is maptastic
The maps are ordered by the number of pictures taken in the central cluster of each one. This is a little unfair to aggressively polycentric ...

Resources last updated: 3/14/2016 4:11:25 AM