Opened 20 years ago

Last modified 18 years ago

#492 reopened defect

line symbols - dashes don't work, it ends up as a solid line in the PDF

Reported by: assefa Owned by: mapserverbugs
Priority: high Milestone: FUTURE
Component: Output-PDF Version: 4.1
Severity: normal Keywords:
Cc: jmckenna@…, thomas.bonfort@…

Description

line symbols - dashes don't work, it ends up as a solid line in the PDF

Attachments (4)

pdf-style.diff (2.8 KB ) - added by thomas.bonfort@… 19 years ago.
patch to enable the style of a symbol to be represented with pdf output
pdf-style.2.diff (2.8 KB ) - added by thomas.bonfort@… 19 years ago.
oops, typo in determining optlist length
pdf-style.3.diff (3.0 KB ) - added by thomas.bonfort@… 19 years ago.
added ifdefs for USE_PDF
dashedlines.diff (2.5 KB ) - added by thomas.bonfort@… 18 years ago.
enable dashed pdf lines - code only in mappdf.c

Download all attachments as: .zip

Change History (22)

comment:1 by assefa, 19 years ago

Milestone: FUTURE
Resolution: fixed
Status: newclosed
Not dealing with PDF output for this relase. Setting to FUTURE.

comment:2 by dmorissette, 19 years ago

Resolution: fixed
Status: closedreopened
Reopening: you probably marked it fixed by accident?

by thomas.bonfort@…, 19 years ago

Attachment: pdf-style.diff added

patch to enable the style of a symbol to be represented with pdf output

by thomas.bonfort@…, 19 years ago

Attachment: pdf-style.2.diff added

oops, typo in determining optlist length

comment:3 by thomas.bonfort@…, 19 years ago

attachments.isobsolete: 01

comment:4 by thomas.bonfort@…, 19 years ago

Cc: thomas.bonfort@… added

by thomas.bonfort@…, 19 years ago

Attachment: pdf-style.3.diff added

added ifdefs for USE_PDF

comment:5 by thomas.bonfort@…, 19 years ago

attachments.isobsolete: 01

comment:6 by assefa, 18 years ago

Thomas,

 Is it possible to change a bit your logic so that there is no need for the 
optlist parameter in the symbol.h (in the symbol object). From what I can see 
this list is built using the parameters stylelength and style of the symbol 
object and I think you can either pass the 2 parameters or only use optlist 
locally inside mappdf.c.  

Thanks



by thomas.bonfort@…, 18 years ago

Attachment: dashedlines.diff added

enable dashed pdf lines - code only in mappdf.c

comment:7 by thomas.bonfort@…, 18 years ago

attachments.isobsolete: 01

comment:8 by assefa, 18 years ago

Thomas,

 What version of pdflib are you using ?  I was using 4.0.3 (kind of old and I
never upgraded :). I had to upgradde to 6.0.2 to have the dash line undelying
functions available (such as PDF_setdashpattern). I am not sure when these
functions were added but I am thinking of adding a define like : 
  #if PDFLIB_MAJORVERSION >= 6 arounf the code for the dash line so It will
build for peopole with old version and will actually work for people with
version above 6.0.  what do you think ? 
  

comment:9 by thomas.bonfort@…, 18 years ago

yes,
sorry for not having looked at this before, I just took the documentation
available on my computer without looking out for that. So the ifdefs would be a
good workaround, maybe with an added #warning to point out at compile time that
the feature won't be available.
On a note aside from that, with what I saw looking through the code, I guess
quite a few bits of mappdf could be rewritten/added to get back in sync with the
full feature set. I won't be able to work on this in the near future, but later ;)
cheers

comment:10 by assefa, 18 years ago

Cc: jmckenna@… added
I have commited the code with the #ifdef. I was not sure how I would add the
warning so I did not. Please give it a try.

Another note : there was a documentation on pdf and I think there should be an
additional notes indicating this support. The documentation was in
http://mapserver.gis.umn.edu/cgi-bin/wiki.pl?MapserverPDF in the old site but I
could not locate it on the new documentation site. I am ccing Jeff on this.

Last point , If you want to champion the pdf support, It will be great. I could
incorporate any changes you do and if these are substantial changes, you could
potentially have cvs access to do the modifications.

I left this bug open until it is tested an the doc thing is clarified.

Thanks

comment:11 by thomas.bonfort@…, 18 years ago

ok, tested cvs-head here with no apparent problem

for the warning you can add

#else
#warning pdflib version 6 or greater is needed to enable dashed line support

before one of the #endif you added

as for the pdf support, as I stated this won't be in the near future... I'll
probably start thinking about it in a couple of months

cheers,
tb

comment:12 by jmckenna@…, 18 years ago

testing a dashed line in pdf output with 4.8.0-rc2 produces a solid line still.
 Here is my dashed symbol:

  SYMBOL
    NAME 'dashed'
    TYPE ELLIPSE
    POINTS 1 1 END
    FILLED true
    STYLE 10 20 20 10 END
  END



comment:13 by jmckenna@…, 18 years ago

i've created a pdf doc on the new site
(http://mapserver.gis.umn.edu/docs/howto/pdf-output).  It doesn't mention the
dashed line support, because i could not get it to work (see my previous comment).

comment:14 by thomas.bonfort@…, 18 years ago

just to make sure, are you using pdflib version >=6 ?

comment:15 by jmckenna@…, 18 years ago

ahh, that's probably it...i'll try with a recent pdflib version.

Thomas, if you want to become the owner of the new pdf output document
(http://mapserver.gis.umn.edu/docs/howto/pdf-output/) I can give you full access
to edit it.  Let me know if so.

comment:16 by assefa, 18 years ago

Jeff,

 I provided you with binaries using an old pdf lib. I will provide new binaries
built with pdf 6.0.2.  Sorry about that.

comment:17 by jmckenna@…, 18 years ago

For the record, with pdflib 6.0.2 our mapserver build produces a new error with
my test case (for pdf output):

   PDFlib exception (fatal): [1906] PDF_translate: Floating point value too large

I will provide Assefa with my test files.

comment:18 by jmckenna@…, 18 years ago

Here are the test files:  http://www2.dmsolutions.ca/netbin/gmap-pdf.zip

The mapfile as-is throws the error i mentioned.

You will also notice that there are 2 label objects commented out, which is
because they refer to a truetype font and when enabled another error is thrown
(and i have learned that the pdf code *should* handle non postscript-native
fonts but it obviously doesn't from this test).  More info on this error is here
http://www.modwest.com/help/kb5-261.html (in case you try enabling the labels).


Note: See TracTickets for help on using tickets.