Pierre Curto
abd293fae6
text, vector: fix typos and redundant casts ( #2537 )
2023-01-13 03:28:41 +09:00
Hajime Hoshi
6f4cb04ebb
text: make CacheGlyphs create all the sub-pixel variations ( #2530 )
...
Before this change, CacheGlyphs created only necessary glyphs wihtout
considering variations by sub-pixels in X direction. This was sometimes
unexpected when a user might want to prepare glyph cache with a string
including all the letters, instead of actual texts.
This change makes CacheGlyphs create all the sub-pixel variations of
the given runes.
Updates #2469
Closes #2528
2023-01-07 23:22:55 +09:00
Hajime Hoshi
a042af98b1
text: improve rendering quality with HintingVertical
...
When HintingVertical is used, the interval between two glyphs is not
quantized (i.e. not a whole pixel). The text package didn't consider
this situation.
This change improves the quality by using more various glyph images
with 1/4 pixels granularity in vertical direction.
Closes #2469
2022-11-25 16:45:37 +09:00
Hajime Hoshi
56788cf8d9
text: give offest to getGlyphImage
...
Now getGlyphImage can focus on rendering and doesn't have to calculate
offsets.
2022-11-25 16:15:16 +09:00
Hajime Hoshi
b9b78b5b44
text: update comments
2022-11-24 18:22:32 +09:00
Hajime Hoshi
003474152c
text: add comments about positioning
2022-11-23 22:35:02 +09:00
Hajime Hoshi
156c34a316
ebiten: separate a package for ColorM: colorm
...
Closes #2171
2022-11-08 23:50:04 +09:00
Hajime Hoshi
2610c148e4
text: typo
2022-09-14 14:41:22 +09:00
Hajime Hoshi
f923250a65
ebiten: typo
2022-08-21 20:02:53 +09:00
Hajime Hoshi
33da481d60
text: refactoring
...
Updates #1992
2022-08-13 00:28:41 +09:00
Hajime Hoshi
0217ed0544
ebiten: add WritePixels replacing ReplacePixels
...
Closes #2236
2022-08-08 03:50:27 +09:00
mattn
2bacecca24
fix typos ( #2227 )
2022-08-03 22:40:39 +09:00
mattn
3cd0daac67
go generate ./... with Go 1.19 ( #2228 )
2022-08-03 20:48:02 +09:00
Hajime Hoshi
04d1dbb263
text: update comments
...
Updates #1992
2022-04-04 02:55:15 +09:00
Hajime Hoshi
e05cfdb00a
text: update comments about BoundsString
...
The way in which space characters are treated is exactly same as
golang.org/x/image/font's `BoundsString`.
Updates #1992
2022-04-04 01:56:32 +09:00
Hajime Hoshi
98b8fbe2df
text: English
...
Updates #2047
2022-04-02 19:00:13 +09:00
Hajime Hoshi
7cee60f00f
text: add a comment about Glyph.Image
...
Updates #2047
2022-04-02 18:59:25 +09:00
Hajime Hoshi
e687865c8c
ebiten: add ColorM.ScaleWithColor
...
Updates #1944
2022-01-10 17:36:46 +09:00
Hajime Hoshi
732b125349
text: Add AppendGlyphs and Glyphs
...
Closes #1767
Closes #1871
2021-11-12 02:31:53 +09:00
Hajime Hoshi
3eb444f211
text: Refactoring
2021-11-12 00:17:51 +09:00
r3vit
57c45a13e4
Remove dot imports from tests - Remove dot imports ( #1837 )
...
Closes #1824
2021-10-02 19:58:48 +09:00
Hajime Hoshi
4509f2aee4
text: Add FaceWithLineHeight
...
Closes #1760
2021-09-12 22:56:14 +09:00
nanoslayer
e52a933506
text: Fix nil pointer dereference in drawGlyph ( #1732 )
...
drawGlyph can panic when provided with a nil *ebiten.DrawImageOptions
reference. Check that the pointer is not nil before dereferencing.
2021-07-28 03:20:35 +09:00
Hajime Hoshi
6efe7cbb8b
text: Fix comments
2021-07-27 17:38:34 +09:00
Hajime Hoshi
656d9dccc0
text: Add DrawWithOptions
...
Closes #1461
2021-07-27 17:36:21 +09:00
Hajime Hoshi
040fcd930f
Revert "Revert 2 commits using ColorM cache"
...
This reverts commit dd7a8bc497
.
Reason: DrawTriangles worked fine for the reporter's purpose.
Updates #1655
2021-05-30 15:17:11 +09:00
Hajime Hoshi
dd7a8bc497
Revert 2 commits using ColorM cache
...
This reverts commit 87c8625692
.
This reverts commit a6dd6196b4
.
Reason: Performance regression (#1655 )
Closes #1655
2021-05-30 03:10:00 +09:00
Hajime Hoshi
a716edc713
text: Add explanation about cache limit
2021-04-27 02:36:33 +09:00
Hajime Hoshi
3f97386d8e
text: Improve the comment
2021-04-27 02:28:52 +09:00
Hajime Hoshi
cdf700ed84
text: Improve the comments
2021-04-27 02:20:10 +09:00
Hajime Hoshi
c5c12cbf68
text: Improve the comment
2021-04-27 01:59:39 +09:00
Hajime Hoshi
4f6ad4e60b
text: Update comments
2021-04-24 03:27:56 +09:00
Hajime Hoshi
a6dd6196b4
internal/affine: Cache scaling ColorM for heuristic optimization
...
Closes #1474
2021-01-28 02:23:22 +09:00
Hajime Hoshi
c8454bdfed
text: Integrate emptyGlyphs and glyphImageCache to reduce runtine.mapaccess2
2021-01-05 13:12:46 +09:00
Hajime Hoshi
927c477d2b
text: Change getGlyphImages to getGlyphImage to avoid allocating slices
2021-01-05 12:21:41 +09:00
Hajime Hoshi
cd779b678a
text: Add comments
2020-11-03 20:35:55 +09:00
Hajime Hoshi
c70ebdc697
text: Misspelling
2020-11-03 19:54:51 +09:00
Hajime Hoshi
2d9e2a0483
text: Add CacheGlyphs
...
Fixes #1413
2020-11-03 17:12:51 +09:00
Hajime Hoshi
ec6821b1e1
text: Refactoring
2020-11-03 16:36:10 +09:00
Hajime Hoshi
5ec05ed79d
text: Cleaning up the cache after the rendering finishes
...
Before this fix, cleaning up the cache happens during making glyph
images, and this can be problematic when the text includes more
glyphs than the cache limit.
After this fix, Draw allows to have more glyph cache than the limit
temporarily.
2020-11-03 15:58:35 +09:00
Hajime Hoshi
a046700ae1
text: Remove the optimization for GopherJS
2020-10-07 01:13:31 +09:00
Hajime Hoshi
1b816eb249
ebiten: Remove the error returning value from NewImageFromImage
...
Updates #1380
2020-10-06 01:03:33 +09:00
Hajime Hoshi
c6053bcf14
ebiten: Remove the error returning value from NewImage
...
Updates #1380
2020-10-06 00:48:56 +09:00
Hajime Hoshi
54da0d9763
ebiten: Remove the returning value from (*Image).DrawImage
...
Updates #1380
2020-10-06 00:21:17 +09:00
Hajime Hoshi
fe97e7b0a5
ebiten: Remove the filter argument from NewImage and NewImageFromImage
...
Updates #503
2020-10-05 01:40:44 +09:00
Hajime Hoshi
bf515bb594
Update version to v2.0.0-alpha
2020-10-04 04:30:40 +09:00
Hajime Hoshi
c08f47f445
text: Bug fix: Draw didn't work correctly with non-integer glyph bounds
...
Fixes #1377
2020-10-03 23:04:50 +09:00
Hajime Hoshi
c1be079ae9
text: Bug fix: Treat negative kernings correctly
...
Fixes #1378
2020-10-03 20:02:29 +09:00
Hajime Hoshi
f189404370
text: Update bitmapfont to v2
2020-09-23 22:59:46 +09:00
Hajime Hoshi
0699ca193c
text: Improve comments
2020-07-30 00:54:57 +09:00
Hajime Hoshi
481c160c2a
text: Replace MeasureString with BoundString
...
Fixes #1272
2020-07-30 00:51:10 +09:00
Hajime Hoshi
bb3a4cda22
text: Fix comments
2020-07-30 00:21:51 +09:00
Hajime Hoshi
35d1c8ae7a
text: Improve documentations
...
Updates #1271
2020-07-30 00:02:35 +09:00
Hajime Hoshi
911750c4a6
text: Add comments
2020-07-20 23:47:46 +09:00
Hajime Hoshi
780465b702
ebitenutil: Cache ColorM and reuse them at DrawRect
...
Fixes #1221
2020-06-29 22:35:28 +09:00
Hajime Hoshi
3d7c102472
shaderir: Add func params
2020-05-13 23:31:17 +09:00
Peter Wunder
abc2801ff1
text: Add MeasureString method ( #1152 )
...
(sorta-kinda continuation from #1151 )
This PR adds a MeasureString(string, font.Face) method next to the Draw() method in Ebiten's
text package. It should work with any supported font.Face, even "non-standard" faces like
those produced by packages like https://github.com/AndreKR/multiface . MeasureString's code
was adapted from the Draw method, so it's just as reliable.
2020-05-13 18:03:39 +09:00
Hajime Hoshi
47d5c3b5e1
Add testing package
2020-04-01 18:10:48 +09:00
Zachary Burkett
bb60818e8d
Add linebreak support to text.Draw ( #1075 )
...
Closes #1074
2020-02-12 23:15:57 +09:00
Hajime Hoshi
4a9a7f936d
Make go vet a little happier on macOS
...
Updates #889
2019-07-22 20:16:22 +09:00
Hajime Hoshi
710f56531f
graphics: Experimental: (*image.Image).SubImage
...
Fixes #722
2018-10-28 02:19:14 +09:00
Hajime Hoshi
fe4f12fa6f
text: Fix style
2018-08-27 23:42:17 +09:00
Hajime Hoshi
1c088dc8b6
text: Use bitmapfont package for testing
2018-08-19 20:16:57 +09:00
Hajime Hoshi
d752408da3
Fix comments not to use the term 'this function'
2018-07-15 01:04:46 +09:00
Hajime Hoshi
92631e64ed
Remove internal/sync
...
nosync package for GopherJS is problematic since nosync's mutex
assumes that Lock call is never duplicated, which is not true in
actual applications.
See also #603 .
2018-05-09 23:41:08 +09:00
Hajime Hoshi
81dfc13b21
text: Remove duplicated glyphs
2018-04-28 22:50:45 +09:00
Hajime Hoshi
be3d529767
text: Bug fix: one image should be used for multiple glyphs ( #535 )
2018-04-26 02:41:01 +09:00
Hajime Hoshi
6caebc2310
text: Avoid creating 0-sized image
2018-04-26 02:11:45 +09:00
Hajime Hoshi
059bab0b13
text: Optimization: reduce ColorM calc
2018-04-23 22:42:38 +09:00
Hajime Hoshi
5257e6f9a7
text: Unify draw calls for multiple runes ( #535 )
2018-04-23 22:15:45 +09:00
Hajime Hoshi
9902497e3d
test: Use flock to make tests exclusive
...
Fixes #575
2018-04-07 00:59:52 +09:00
Hajime Hoshi
9092ec083d
text: Remove uniqFace for performance
...
Fixes #554 . Add comments for #498 .
2018-03-15 23:00:23 +09:00
Hajime Hoshi
c581219bb5
text: Utilize shared textures
...
Fixes #529
2018-03-04 02:38:48 +09:00
Hajime Hoshi
3736fd3cfc
text: Add text_test.go
2018-02-24 04:55:15 +09:00
Hajime Hoshi
c79b795e84
text: Cache GlyphAdvance result
2018-02-18 21:38:48 +09:00
Hajime Hoshi
31ae457a8c
text: Refactoring
2018-02-12 22:24:25 +09:00
Hajime Hoshi
57dd7db893
text: Use uint32 for map keys instead of color.Color interface
2018-02-12 19:32:21 +09:00
Hajime Hoshi
c4f02ac07c
text: Limit color matrices cache size
2018-02-12 04:07:59 +09:00
Hajime Hoshi
12cef4d27e
text: Cache color matrices for performance
2018-02-12 03:33:11 +09:00
Hajime Hoshi
9118772fd1
text: Optimization for browsers
2018-02-12 02:57:51 +09:00
Hajime Hoshi
950219f5b6
text: Remove font struct
2018-02-12 00:57:01 +09:00
Hajime Hoshi
8c1a8b64eb
text: Avoid copying structs for browsers
2018-02-12 00:42:35 +09:00
Hajime Hoshi
da51377cc5
text: Optimize speed: Don't use a struct for map keys
...
Especially for browsers
2018-02-12 00:25:21 +09:00
Hajime Hoshi
a5f9382878
text: Refactoring
2018-02-11 16:17:59 +09:00
Hajime Hoshi
05671e784b
text: Reuse font.Face instances if they are DeepEqual-ly same ( #498 )
2018-02-11 16:05:31 +09:00
Hajime Hoshi
103cd63b32
text: Now package text is stable
2018-02-04 17:49:32 +09:00
Hajime Hoshi
3cf5ca4df3
doc: Improve comments
2017-10-08 03:14:33 +09:00
Hajime Hoshi
d1333e92a5
doc: Improve comments
2017-10-01 20:48:28 +09:00
Hajime Hoshi
631264fce1
Add 'internal/math' package
2017-08-06 20:05:14 +09:00
Hajime Hoshi
064b359c78
text: Bug fix: space was not used correctly
2017-07-21 00:44:37 +09:00
Hajime Hoshi
b58d8bb996
text: Swap arguments face and text
2017-07-20 02:20:15 +09:00
Hajime Hoshi
94c4a76dcf
text: Refactoring: create glyph object in appendGlyph
2017-07-19 02:57:49 +09:00
Hajime Hoshi
28934c4fd2
text: Refactoring: Rename atlas.size -> atlas.glyphSize
2017-07-19 02:52:38 +09:00
Hajime Hoshi
842c535c01
text: Refactoring: Remove some members from atlas
2017-07-19 02:50:55 +09:00
Hajime Hoshi
fd57753089
text: Refactoring: Reduce a global variable
2017-07-18 10:49:12 +09:00
Hajime Hoshi
86296ea89b
text: Refactoring
2017-07-18 02:16:39 +09:00
Hajime Hoshi
9efc794547
text: Don't use Ceil as much as possible for accuracy
2017-07-17 17:00:51 +09:00
Hajime Hoshi
198ffa9ef8
text: doc
2017-07-17 16:17:01 +09:00
Hajime Hoshi
20a43a88e8
text: Remove 'lineHeight' argument
2017-07-17 06:42:48 +09:00
Hajime Hoshi
e0d0f477dc
text: Fix comment
2017-07-17 06:39:06 +09:00
Hajime Hoshi
f64ac89d56
text: doc
2017-07-17 02:15:00 +09:00
Hajime Hoshi
b42f417e3b
text: Update doc
2017-07-17 02:13:30 +09:00
Hajime Hoshi
9908fe0d31
text: Refactoring
2017-07-17 01:54:30 +09:00
Hajime Hoshi
1e84e21857
Add 'text' package ( #363 )
2017-07-17 01:54:24 +09:00