PiRSquared17 / morisoliver

Automatically exported from code.google.com/p/morisoliver
0 stars 0 forks source link

Save the map image by right clicking on it #6

Closed GoogleCodeExporter closed 9 years ago

GoogleCodeExporter commented 9 years ago
What steps will reproduce the problem?
1. Right clicking on the map image does not offer a "save image as" option. 

What is the expected output? What do you see instead?
The Java Web Start OLIVER did allow a user to save the map image as a PNG by 
right clicking the map image. Users have been requesting a return of this 
functionality.  

Current workaround:  Choose Control-Printscreen button to capture your 
computer's active window display as a image in the clipboard.  Then paste this 
image into another software program such as Microsoft Word. 

Instructions for Windows XP: 
http://www.microsoft.com/windowsxp/using/setup/tips/screenshot.mspx

Instructions for Windows 7: 
http://windows.microsoft.com/en-US/windows-vista/Take-a-screen-capture-print-scr
een

Original issue reported on code.google.com by Aleda.Fr...@state.ma.us on 17 Feb 2011 at 5:01

GoogleCodeExporter commented 9 years ago
OK, the legend in the print png now has the layers in the correct order even if 
I rearrange them, add more, rearrange again... delete, etc. 

Original comment by Aleda.Fr...@state.ma.us on 9 Sep 2011 at 7:45

GoogleCodeExporter commented 9 years ago
Could you send me your favorite north compass .png?  A transparent background 
would be ideal.  You pick the size, please.

I just added a scalebar, so I plan on sticking the compass to its left.

Committed revision 95.

Original comment by cpl...@gmail.com on 9 Sep 2011 at 8:49

GoogleCodeExporter commented 9 years ago
How about the attached north arrow.  I got it from openclipart.org and modified 
it. 
Paul likes this simple style and so do I.

Original comment by Aleda.Fr...@state.ma.us on 12 Sep 2011 at 2:08

Attachments:

GoogleCodeExporter commented 9 years ago
Title added as well as N compass.  That's a big compass!

Committed revision 97.

Original comment by cpl...@gmail.com on 12 Sep 2011 at 4:57

GoogleCodeExporter commented 9 years ago
Let me take a look!  I kind of guessed, I could resize it smaller... 

Original comment by Aleda.Fr...@state.ma.us on 12 Sep 2011 at 4:58

GoogleCodeExporter commented 9 years ago
One issue - try printing from this Permalink: 

http://170.63.166.213/map_ol/moris.php?lyrs=Massachusetts%20Municipal%20Boundari
es%20Lines~massgis:GISDATA.TOWNSSURVEY_ARC|Digital%20Offshore%20Cadastre%20-%20A
tlantic83%20-%20Submerged%20Lands%20Act%20(SLA)%20Boundary%20Line~massgis:MORIS.
SLA_ARC|Massachusetts%20Lateral%20Boundaries~massgis:MORIS.MASS_LATERAL_BOUNDARI
ES_ARC|New%20England%20Mask~massgis:GISDATA.NEMASK_POLY&bbox=-71.28232448179664,
42.402065376731464,-70.17339198687851,42.88240693678584&coordUnit=dms&measureUni
t=m&base=googleSatellite¢er=-7873389.1635453,5257744.2705067&zoom=4

The scale bar kind of runs into the north arrow.
See attachement. 

Original comment by Aleda.Fr...@state.ma.us on 12 Sep 2011 at 6:06

Attachments:

GoogleCodeExporter commented 9 years ago
Hopefully putting the N arrow above the scalebar will do the trick.

Committed revision 99.

Original comment by cpl...@gmail.com on 12 Sep 2011 at 7:48

GoogleCodeExporter commented 9 years ago
Well, oops.  Still broken w/ your example.

Original comment by cpl...@gmail.com on 12 Sep 2011 at 7:50

GoogleCodeExporter commented 9 years ago
Insert another quarter and try again.

Committed revision 100.

Original comment by cpl...@gmail.com on 12 Sep 2011 at 8:00

GoogleCodeExporter commented 9 years ago
Looks much better!  The scale bar and the north arrow don't conflict at that 
scale now. 

Original comment by Aleda.Fr...@state.ma.us on 12 Sep 2011 at 8:13

GoogleCodeExporter commented 9 years ago
Charlton, Firefox 6 is OK, but in IE 9 the print button doesn't do anything for 
me.  Can you reproduce? 

