Jeff Young
e7abeb3c38
Cleanup.
2024-02-24 20:05:51 +00:00
Marek Roszko
25967b4a0f
Fix font map cache access creating invalid entries (and crashes)
2023-08-26 09:24:47 -04:00
Jeff Young
5e112ca78e
ADDED: parameterize font metrics and allow customization of overbar height.
2023-08-06 20:57:41 +01:00
Jeff Young
570978fa7f
Replace larger text bboxes now that we're not using them for knockouts.
2023-05-28 18:17:24 +01:00
Jeff Young
6e127829f8
Cleanup formating and includes.
2023-05-26 18:44:33 +01:00
Seth Hillbrand
0de24bfd59
Cleanup text alignment between version 6 and 7
...
Version 7 text alignment changed subtly for stroke fonts from version 6.
Additionally, the output has been different between screen and plotting,
leading to offset text in plotted output relative to the text shown on
screen.
This introduces a fudge factor in FONT::getLinePositions to correct the
offset in the plotting output relative to v6.
This also changes the SCH_PAINTER and PCB_PAINTER to correct the
relative offsets between GAL and PLOTTER classes. The source of these
offsets is atm unclear.
Fixes https://gitlab.com/kicad/code/kicad/issues/14755
2023-05-17 13:33:49 -07:00
Seth Hillbrand
72267cf9b0
Adjust stroke font output to match v6 output
...
Many minor tweaks were added that changed the output of the stroke font
from v5/v6. These offsets changed the gerber output expected. This
reverts the changes to something much closer to the v6 output. It is
not pixel-perfect but gets very close on most texts.
Fixes https://gitlab.com/kicad/code/kicad/issues/14609
2023-05-12 12:40:41 -07:00
Jeff Young
995388fb71
Rewrite linebreaking algorithm.
...
Previous version was overly simplistic to deal correctly
with multiple spaces or textruns not separated by spaces.
Fixes https://gitlab.com/kicad/code/kicad/issues/14683
2023-05-05 22:32:40 +01:00
Jeff Young
7e5fedef6a
Markup fixes.
...
1) allow escape sequences inside markup sequences
2) keep overbar when inside nested markup
3) always place overbar at full height, not sub/superscript height
Fixes https://gitlab.com/kicad/code/kicad/issues/14553
Fixes https://gitlab.com/kicad/code/kicad/issues/13449
2023-04-17 17:56:54 +01:00
Jon Evans
7b3fd2113c
Improve sheet rendering performance
...
- Cache font markup parsing
- Cache SCH_SYMBOL::GetOrientation
- Don't construct new strings each time in GetDefaultFieldName
2023-03-05 17:41:46 -05:00
Jeff Young
6d73d9a08e
Split another couple of hairs in the never-ending "how big is a font".
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13009
Fixes https://gitlab.com/kicad/code/kicad/issues/13115
2022-12-12 17:37:17 +00:00
Jeff Young
740e193871
Increase bounding box of stroke text and the leader box of all text.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13009
2022-11-27 15:27:30 +00:00
dsa-t
bd8b737c44
GAL: Do better job at reserving vertices.
2022-09-14 16:07:47 +00:00
Jeff Young
560dc7d2b6
Underline for hypertext rollovers.
2022-08-27 23:58:13 +01:00
jean-pierre charras
993c446fdf
Fix some warnings detected by PVS-STUDIO (most are not used vars)
2022-07-25 18:23:52 +02:00
Jeff Young
47e002a33d
Add font to status bar for text objects.
2022-04-26 18:52:53 +01:00
Jeff Young
659e61355c
Adjust text spacing a bit more so 6.0 boards are more likely to pass DRC.
2022-03-30 16:32:24 +01:00
Jeff Young
4424865577
Make sure spaces at start of line get accounted for.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/11276
2022-03-30 16:32:23 +01:00
Jeff Young
6a3c5b6e0e
Adjust bottom- and centre-aligned linespacing to better match 6.0.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/11269
2022-03-29 19:31:02 +01:00
Jeff Young
98f4b1d16c
Make gcc (or linux?) happy.
2022-02-26 22:56:10 +00:00
Jeff Young
941d7f94ad
Use safer UTF8 conversion routines to prevent crashes.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/10982
2022-02-26 19:03:00 +00:00
Ola Rinta-Koski
44c93e48e9
Markup parser fix: subscript/superscript/overbar handling
2022-02-08 18:50:53 +00:00
Jeff Young
b9eb3e9b05
Be more explicit about string conversions.
2022-02-03 23:07:41 +00:00
Jeff Young
5739505aa3
TextBoxes for PCBNew.
2022-01-31 20:00:47 +00:00
Roberto Fernandez Bautista
8393e02524
text boxes: remember to add the original newline characters back in!
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/10665
2022-01-30 14:35:55 +00:00
Roberto Fernandez Bautista
6cf170c2c9
Text boxes: Return full word even if it doesn't fit in the column width
...
It does mean that the text now can be outside the text box, but this is
better than an infinite loop.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/10668
2022-01-30 14:35:55 +00:00
Marek Roszko
7ec326c003
Fix compilation error
2022-01-28 20:19:42 -05:00
Jeff Young
c6a8100d46
Schematic and symbol text boxes.
...
Also fixes some plot bugs with arcs.
Also moves polygonization of arcs (when required) in plotting code
from 5 degrees to calculated based on ARC_HIGH_DEF.
Fixes https://gitlab.com/kicad/code/kicad/issues/5017
2022-01-28 21:38:15 +00:00
Jeff Young
e048e51f5d
Improve SNR of EDA_ANGLE stuff.
2022-01-14 16:08:18 +00:00
jean-pierre charras
d0f2c20235
Define our kicad font name only once, and do not translate it.
...
Especially using a translated name breaks kicad config and files because
in non English languages both translated and not translated names were used in code.
2022-01-13 14:32:55 +01:00
Jeff Young
8f7d2dd06a
More VECTOR2D -> VECTOR2I and wxPoint cleanup.
2022-01-11 14:20:14 +00:00
Jeff Young
76368af7b9
Font cleanup and bug fixes.
2022-01-09 18:33:53 +00:00
Jeff Young
a4349ae638
Cleanup and error reporting for fonts.
2022-01-09 11:34:20 +00:00
Jeff Young
c5eb77d765
Fix second case of font name mismatch.
2022-01-08 20:11:37 +00:00
Marek Roszko
263513b8cf
Fix default font name check
2022-01-08 14:37:50 -05:00
Jeff Young
04c76f10e9
Performance enhancements for fonts.
2022-01-08 16:47:45 +00:00
Jeff Young
438c63f587
Fix outline font boundingbox issues.
2022-01-08 16:47:45 +00:00
Jeff Young
eb58d7e44c
Text glyph caches and bug fixes.
...
1) Unify metrics between stroke and outline fonts
2) Unify handling of rotation and mirroring
3) Bug fixes in collision handling
4) Use of VECTOR2I (instead of VECTOR2D) for world-coordinates
5) Generate outline font overbar with rounded ends and fix rotation
bugs
6) Generate wxEVT_CHOICE events from FONT_CHOICE::SetFontSelection
7) Change text-item PNS SOLIDs to use compound shapes
2022-01-08 16:47:45 +00:00
Jeff Young
383beeba8e
Fix font name that shouldn't be translated.
2022-01-08 16:47:45 +00:00
Ola Rinta-Koski
9b406c1da4
Outline font support.
2022-01-08 16:47:45 +00:00
Marek Roszko
726d873c53
Tear down the wxPoint trigo helpers
2022-01-04 21:23:11 -05:00
Jeff Young
cbd665db7b
Remove markup_parser from headers so PEGTL doesn't leak windows.h.
2022-01-04 12:20:18 +00:00
Marek Roszko
38a25fbc4d
Fix windows compile error
...
pegtl.hpp is dumb and leaks windows.h which then causes #define conflicts
2022-01-04 00:49:29 -05:00
Jeff Young
8e4a4306c7
Go back to using inter-character spacing from the stroke font.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/1078
2022-01-04 00:46:08 +00:00
jean-pierre charras
c4af66f6d3
Fix compil issues on Windows+msys2
...
Probably some fixes also on other platforms
2022-01-02 18:32:39 +01:00
Jeff Young
89c0f8e297
Move to new font engine.
2022-01-02 14:57:03 +00:00
Jeff Young
ccb94fd1a7
APIs for passing KIFONT::FONT pointers around.
...
Also some clean-up and bug fixes.
2021-12-29 17:32:19 +00:00