Commit Graph
100 Commits
Author SHA1 Message Date
BobLd 5362a335f5 update XYLeaf with word separator 2020-05-30 13:03:59 +01:00
BobLd 79b78f486a add ReadingOrderHelper 2020-05-30 13:03:59 +01:00
BobLd ec613d337f correct Word bounding box 2020-05-30 13:03:59 +01:00
BobLd 8f1ab2022f update NearestNeighbourWordExtractor to use DlaOptions, stop ordering words 2020-05-30 13:03:59 +01:00
BobLd 43a68693ba allow oriented bounding box for TextBlock 2020-05-30 13:03:59 +01:00
BobLd 5b0b0a6db3 allow oriented bounding box for TextLine 2020-05-30 13:03:59 +01:00
BobLd bb94348127 add text Separator in TextBlock and TextLine 2020-05-30 13:03:59 +01:00
BobLd 5f75205e41 rename TextDirection into TextOrientation 2020-05-30 13:03:59 +01:00
BobLd 33ee66af42 add PageSegmenterOptions abstract class 2020-05-30 13:03:59 +01:00
BobLd dd546dcfc8 update IPageSegmenter with DlaOptions 2020-05-30 13:03:59 +01:00
BobLd 3cf7c45994 add DlaOptions abstract class 2020-05-30 13:03:59 +01:00
BobLd a00660cd6e update nn word extractor for new clustering type 2020-05-30 13:03:59 +01:00
BobLd 78da925263 add AlmostEqualsToZero() and AlmostEquals(). 2020-05-30 13:03:59 +01:00
BobLd 08300f6a3a use IReadOnlyList<PdfPoint> i/o PdfPoint[] in KdTree 2020-05-30 13:03:59 +01:00
BobLd ca4111ec1b better parameters for FindIndexNearest 2020-05-30 13:03:59 +01:00
BobLd d2c2a2f592 add angle bounding functions 2020-05-30 13:03:59 +01:00
BobLd 404d6621de return grouped elements i/o grouped indexes in Clustering.NearestNeighbours 2020-05-30 13:03:59 +01:00
BobLd 78d57ad5f9 Add italic-bold test 2020-05-23 16:26:39 +01:00
BobLd 40afe977a3 check for ItalicAngle != 0 2020-05-23 16:26:39 +01:00
BobLd bb33741552 Fix KdTree.FindNearestNeighbours(k) returning the pivot itself 2020-05-10 15:49:00 +01:00
BobLd f91acefcfa Set ClipPaths to false if no ParsingOptions given (consistent behaviour) 2020-04-27 17:21:52 +01:00
BobLd ae82c30a31 Merge branch 'master' of https://github.com/UglyToad/PdfPig 2020-04-25 10:10:08 +01:00
BobLd c2de52423e Make NearestNeighbours public 2020-04-25 08:40:43 +01:00
BobLd d4210cd5d1 Make clustering algos public and use shorter names 2020-04-25 08:40:43 +01:00
BobLd 0a6ec3946b NearestNeighbourWordExtractor:
- Improve results by using PointSize
- Make 'filterFunction' public for ad hoc GetWords()
- Allow text in different direction