Original comment by Aleda.Fr...@state.ma.us on 13 Sep 2011 at 3:44

GoogleCodeExporter commented 9 years ago
Can we just outlaw IE?  These changes should fix.

Committed revision 101.

Original comment by cpl...@gmail.com on 13 Sep 2011 at 4:17

GoogleCodeExporter commented 9 years ago
Now it works in IE 9.

Original comment by Aleda.Fr...@state.ma.us on 13 Sep 2011 at 6:16

GoogleCodeExporter commented 9 years ago
Regarding out-of-scale layers and comments 19-21, the printed map doesn't 
include the out-of-scale layers, but they are listed in the legend. Would it be 
possible to exclude out-of-scale layers from the legend too?

If the layer title is really long, it's cut off in the legend image (e.g., 
Concentrated Commerce Traffic, as indicated by Automatic Identification System 
(AIS) data (250-meter grid spacing)). Is there a max length the layer titles 
can be? How is the width of the legend image determined or is it always the 
same width?

There are two typos in the "Map ready" pop-up window (containing and separate). 
We'd also like to add a note to that pop-up that lets users know that the 
basemap won't be included in the printed map. We'll get you that language soon.

Tested with Chrome 14 on Windows 7.

Original comment by emily.hu...@state.ma.us on 22 Sep 2011 at 6:46

GoogleCodeExporter commented 9 years ago
Charlton might be able to exclude out of scale layers - I vote that that would 
be a good idea.  In terms of the legend itself, it is generated by a call to 
GeoServer called GetLegendGraphic, one call per layer.  There is some choice in 
how it's done. This is what I've documented so far in our wiki: 
https://wiki.state.ma.us/confluence/display/massgis/legend  Width and Height 
are 2 parameters. Emily, you can experiment yourself with the URLs.  I think a 
long title is tough, we can't make the legend super wide and still fit it on 
the printed page. 

Original comment by Aleda.Fr...@state.ma.us on 22 Sep 2011 at 6:55

GoogleCodeExporter commented 9 years ago
Actually, maybe Charlton can wrap the titles - I think he's using the 
ImageMagick for that! 

Original comment by Aleda.Fr...@state.ma.us on 22 Sep 2011 at 6:56

GoogleCodeExporter commented 9 years ago
Out of scale layers are not passed along to print / save anymore.

