* Added some primitives:
DrawPolygon (= Polyline with closing path)
ClosePathStroke
FillStrokePath
FillEvenOddStrokePath
* Origin by default now at the bottom of the page.
git-svn-id: trunk@34778 -
pdf test app: Implements DrawPolyLine() example on page 2.
pdf: implements Page.DrawPolyLine() method.
pdf: TPDFLineSegment now has an option Stroke parameter. So too does Page.DrawLine().
All part of improving the path related drawing in PDF.
pdf: introduced a new PDFStrokePath class and Page.StrokePath method.
pdf: removes empty constructors.
pdf: Adds optional Stroke paramater to all CubicCurveToXXX() methods.
This allows us more control when we do custom path based drawing.
pdf: introduced new ResetPath() and ClosePath() methods for TPDFPage.
pdf test app: Implement Bezier Curve drawing in Advanced Shapes page.
pdf test app: tidy up the layout of page 2.
pdf test app: tidy up the layout of page 1.
pdf test app: adds a new "advanced shapes" page.
pdf test app: Renamed field variable to a more logical name.
pdf: Introduced CubicCurveToY() and CubicCurveToY() methods.
The code comments explain the difference.
pdf: introduced a new overloaded Page.CubicCurveTo() method.
pdf: introduced a new overloaded Page.MoveTo() method.
pdf: Gave Page.CurveToC() more meaningful parameter names.
pdf: Gave TPDFCurveC parameters and field variables more meaningful names.
pdf test app: updated the test app to show the Cubic Bezier curve in action.
pdf: introduced a cubic bezier curve method to TPDFPage.
pdf: introduced a new Page.MoveTo() method.
pdf: implements a more consistent class hierarchy.
Many classes take a Document as parameter in the constructor, yet
don't descend from TPDFDocumentObject - which defines a property
to get hold of that Document information again.
pdf test app: updated the app to show Rounded Rectangles in action.
pdf: introduced a new Page.DrawRoundedRect() method.
pdf: improved the Ellipse code with a more accurate curve magic number.
pdf: introduced a new overloaded LineSegment.Command() function.
pdf test app: Adds parameter option to embed fonts or not.
pdf: implements contents string/stream compression.
ttf unit tests: resolve failing Created/Modified datetime tests.
pdf demo: extend the sample app to draw text in a box.
git-svn-id: trunk@34767 -
fppdf: test project page number output is now more dynamic.
pdf+ttf: replace string constants with resource strings.
pdf: removes the unused color parameter from TPDFDocument.AddFont().
pdf: update "testfppdf" application due to TPDFDocument.AddFont() changes.
pdf tests: fix failing tests due to TPDFDocument.AddFont() changes.
------------------------------------------------------------------------
git-svn-id: trunk@34563 -
TTF: Fixes failing tests due to newly added font to the test suite.
Font count went from 4 to 5.
TTF: fix bug where Postscript.FontAngle had the wrong data type.
Updated the unit tests, but extending them with Liberation Sans Italic font.
git-svn-id: trunk@34060 -
- pdf: updates demo with a landscape page.
- pdf: Intenal Coordinate Matrix was not always adjusted when needed.
eg: When the Page.Orientation was changed, PaperType was changed and so on.
- pdf: Extra sanity check to prevent a possible AV.
- TTF: new FixPathDelimiters() to fix font search paths.
git-svn-id: trunk@33779 -
rtl/nativent/Makefile.fpc:
+ add rule for ISO Extended Pascal unit
rtl/nativent/sysutils.pp:
* add dummy implementations of the RawByteString and UnicodeString variants of ExecuteProcess
packages/fcl-pdf/fpmake.pp:
* don't compile fcl-pdf for NativeNT
git-svn-id: trunk@33713 -
pdf tests: extended Page.DrawImage (pixels) test with different UnitOfMeasure values.
pdf tests: Implements Page.DrawImage (UnitsOfMeasure) unit tests.
pdf: Fixed DrawImage() bug detected by unit tests.
pdf: fixed failing test due to varying string types.
git-svn-id: trunk@33573 -
pdf: Renamed DrawImage() parameters to more clearly state the values are in pixels.
pdf: convenience function to return a TPDFCoord data type.
pdf: method implementation signature now matches interface section.
pdf: Implements new overload DrawImage that takes UnitOfMeasure Width & Height parameters.
pdf: sample: Modified the Image page to some usage of new overloaded DrawImage()
ttf: TextWidth() parameters are now const parameters.
ttf: Implemented a new TextHeight() method for the FontCacheItem class.
git-svn-id: trunk@33566 -
ttf: renamed SearchForFont() to SearchForFonts(). Plural makes more sense.
ttf: extra sanity check before calling SearchForFont()
ttf: new AssignFontList() method introduced.
This populates AStrings with a list of found PostScript names.
Useful for fpReport and probably a visual report designer too.
ttf: new overloaded Find() method, and Find-by-PostScript name.
FamilyName is normally the base font name only.
PostScriptName is the base name plus an attribute suffix.
eg: Calibri vs Calibri-Bold
git-svn-id: trunk@33563 -
- pdf unittests: Minor improvement to PDFString.TestWrite()
- pdf: fixes FPC bug ID #30038 and implements TPDFUTF8String unit tests.
- pdf test: Extended the SimpleText() text output to show more symbols
git-svn-id: trunk@33543 -
--------------------------------
* pdf unittests: fixes failing test after fpPDF changes, plus newtest added.
* pdf: fixes failing test due to recent changes in fpPDF.
* pdf tests: new test for new behaviour.
* pdf: Applies patch from Mantis 30006 - and replaced bitmasks with Sets.
* pdf tests: Updates the README file with exact font details used by the tests.
* ttf: fixes debug output directory.
* pdf: FPC Mantis BugID 30008: fpTTF: wrong Ascender/Descender calculation
* pdf: fix bug where return value was never set.
* pdf: fixes compiler hint about uninitialised variables being used.
* pdf unittests: fixes memory leak in one test.
* pdf unittests: fixes compiler hint about unused units in uses clause.
git-svn-id: trunk@33535 -
- fppdf: Fixes support for FPC 2.6.4
- fppdf: Fixes bug where PDFName values were not escaped.
Spaces for example are not allowed in PDFName elements.
- fppdf: Removes usage of TFriendTTFileInfo class. Not needed any more.
git-svn-id: trunk@33495 -
- Removed TTextDictionary class.
- adds code comments and fixes a spelling mistake.
- Removes TFontDef definition - we don't need it any more.
- refactored TPDFDocument Text API to overloaded methods CreateText()
- test: update test project to reflect the latest API changes.
- unittests: update tests to match recent API changes.
git-svn-id: trunk@33483 -
- utf8string-aware TFPFontCacheItem.TextWidth (utf16 surrogate pairs aren't supported though)
- Cached result for TFPFontCacheItem.GetFontData.
- Fix for range check error in TTFFileInfo.PrepareFontDefinition.
git-svn-id: trunk@33468 -