Commit graph

180 commits

Author SHA1 Message Date
Kevin David
500e3e179e
SourceCodePro bold/italic: use .woff for encoded fonts instead of .ttf
Sourced from: https://github.com/adobe-fonts/source-code-pro/releases/tag/2.038R-ro%2F1.058R-it%2F1.018R-VAR

Translated with the following commands:
```
base64 -i ~/Downloads/WOFF-source-code-pro-2.038R-ro-1.058R-it/TTF/SourceCodePro-It.ttf.woff -o ./d2renderers/d2fonts/encoded/SourceCodePro-Italic.txt
base64 -i ~/Downloads/WOFF-source-code-pro-2.038R-ro-1.058R-it/TTF/SourceCodePro-Bold.ttf.woff -o ./d2renderers/d2fonts/encoded/SourceCodePro-Bold.txt
```

I used the `.ttf.woff` files because that seemed "closer" to the original `.ttf` files included, but I'm not sure if that's correct.
2023-01-24 21:20:16 -05:00
Kevin David
bd7e18395e
d2renderers: d2fonts: add bold + italic styles for Source Code Pro
👋 I've been playing around with changing the entire font of a diagram to something fixed-width, starting by hand-editing `main.go`

I noticed that if I switched over the family to Source Code Pro, d2 crashed with the following stack:

```
[23:38:30] info: compiling GetUniqueColumnName-fix.d2...
panic: runtime error: invalid memory address or nil pointer dereference
[signal SIGSEGV: segmentation violation code=0x1 addr=0x1c4 pc=0x16b562c]

goroutine 43 [running]:
github.com/golang/freetype/truetype.(*Font).Bounds(0xc000669670?, 0x0?)
        /Users/kevin/dev/go/pkg/mod/github.com/golang/freetype@v0.0.0-20170609003504-e2365dfdc4a0/truetype/truetype.go:378 +0xc
github.com/golang/freetype/truetype.NewFace(0x0, 0xc0003276c0)
        /Users/kevin/dev/go/pkg/mod/github.com/golang/freetype@v0.0.0-20170609003504-e2365dfdc4a0/truetype/face.go:199 +0x325
oss.terrastruct.com/d2/lib/textmeasure.(*Ruler).addFontSize(0xc00037c000, {{0x1bb9a34, 0xd}, {0x1b82732, 0x4}, 0x1f})
        /Users/kevin/dev/d2/lib/textmeasure/textmeasure.go:141 +0x112
oss.terrastruct.com/d2/lib/textmeasure.(*Ruler).MeasurePrecise(0xc00037c000, {{0x1bb9a34, 0xd}, {0x1b82732, 0x4}, 0x1f}, {0xc000582100, 0x1f})
        /Users/kevin/dev/d2/lib/textmeasure/textmeasure.go:157 +0xde
oss.terrastruct.com/d2/lib/textmeasure.(*Ruler).Measure(...)
        /Users/kevin/dev/d2/lib/textmeasure/textmeasure.go:151
oss.terrastruct.com/d2/d2graph.GetTextDimensions({0x0, 0x0, 0xc000657860?}, 0xc00037c000, 0xc000620280, 0xc000092020)
```

Which I tracked down to these missing styles, which appear to matter even if they aren't used.

I acquired the `ttf` files from https://fonts.google.com/specimen/Source+Code+Pro

I created the encoded fonts on my Mac with:
```
base64 -i SourceCodePro-Italic.ttf -o ../encoded/SourceCodePro-Italic.txt
```

Hopefully this is correct! Open to all feedback, especially since I think this is the first change I've ever made to a go program :)

