ThinkGeo.com    |     Documentation    |     Premium Support

Hatch style fails drawing to pdfgeocanvas

 


I have a layer using a HatchStyle for drawing.  When is pass a pdfgeocanvas to the draw method, it fails saying the method is not supported. I have created a custom area  style that uses a solid brush when the canvass is pdf and the hatch brush when the canvas is any other type.  Just wanted to let you know there was a bug.  Here is the exception:


: 6a21fcdb-e75d-42ae-bacc-099b60edf35b An exception of type 'System.NotSupportedException' occurred and was caught. CAPITOL\lissesc   General Error: 100 : Timestamp: 5/24/2010 2:57:24 PM  Message: HandlingInstanceID: 6a21fcdb-e75d-42ae-bacc-099b60edf35b  An exception of type 'System.NotSupportedException' occurred and was caught.  ----------------------------------------------------------------------------  05/24/2010 09:57:24  Type : System.NotSupportedException, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089  Message : Specified method is not supported.  Source : PdfExtension  Help link :   Data : System.Collections.ListDictionaryInternal  TargetSite : PdfSharp.Drawing.XBrush xb8d9913b37331dbb(ThinkGeo.MapSuite.Core.GeoBrush, ThinkGeo.MapSuite.Core.ScreenPointF[])  Stack Trace :    at ThinkGeo.MapSuite.Core.PdfGeoCanvas.xb8d9913b37331dbb(GeoBrush xd8f1949f8950238a, ScreenPointF[] xda99c77836daa640)     at ThinkGeo.MapSuite.Core.PdfGeoCanvas.xf97072fdfc090635(IEnumerable`1 x848e9a85f0afcfc0, GeoPen xd036c7519f764c77, GeoBrush x7a72ea3aa943057c, Single xf79f95b297b243b5, Single x77628737d203d4ed, PenBrushDrawingOrder xc4ddc942de3fbbcb)     at ThinkGeo.MapSuite.Core.PdfGeoCanvas.x1f0b4fcba039b0b8(Collection`1 xf6035ba09c7c2cc2)     at ThinkGeo.MapSuite.Core.PdfGeoCanvas.EndDrawingCore()     at ThinkGeo.MapSuite.Core.GeoCanvas.EndDrawing()



Ed, 
  
 As far as I know , the HatchStyle is not supported yet. We may plan to try to implement it in future. See following post: 
 gis.thinkgeo.com/Support/DiscussionForums/tabid/143/aff/12/aft/7552/afv/topic/Default.aspx 
  
 Sorry for the inconvinience for now. 
  
 It would be nice if you could share with us how you use it.  
  
 Thanks. 
  
 Yale 


Yale,


I've attached a style class I wrote for displaying water.  On the pdfcanvas, i use a solid fill with 50% transparent,  if it is a drawing canvas I use the hatch style.  This class is created specifically as a workaround, as I would rather have the hatch pattern for pdf or drawing canvas.


 


Thanks,


Ed



2094-WaterStyle.cs (1.52 KB)

Ed,


Thanks for your sharing of your code.
 
I did some quick investigation today.  For the PdfGeoCanvas, we only support the GeoSolidBrush. We are probablly going to support the GeoLinearGradientBrush because the PDFSharp already support it. While for the HatchBrush, I do not think we can support it until PdfSharp support it.
 
forum.pdfsharp.net/viewtopic.php?f=2&t=740&p=1792&hilit=hatchbrush#p1792
forum.pdfsharp.net/viewtopic.php?f=2&t=550&p=1280&hilit=hatchbrush#p1280
 
 


Sorry for the inconvinience for now.
 
Thanks.
 
Yale