The way I was creating the highlight was as follows:
Rect highlightRect = new Rect(decodedX1, decodedY1, decodedX2, decodedY2);
pdftron.PDF.Annots.Highlight highlight = pdftron.PDF.Annots.Highlight.Create(_pdfDocument.GetSDFDoc(), highlightRect);
highlight.SetQuadPoint(0, new QuadPoint(new Point(highlightRect.x1, highlightRect.y2), new Point(highlightRect.x2, highlightRect.y2), new Point(highlightRect.x2, highlightRect.y1), new Point(highlightRect.x1, highlightRect.y1)));
colour = _iPdf.Highlights.DefaultHighlightColor; //custom color
//This sets the opacity for the annotations color (0.2 is what we use)
pdftron.PDF.Annots.Markup markup = new pdftron.PDF.Annots.Markup(highlight);
markup.SetOpacity(0.2);
pdftron.PDF.Page page = _pdfDocument.GetPage(int.Parse(annotationLocation.Page.ToString()));
page.AnnotPushBack(highlight);
…this resulted in overlapping highlights with darker colors at the points of overlap.
I tried switching to doing it like this: http://www.pdftron.com/pdfnet/samplecode/data/HighlightPDFText.cs
…there alot more code involved, but it does give me the opportunity to incorporate e_bl_multiply, however using that with an opacity factor to dial down the colors a bit (gs.SetFillOpacity(0.2); ) resulted in the text being darker again on the overlaps. If I didn’t use an opactity it all looked the same, but for cross-platform reasons (and business rules given to me) the opactity has to be set.
I’ll keep tinkering, but if you have any suggestions, please feel free…
Barry