Signed-off-by: Kevin David <kevin-david@github.com>
2023-01-23 00:35:19 -05:00
Alexander Wang
a1bebb8b23
Merge pull request #634 from Paracelsus-Rose/master
d2renderer: #579 Circle Arrowhead
2023-01-19 17:56:36 -08:00
Alexander Wang
b41d8cdbc7
tests 2023-01-19 12:44:53 -08:00
Alexander Wang
2966d393ae
fix bounding box for multiple 2023-01-19 12:39:12 -08:00
Alexander Wang
2d17947a44
account for 3d offset in bounding box 2023-01-19 11:51:30 -08:00
Paracelsus-Rose
fd43527da0
Merge branch 'master' of github.com:terrastruct/d2 into terrastruct-master 2023-01-19 14:38:24 -05:00
Paracelsus-Rose
100927e7dc
Seems right. Thanks Gavin. 2023-01-19 14:19:29 -05:00
Alexander Wang
c84dcbacf5
tests 2023-01-19 10:58:46 -08:00
Alexander Wang
74b54f3f8a
update 2023-01-19 00:52:10 -08:00
Alexander Wang
d832fdd6af
fix 2023-01-19 00:46:30 -08:00
Alexander Wang
7651aedb8c
fix opacity for labels 2023-01-19 00:26:00 -08:00
Gavin Nishizawa
66e912698c
update tests 2023-01-15 23:31:06 -08:00
Paracelsus-Rose
3b90f3502d
Numbers copied from TS but not working 2023-01-15 14:55:12 -05:00
Paracelsus-Rose
5cfc71f271
Tried making values equal to TS project. 2023-01-15 01:36:58 -05:00
Gavin Nishizawa
7e2d722f50
cf one required seed 2023-01-13 19:20:05 -08:00
Gavin Nishizawa
413acead61
move cf closer to match non-sketch positions 2023-01-13 19:15:24 -08:00
Gavin Nishizawa
967dd21c27
move cf one line away from circle 2023-01-13 18:29:11 -08:00
Gavin Nishizawa
a56db93723
bigger cf one circle 2023-01-13 18:20:22 -08:00
Gavin Nishizawa
b49fbc75e3
update sketch arrowheads test 2023-01-13 18:16:53 -08:00
Gavin Nishizawa
005ceec44f
refactor source/target adjustment and pass to sketch arrowheads 2023-01-13 18:13:28 -08:00
Gavin Nishizawa
a599875931
update tests 2023-01-13 18:13:28 -08:00
Gavin Nishizawa
ebdc3b029c
fixed precision floats from rough 2023-01-13 18:13:28 -08:00
Gavin Nishizawa
88c72c96f4
update tests 2023-01-13 18:13:28 -08:00
Gavin Nishizawa
224af99efd
add sketch versions of arrowheads 2023-01-13 18:13:28 -08:00
Gavin Nishizawa
62d153f798
update tests 2023-01-13 18:13:28 -08:00
Gavin Nishizawa
af2a032a9e
render sketch arrowheads separately 2023-01-13 18:13:28 -08:00
Gavin Nishizawa
033a005eea
add arrowheads sketch test 2023-01-13 18:13:14 -08:00
Alexander Wang
b9c4678302
tooltip 2023-01-13 08:16:18 -08:00
Alexander Wang
a6b34634cd
refactor 2023-01-12 11:22:53 -08:00
Alexander Wang
48c9cc7929
sketch 2023-01-12 11:20:18 -08:00
Alexander Wang
60523f0446
works 2023-01-12 11:06:36 -08:00
Alexander Wang
9c1e7eeb73
test 2023-01-12 10:51:26 -08:00
Alexander Wang
cc0a048757
test 2023-01-12 10:29:13 -08:00
Alexander Wang
6c852cf792
fallback lexer if none found 2023-01-11 23:53:02 -08:00
Paracelsus-Rose
75c0dee349
Circles Rendering closer to border. Still not perfect. 2023-01-10 19:16:02 -05:00
Paracelsus-Rose
f21226bfa7
Removed Offset and refactored 2023-01-10 15:30:20 -05:00
Paracelsus-Rose
fc15982b93
Requested Changes 2023-01-10 12:48:54 -05:00
Paracelsus-Rose
d46ce55c2f
Update d2svg.go 2023-01-10 12:08:26 -05:00
Paracelsus-Rose
2c59b1c163
Formatting 2023-01-09 23:48:26 -05:00
Paracelsus-Rose
b0d3b9d3fd
Init 2023-01-09 22:44:45 -05:00
Alexander Wang
2a80a45bf6
update tests 2023-01-06 12:30:16 -08:00
Bernard Xie
35c1a1633f
add script to tests 2023-01-03 16:42:39 -08:00
Bernard Xie
510e7be593
Add comment 2023-01-03 15:32:31 -08:00
Bernard Xie
dfd66232fc
add d2-svg id on generation 2023-01-03 15:01:21 -08:00
Bernard Xie
070b50a6e2
add check to only run script on root svg 2023-01-03 14:44:36 -08:00
Bernard Xie
643aa13de9
add fit to screen to exported svg 2023-01-03 11:27:15 -08:00
Alexander Wang
be6c3a1eff
Merge pull request #578 from martinjirku/d2-384-crows-feet-arrowhead
d2renderer: #384 The arrowhead crow feet variants
2023-01-01 13:47:28 -08:00
harryjrk
e3047b6aba
fix curved connections issues 2023-01-01 11:35:21 +01:00
Alexander Wang
405fdbe57f
don't add appendix seperator without appendix 2022-12-31 12:17:05 -08:00