Word wrap is in place.  (The min width of a legend is 200px, but I test for any 
getlegendgraphic requests whose width turns out to be > 200px and set the 
legend to be that #.)

Missssspellings corrected.

Original comment by cpl...@gmail.com on 22 Sep 2011 at 8:06

GoogleCodeExporter commented 9 years ago
Out of scale layers not printing now - fixed for me. 

Original comment by Aleda.Fr...@state.ma.us on 22 Sep 2011 at 8:44

GoogleCodeExporter commented 9 years ago
Word wrapping in the legend looks good. Misspellings seem gone.

Original comment by Aleda.Fr...@state.ma.us on 22 Sep 2011 at 8:46

GoogleCodeExporter commented 9 years ago
I also tested that out-of-scale layers are not printing and agree that this is 
fixed.

I like the word wrap, but words are occasionally cut off. See attached images 
for a few examples:

Example 1: The word "Planning" on the second row
Example 2: The word "Planning" on the first row
Example 3: See "(VMS)," "Planning," and "Common)"

Tested with Chrome 14 on Windows 7.

Original comment by emily.hu...@state.ma.us on 23 Sep 2011 at 2:47

Attachments:

GoogleCodeExporter commented 9 years ago
I just updated print.php to take care of the titles.  They word wrap sooner now.

But the clipping of the actual legend is beyond my control since I just pass 
along what geoserver returns as a getlegendgraphic.  You should see the same 
clipping in the legends in the legends panel of the mapper.

Original comment by cpl...@gmail.com on 23 Sep 2011 at 3:17

GoogleCodeExporter commented 9 years ago
I was referring to your 1st screenshot where 'Commiss' is cut off for the 
Nantucket row.

Original comment by cpl...@gmail.com on 23 Sep 2011 at 3:18

GoogleCodeExporter commented 9 years ago
I just tried recreating the same three legends I attached earlier, and I'm 
still seeing the same words in the layer titles cut off.

Original comment by emily.hu...@state.ma.us on 23 Sep 2011 at 5:09

GoogleCodeExporter commented 9 years ago
Probably because I'm at a lower revision.  Hang on.

Original comment by Aleda.Fr...@state.ma.us on 23 Sep 2011 at 5:12

GoogleCodeExporter commented 9 years ago
Issue 17 has been merged into this issue.

Original comment by emily.hu...@state.ma.us on 23 Sep 2011 at 5:37

GoogleCodeExporter commented 9 years ago
Titles are wrapping better - I tested the layers from above. One is still 
getting cut off a little, not sure why. 

Original comment by Aleda.Fr...@state.ma.us on 26 Sep 2011 at 4:05

Attachments:

GoogleCodeExporter commented 9 years ago
As mentioned in comment 64, we'd like to add a note that lets users know that 
the basemap won't be included on the printed map. On the Print/Save pop-up 
window, would you please add this note above Please enter a title:

Please note: Basemaps will not be shown on the map image. If you would like to 
print or save a map with the basemap, please use the Print option in your 
browser or capture a screenshot of the map.

Original comment by emily.hu...@state.ma.us on 27 Sep 2011 at 1:03

GoogleCodeExporter commented 9 years ago
Charlton, on second thought, ignore my last comment. We're going to hold off on 
adding or editing any text for a little bit. Thanks!

Original comment by emily.hu...@state.ma.us on 27 Sep 2011 at 2:06

GoogleCodeExporter commented 9 years ago
The opacity of data layers isn't included on the printed maps. If I change the 
opacity of a data layer so that it is partially transparent, the layer will be 
opaque in the printed/saved map image. The printed map should draw the layers 
with the opacity levels that the users set.

Original comment by emily.hu...@state.ma.us on 15 Nov 2011 at 7:57

GoogleCodeExporter commented 9 years ago
Interesting point.  The opacity is actually controlled through the browser.  
When you adjust this value, you're not resending a WMS request, the browser is 
just rendering it differently.  I may be able to mimic this behavior using 
ImageMagick tools, but I can't promise just yet.

Original comment by cpl...@gmail.com on 15 Nov 2011 at 8:14

GoogleCodeExporter commented 9 years ago
Opacity is now being honored in print/save.

Emily, I think you brought up legend clipping during our last concall.  Is it 
related to comment 70's examples?  If so, I have control over each of the layer 
titles but not the actual legend below each one.  And in the cases of the 
examples, when I ran tests here, they word wrap OK.  But one of the legends 
does clip.  However that clipping is occurring on GeoServer's side (the 
'Commiss' part).

http://wsgw.mass.gov/geoserver/wms?LAYER=massgis%3AMORIS.OM_MUNICIPALITIES_ADJ_P
A_POLY&TRANSPARENT=TRUE&FOO=Municipalities%20Adjacent%20to%20the%20Massachusetts
%20Ocean%20Management%20Planning%20Area%20(symbolized%20by%20Regional%20Planning
%20Agency)&SERVICE=WMS&VERSION=1.1.1&REQUEST=GetLegendGraphic&FORMAT=image%2Fpng

v. 0.73
Committed revision 185.

Original comment by cpl...@gmail.com on 17 Nov 2011 at 12:43

GoogleCodeExporter commented 9 years ago
Yes, comment 70's examples show some of the layer titles that are being 
clipped. Makes sense that you don't have control over the legend graphic, so 
we're just looking to fix the word wrap of the layer titles.

Original comment by emily.hu...@state.ma.us on 17 Nov 2011 at 1:16

GoogleCodeExporter commented 9 years ago
OK.  If you find an example of a bad word-wrap, please let me know.

Original comment by cpl...@gmail.com on 17 Nov 2011 at 1:19

GoogleCodeExporter commented 9 years ago
Actually, we can't enable opacity on the printout, and here's why.

Say you have Shellfish Sampling Stations turned on (a point layer).  Inside the 
online mapper, its default opacity = 1 (completely opaque), yet it is a 
transparent image that allows background layers to appear beneath it.  When I 
pass that opacity=1 to the print.php script, if it were to draw it at 
opacity=1, nothing would be seen below it (i.e. no background layers).

If I come up w/ something revolutionary, I'll code it in there.  For now, I'm 
yanking it.

Original comment by cpl...@gmail.com on 17 Nov 2011 at 4:17

GoogleCodeExporter commented 9 years ago
v. 0.77
Committed revision 192.

Original comment by cpl...@gmail.com on 17 Nov 2011 at 4:19