Make Letter.PointSize public and add warning (needed for NNWordExtractor)
Remove Page.GetPointSize(Letter letter)
2020-04-20 13:09:35 +01:00
BobLd 8eb50517dd Merge branch 'master' of https://github.com/UglyToad/PdfPig 2020-04-20 00:08:09 +01:00
BobLd 25c8560a96 Merge branch 'master' of https://github.com/UglyToad/PdfPig 2020-04-19 10:51:00 +01:00
BobLd 9d4bd69d79 Merge branch 'master' of https://github.com/UglyToad/PdfPig 2020-04-18 20:17:20 +01:00
BobLd 93c19d72ec improve mbr by removing PdfPoints creation 2020-04-18 11:09:49 +01:00
BobLd ab94746252 Improve default RecursiveXYCut dominant font width and height functions 2020-04-13 10:25:34 +01:00
BobLd 395c5a7fd9 Improve default RecursiveXYCut dominant font width and height functions 2020-04-12 19:49:30 +01:00
BobLd 3833fff28f Merge branch 'master' of https://github.com/UglyToad/PdfPig 2020-04-12 16:13:00 +01:00
BobLd b462c3bea4 update PublicApiScannerTests 2020-04-12 10:15:12 +01:00
BobLd 88c5aeebd5 Make DateFormatHelper public 2020-04-12 10:15:12 +01:00
BobLd 416d980a5c update PublicApiScannerTests 2020-04-10 15:33:37 +01:00
BobLd 48ad309ede Make DateFormatHelper public 2020-04-10 14:38:59 +01:00
BobLd 60595e1341 Check if current path is null for path construction operators 2020-04-05 17:58:57 +01:00
BobLd 9a2a72ea2e remove clipping to fix CanGetArtifact() test 2020-04-05 17:58:57 +01:00
BobLd 270b1b5ef5 add comment about bezier curves/polylines when clipping 2020-04-05 17:58:57 +01:00
BobLd e2b03c3075 implement clipping using Clipper (Boost Software License) 2020-04-05 17:58:57 +01:00
BobLd a759a99389 Move ClipPaths option from GetPage() to ParsingOptions 2020-04-05 17:58:57 +01:00
BobLd c14646fcc0 Fix Mode() 2020-04-05 17:58:57 +01:00
BobLd ec2dcdc9f4 Check if CurrentSubpath is null in CloseSubpath() 2020-04-05 17:58:57 +01:00
BobLd 16a17f3b8d update IsClosed() with Move 2020-04-05 17:58:57 +01:00
BobLd d804a63905 update comments 2020-04-05 17:58:57 +01:00
BobLd b923a42f9e Check if CurrentSubpath null before CloseSubpath 2020-04-05 17:58:57 +01:00
BobLd 20c4b9594b Rename PdfSubpath.ClosePath() to PdfSubpath.CloseSubpath() to avoid confusion 2020-04-05 17:58:57 +01:00
BobLd 04300eb12c Add PdfSubpath comment 2020-04-05 17:58:57 +01:00
BobLd 401c4484b5 remove static for local function (recommended by VS2019) 2020-04-05 17:58:57 +01:00
BobLd 064fa4922a make Clipping internal
do not throw errors when CurrentPath is null
modify tests to match
2020-04-05 17:58:57 +01:00
BobLd 51165dc11a Implement EndPath
Make path clipping optional
2020-04-05 17:58:57 +01:00
BobLd a7fe39fc32 Add SvgTextExporter
Modify WriteSvg to account for height
2020-04-05 17:58:57 +01:00
BobLd 983cfcb2f6 Simplify path construction operators
fix 're' operator to reflect documentation
Update ContentStreamProcessor with fill, stroke and clip operations
Throw errors when currentPosition is null in PdfSubpath
2020-04-05 17:58:57 +01:00
BobLd 3ee9ac7915 Implement FillStrokePath() operator and filling rule. 2020-04-05 17:58:57 +01:00
BobLd 5eb2cc507e Add CurrentClippingPath to CurrentGraphicsState 2020-04-05 17:58:57 +01:00
BobLd 83ef10ec22 Add Clipping helper class. Does nothing for the moment 2020-04-05 17:58:57 +01:00
BobLd 43b40da5d5 Change Subpath to path where necessary 2020-04-05 17:58:57 +01:00
BobLd 002d8dc06d Move Path-Painting Operators to PathPainting folder 2020-04-05 17:58:57 +01:00
BobLd c4a077bbbb Add IsFilled and IsStroked flags
Add CloneEmpty() and GetBoundingRectangle()methods
2020-04-05 17:58:57 +01:00
BobLd 2b68547131 Moving PdfPath from PdfPig.Core to PdfPig
Add FillColor, StrokeColor, LineWidth, LineDashPattern and LineCapStyle to PdfPath.
2020-04-05 17:58:57 +01:00
BobLd 6677641b37 Create PdfPath
Rename ClippingRule to FillingRule
Move FillingRule from Subpath to Path
2020-04-05 17:58:57 +01:00
BobLd ab6a0f11fc Change name from PdfPath to PdfSubpath 2020-04-05 17:58:57 +01:00
BobLd 7d52bc8be4 make Distances.FindIndexNearest public
add tests for Distances.FindIndexNearest
2020-03-24 19:52:01 +00:00
BobLd 8460b8bc1d Add test for Mode(float) 2020-03-24 19:52:01 +00:00
BobLd 0d786a1265 Add tests for KdTree, MathExtensions and Distances
Add reference to DLA project
Make KdTree public
Fix mode computation for multimodal
2020-03-24 19:52:01 +00:00
BobLd 5f0ddf131e make OrientedBoundingBox public 2020-03-24 19:52:01 +00:00
BobLd c1a1fa1f7f - fix minimum area rectangle algo and make it public
- add tests
- tidy up code
2020-03-15 17:20:36 +01:00
BobLd 9366aa2b37 Tidy up code 2020-03-15 15:39:19 +01:00
BobLd 5b8a2f2e38 handle k-nearest neighbours search
update DocstrumBB with kd-tree
2020-03-15 15:39:19 +01:00
BobLd 8cafda3577 handle nearest neighbour not found 2020-03-15 15:39:19 +01:00
BobLd 439dad9f35 fix depth for leaves 2020-03-06 16:53:18 +00:00
BobLd dbdef7f195 kd-tree 2020-03-06 16:53:18 +00:00
BobLd c4309ef31e fix kd-tree 2020-03-06 16:53:18 +00:00
BobLd 1e1a33d46e fix typo in kd-tree
replace Count() by Count or Length
2020-03-06 16:53:18 +00:00
BobLd e477bc8d6d Tidy up and optimise kd-tree 2020-03-06 16:53:18 +00:00
BobLd 5ae38f1bad Improve default max function 2020-02-28 14:43:18 +00:00
BobLd 0afaa19d15 Handle null CurrentPath 2020-02-24 11:20:56 +00:00
BobLd 74413fa6a4 Add PdfPath.IsCounterClockwise tests 2020-02-24 11:20:56 +00:00
BobLd 1d095af974 Implement Modify Clipping operations 2020-02-24 11:20:56 +00:00
BobLd b0eaccf56f Add PdfRectangle.Contains(PdfRectangle) and tests 2020-02-23 14:44:35 +00:00
BobLd 8e5aaf068d use MemberData for all Geometry tests 2020-02-23 11:23:27 +00:00
BobLd bbdb778d5e use Count == 0 i.o. !Any() 2020-02-23 11:23:27 +00:00
BobLd 514a5eff20 use MemberData in PdfRectangle.Area tests 2020-02-23 11:23:27 +00:00
BobLd 41c8af0de4 use MemberData in PdfRectangle.Rotate tests 2020-02-23 11:23:27 +00:00
BobLd c6669679d6 use MemberData in Line.Length tests 2020-02-23 11:23:27 +00:00
BobLd 1b15238e31 avoid creating PdfLines in IntersectsWith 2020-02-23 11:23:27 +00:00
BobLd 49caa071ba improve length computation
tidy up IntersectsWith()
2020-02-23 11:23:27 +00:00
BobLd 7d7a7fc5ee remove useless code 2020-02-23 11:23:27 +00:00
BobLd 42245d70ca Improve PdfRectangle.GetWidthHeight();
Improve and simplify Word's oriented bounding box
2020-02-23 11:23:27 +00:00
BobLd 67c5abf2b6 fix Intersect(BezierCurve, Line) and add tests 2020-02-23 11:23:27 +00:00
BobLd 2878e74017 Add bezier curve test 2020-02-23 11:23:27 +00:00
BobLd 36566f42e6 Create generic methods for lines in GeometryExtensions 2020-02-23 11:23:27 +00:00
BobLd 6fe0ef0351 Add line tests and improve GeometryExtensions 2020-02-23 11:23:27 +00:00
BobLd b8d1eba8ee PdfLine.Insersect() 2020-02-23 11:23:27 +00:00
BobLd d2ac2f598a update Centroid, GetWidthHeight and tests 2020-02-23 11:23:27 +00:00
BobLd 2c8c6cda87 add GeometryExtensions tests 2020-02-23 11:23:27 +00:00
BobLd 848d687910 Add kd tree and improve clustering 2020-02-19 11:12:54 +00:00
BobLd 3229574345 Correcting typo 2020-02-12 12:00:14 +00:00
BobLd 6a72ce655c Merge branch 'master' of https://github.com/UglyToad/PdfPig into rxycut-stackoverflow 2020-02-12 11:40:51 +00:00
BobLd f0be3e99ee Add Projection class 2020-02-11 10:04:04 +00:00