GoogleCodeExporter commented 9 years ago
I'm afraid I don't understand Comment #84.  What about MWRA Towns which are 
solid color, with airports underneath.  If I make the MWRA layer 50% 
transparent, I can start to see the airports.  Why does this not work with the 
print? Is it not possible to tell the print.php to use a X% opacity for a 
layer?  Are you making another call to GeoServer - if so can you tell me what 
it is?  I think there is a transparent parameter that can be used. 

http://170.63.166.213/map_ol_mop/moris.php?lyrs=Airports~massgis:GISDATA.AIRPORT
S_PT|MWRA%20Towns%20with%20Water%20or%20Sewer~massgis:GISDATA.MWRASERVICE_POLY&b
box=-75.17820119410798,39.982373560211194,-65.74070005615722,44.0676143889687&co
ordUnit=dms&measureUnit=m&base=custom¢er=283587.47048049,874375.36863424&zoom=1
.6063083595407903  (you'll have to make mwra partly transparent)

Original comment by Aleda.Fr...@state.ma.us on 17 Nov 2011 at 4:27

GoogleCodeExporter commented 9 years ago
An image that comes back from GeoServer usually has transparent cells.  In the 
mapper, these cells remain transparent no matter what you set the opacity to be.

That does not apply in the case of ImageMagick's opacity.  Its opacity applies 
to every cell no matter whether it starts out as transparent or not.  So a 
'GeoServer-transparent' cell could become 50% opaque if we carry your 50% 
opacity settings from the mapper to print.

Original comment by cpl...@gmail.com on 17 Nov 2011 at 4:34

GoogleCodeExporter commented 9 years ago
I say that w/ a good degree of confidence, but I haven't researched it 
completely.  Maybe I can tell ImageMagick to only apply opacity to 
non-transparent cells.  That would be nice, but, again, I haven't researched 
it.  So for now, I need to leave this option out of the print bag 'o tricks.

Original comment by cpl...@gmail.com on 17 Nov 2011 at 4:36

GoogleCodeExporter commented 9 years ago
Oops, maybe you're thinking that I just pass 1 giant URL that contains all the 
layers to GeoServer to use as my image in the print routine.  That's NOT what 
I'm doing now.  I make individual calls and stack them on top of each other.

If I can get away w/ making one giant call, can you give me an example that 
illustrates how to engage each layer, its style, as well as its opacity?

Original comment by cpl...@gmail.com on 17 Nov 2011 at 4:39

GoogleCodeExporter commented 9 years ago
Possible to have one giant URL with layers and styles, but can't list 
transparencies for each layer.  Only way to override symbology then is to 
include the symbology for the layers that you are overriding symbology for in 
the URL, gets really complicated, I wouldn't recommend.  You are putting the 
entire style SLD in the URL. 

So nothing useful there on the GeoServer side.  There is only one parameter 
transparent = true / false for the entire output image, not layer by layer. 

Original comment by Aleda.Fr...@state.ma.us on 17 Nov 2011 at 4:51

GoogleCodeExporter commented 9 years ago
The word wrapping looks better. The Massachusetts Ocean Management Planning 
Area (example 2 in comment 70) is still being cut off in the output legend.

Original comment by emily.hu...@state.ma.us on 17 Nov 2011 at 6:31

GoogleCodeExporter commented 9 years ago
Bah.  It's word-wrapping sooner now.  Give this a shot.

Committed revision 202.

Original comment by cpl...@gmail.com on 17 Nov 2011 at 8:35

GoogleCodeExporter commented 9 years ago
Word wrapping looks good. The MA Ocean Management Planning Area is no longer 
cut off.

Original comment by emily.hu...@state.ma.us on 21 Nov 2011 at 8:52

GoogleCodeExporter commented 9 years ago
I think I have the opacity thing licked.

Also, please provide the text you'd like to see in the print popup re. the 
background layers -- and WHEN you'd like to see it.

Committed revision 230.

Original comment by cpl...@gmail.com on 23 Nov 2011 at 3:57

GoogleCodeExporter commented 9 years ago
Transparency in print looks good. Very neat!

Our outreach people are reviewing the text in MORIS for user-friendliness, so 
we hope to pass along the text to you by the end of next week.

Original comment by emily.hu...@state.ma.us on 23 Nov 2011 at 4:14

GoogleCodeExporter commented 9 years ago
Verified. The text in the print popup window has been updated.

Original comment by emily.hu...@state.ma.us on 20 Dec 2011 at 6:39