ol 7.0.0-dev.1659039074785 → 7.0.0-dev.1659140909928
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/format/KML.d.ts.map +1 -1
- package/format/KML.js +1 -0
- package/layer/Graticule.d.ts +1 -1
- package/layer/Graticule.d.ts.map +1 -1
- package/layer/Graticule.js +21 -2
- package/package.json +1 -1
- package/render/canvas/Executor.js +1 -1
- package/render/canvas/Immediate.d.ts.map +1 -1
- package/render/canvas/Immediate.js +6 -12
- package/render/canvas.d.ts +11 -11
- package/render/canvas.d.ts.map +1 -1
- package/render/canvas.js +6 -6
- package/style/IconImage.d.ts +9 -0
- package/style/IconImage.d.ts.map +1 -1
- package/style/IconImage.js +39 -16
- package/style/Text.d.ts +32 -31
- package/style/Text.d.ts.map +1 -1
- package/style/Text.js +20 -16
package/format/KML.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"KML.d.ts","sourceRoot":"","sources":["KML.js"],"names":[],"mappings":"AAqMA;;;GAGG;AACH,uCAFY,IAAI,GAAC,IAAI,CAIpB;AAgCD;;;GAGG;AACH,wCAFY,OAAO,mBAAmB,EAAE,OAAO,GAAC,IAAI,CAInD;AAYD;;;GAGG;AACH,yCAFY,MAAM,GAAC,IAAI,CAItB;AAYD;;;GAGG;AACH,uCAFY,IAAI,GAAC,IAAI,CAIpB;AAOD;;;GAGG;AACH,mCAFY,KAAK,GAAC,IAAI,CAIrB;AAOD;;;GAGG;AACH,wCAFY,MAAM,KAAK,CAAC,GAAC,IAAI,CAI5B;
|
|
1
|
+
{"version":3,"file":"KML.d.ts","sourceRoot":"","sources":["KML.js"],"names":[],"mappings":"AAqMA;;;GAGG;AACH,uCAFY,IAAI,GAAC,IAAI,CAIpB;AAgCD;;;GAGG;AACH,wCAFY,OAAO,mBAAmB,EAAE,OAAO,GAAC,IAAI,CAInD;AAYD;;;GAGG;AACH,yCAFY,MAAM,GAAC,IAAI,CAItB;AAYD;;;GAGG;AACH,uCAFY,IAAI,GAAC,IAAI,CAIpB;AAOD;;;GAGG;AACH,mCAFY,KAAK,GAAC,IAAI,CAIrB;AAOD;;;GAGG;AACH,wCAFY,MAAM,KAAK,CAAC,GAAC,IAAI,CAI5B;AA+xBD;;;GAGG;AACH,0CAHW,IAAI,GACH,MAAM,MAAM,CAAC,GAAC,SAAS,CAsBlC;;;;;;;qCAtuBqB,MAAM,KAAE,MAAM;;;;;OAzUtB,MAAM;;;;YACN,OAAO,kBAAkB,EAAE,eAAe;;;;OAC1C,MAAM;;;;YACN,OAAO,kBAAkB,EAAE,eAAe;;;;;;;;;;iBAM1C,MAAM,MAAM,MAAM,CAAC,CAAC;;;;WACpB,MAAM,MAAM,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA4U3B;;;;;;;;;;;GAWG;AAEH;;;;;;;;;;;;;;;GAeG;AACH;IACE;;OAEG;IACH,+CA8DC;IArDC;;OAEG;IACH,gBAFU,OAAO,uBAAuB,EAAE,OAAO,CAED;IAEhD;;;OAGG;IACH,sBAEuB;IAEvB;;;OAGG;IACH,uBACoE;IAEpE;;OAEG;IACH,cAFU,OAAO,CAG+C;IAEhE;;;OAGG;IACH,sBAAuB;IAEvB;;;OAGG;IACH,wBACsE;IAEtE;;OAEG;IACH,cAFU,IAAI,GAAC,MAAM,CAGkD;IAEvE;;OAEG;IACH,kBAFU,eAAe,CAIC;IAK5B;;;;;OAKG;IACH,8BAiBC;IAED;;;;;OAKG;IACH,uBA8CC;IAED;;;;OAIG;IACH,yBAmBC;IAED;;;;OAIG;IACH,4BAqBC;IAiED;;;;;;OAMG;IACH,iBAJW,QAAQ,GAAC,OAAO,GAAC,MAAM,GACtB,MAAM,GAAC,SAAS,CAc3B;IAED;;;OAGG;IACH,0BAHW,QAAQ,GACP,MAAM,GAAC,SAAS,CAY3B;IAED;;;OAGG;IACH,uBAHW,OAAO,GACN,MAAM,GAAC,SAAS,CAwB3B;IAED;;;;;;OAMG;IACH,yBAJW,QAAQ,GAAC,OAAO,GAAC,MAAM,GACtB,UAAa,CAoBxB;IAED;;;OAGG;IACH,kCAHW,QAAQ,GACP,UAAa,CAaxB;IAED;;;OAGG;IACH,+BAHW,OAAO,GACN,UAAa,CAuBxB;IAED;;;;;;OAMG;IACH,mBAJW,QAAQ,GAAC,OAAO,GAAC,MAAM,GACtB,UAAa,CAiBxB;IAED;;;OAGG;IACH,4BAHW,QAAQ,GACP,UAAa,CAUxB;IAED;;;;OAIG;IACH,yBAJW,OAAO,GACN,UAAa,CAqBxB;CA8CF"}
|
package/format/KML.js
CHANGED
|
@@ -937,6 +937,7 @@ class KML extends XMLFeature {
|
|
|
937
937
|
*/
|
|
938
938
|
function createNameStyleFunction(foundStyle, name) {
|
|
939
939
|
const textOffset = [0, 0];
|
|
940
|
+
/** @type {CanvasTextAlign} */
|
|
940
941
|
let textAlign = 'start';
|
|
941
942
|
const imageStyle = foundStyle.getImage();
|
|
942
943
|
if (imageStyle) {
|
package/layer/Graticule.d.ts
CHANGED
|
@@ -260,7 +260,7 @@ export type Options = {
|
|
|
260
260
|
* Note that the default's `textAlign` configuration will not work well for
|
|
261
261
|
* `latLabelPosition` configurations that position labels close to the left of
|
|
262
262
|
* the viewport.
|
|
263
|
-
* @property {Array<number>} [intervals=[90, 45, 30, 20, 10, 5, 2, 1,
|
|
263
|
+
* @property {Array<number>} [intervals=[90, 45, 30, 20, 10, 5, 2, 1, 30/60, 20/60, 10/60, 5/60, 2/60, 1/60, 30/3600, 20/3600, 10/3600, 5/3600, 2/3600, 1/3600]]
|
|
264
264
|
* Intervals (in degrees) for the graticule. Example to limit graticules to 30 and 10 degrees intervals:
|
|
265
265
|
* ```js
|
|
266
266
|
* [30, 10]
|
package/layer/Graticule.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Graticule.d.ts","sourceRoot":"","sources":["Graticule.js"],"names":[],"mappings":";;;;;
|
|
1
|
+
{"version":3,"file":"Graticule.d.ts","sourceRoot":"","sources":["Graticule.js"],"names":[],"mappings":";;;;;UA2Ec,KAAK;;;;UACL,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;gCAuCG,MAAM,KAAE,MAAM;;;;;;;gCAId,MAAM,KAAE,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA9CrC;;;;GAIG;AAEH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6FG;AAEH;;;;;;;;GAQG;AACH;IACE;;OAEG;IACH,+CAsUC;IA7SC;;OAEG;IACH,aAFU,OAAO,uBAAuB,EAAE,OAAO,CAE1B;IAEvB;;;OAGG;IACH,gBAAuB;IAEvB;;;OAGG;IACH,gBAAuB;IAEvB;;;OAGG;IACH,gBAAwB;IAExB;;;OAGG;IACH,gBAAwB;IAExB;;;OAGG;IACH,cAAqB;IAErB;;;OAGG;IACH,cAAqB;IAErB;;;OAGG;IACH,cAAsB;IAEtB;;;OAGG;IACH,cAAsB;IAEtB;;;OAGG;IACH,oBAC6D;IAE7D;;;OAGG;IACH,kBAAwE;IAExE;;;OAGG;IACH,mBAAoB;IAEpB;;;OAGG;IACH,mBAAoB;IAEpB;;;OAGG;IACH,qBAG0B;IAE1B;;;OAGG;IACH,6BAAqC;IAErC;;;OAGG;IACH,2BAAmC;IAEnC;;;OAGG;IACH,gCAAmC;IAEnC;;;OAGG;IACH,oBAAuB;IAEvB;;;OAGG;IACH,qBAAwB;IAExB;;;OAGG;IACH,iBAAoB;IAEpB;;;OAGG;IACH,kBAAqB;IAErB;;;OAGG;IACH,yBAA4B;IAE5B;;;OAGG;IACH,yBAA4B;IAG1B;;;OAGG;IACH,2BAG+B;IAE/B;;;OAGG;IACH,2BAG+B;IAE/B;;;;;OAKG;IACH,0BACsE;IAEtE;;;;;OAKG;IACH,0BACsE;IAEtE;;;OAGG;IACH,2BAeE;IAEF;;;;OAIG;IACH,uBAIY;IAEZ;;;OAGG;IACH,2BAeE;IAEF;;;;OAIG;IACH,uBAIY;IAQd;;;OAGG;IACH,mBACiE;IAcjE;;;;OAIG;IACH,qBAAsB;IAEtB;;;OAGG;IACH,mBAEE;IAEF;;;OAGG;IACH,sBAAyB;IAEzB;;;OAGG;IACH,wBAA2B;IAE3B;;;OAGG;IACH,4BAA+B;IAKjC;;;;;;OAMG;IACH,yBAJW,OAAO,cAAc,EAAE,MAAM,cAC7B,MAAM,GACL,MAAM,OAAO,cAAc,EAAE,MAAM,CAAC,CAoB/C;IAED;;;;;OAKG;IACH,uBAJW,OAAO,WAAW,EAAE,MAAM,cAC1B,MAAM,cACN,OAAO,uBAAuB,EAAE,OAAO,QA4EjD;IAED;;;;;;;;;OASG;IACH,qBAuBC;IAED;;;;;;;;;OASG;IACH,qBAuBC;IAED;;;OAGG;IACH,oBAiFC;IAED;;;;;;OAMG;IACH,yBAsNC;IAED;;;;OAIG;IACH,qBA0BC;IAED;;;;;;;;OAQG;IACH,qBAiBC;IAED;;;;;;OAMG;IACH,0BAwBC;IAED;;;;OAIG;IACH,gBAHY,MAAM,UAAU,CAAC,CAK5B;IAED;;;;;;;;OAQG;IACH,qBAgBC;IAED;;;;;;OAMG;IACH,0BAwBC;IAED;;;;OAIG;IACH,gBAHY,MAAM,UAAU,CAAC,CAK5B;IAED;;;OAGG;IACH,8BA8EC;CACF"}
|
package/layer/Graticule.js
CHANGED
|
@@ -49,7 +49,26 @@ const DEFAULT_STROKE_STYLE = new Stroke({
|
|
|
49
49
|
* @private
|
|
50
50
|
*/
|
|
51
51
|
const INTERVALS = [
|
|
52
|
-
90,
|
|
52
|
+
90,
|
|
53
|
+
45,
|
|
54
|
+
30,
|
|
55
|
+
20,
|
|
56
|
+
10,
|
|
57
|
+
5,
|
|
58
|
+
2,
|
|
59
|
+
1,
|
|
60
|
+
30 / 60,
|
|
61
|
+
20 / 60,
|
|
62
|
+
10 / 60,
|
|
63
|
+
5 / 60,
|
|
64
|
+
2 / 60,
|
|
65
|
+
1 / 60,
|
|
66
|
+
30 / 3600,
|
|
67
|
+
20 / 3600,
|
|
68
|
+
10 / 3600,
|
|
69
|
+
5 / 3600,
|
|
70
|
+
2 / 3600,
|
|
71
|
+
1 / 3600,
|
|
53
72
|
];
|
|
54
73
|
|
|
55
74
|
/**
|
|
@@ -144,7 +163,7 @@ const INTERVALS = [
|
|
|
144
163
|
* Note that the default's `textAlign` configuration will not work well for
|
|
145
164
|
* `latLabelPosition` configurations that position labels close to the left of
|
|
146
165
|
* the viewport.
|
|
147
|
-
* @property {Array<number>} [intervals=[90, 45, 30, 20, 10, 5, 2, 1,
|
|
166
|
+
* @property {Array<number>} [intervals=[90, 45, 30, 20, 10, 5, 2, 1, 30/60, 20/60, 10/60, 5/60, 2/60, 1/60, 30/3600, 20/3600, 10/3600, 5/3600, 2/3600, 1/3600]]
|
|
148
167
|
* Intervals (in degrees) for the graticule. Example to limit graticules to 30 and 10 degrees intervals:
|
|
149
168
|
* ```js
|
|
150
169
|
* [30, 10]
|
package/package.json
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Immediate.d.ts","sourceRoot":"","sources":["Immediate.js"],"names":[],"mappings":";AA+BA;;;;;;;;GAQG;AACH;IACE;;;;;;;;OAQG;IACH,qBARW,wBAAwB,cACxB,MAAM,UACN,OAAO,iBAAiB,EAAE,MAAM,aAChC,OAAO,oBAAoB,EAAE,SAAS,gBACtC,MAAM,wHA0NhB;IA3MC;;;OAGG;IACH,iBAAuB;IAEvB;;;OAGG;IACH,oBAA6B;IAE7B;;;OAGG;IACH,gBAAqB;IAErB;;;OAGG;IACH,mBAA2B;IAE3B;;;OAGG;IACH,sBAAiC;IAEjC;;;OAGG;IACH,0BAA6C;IAE7C;;;OAGG;IACH,uBAAuC;IAEvC;;;OAGG;IACH,0BAA6B;IAE7B;;;OAGG;IACH,4BAA+B;IAE/B;;;OAGG;IACH,0BAA6B;IAE7B;;;OAGG;IACH,mBAAsB;IAEtB;;;OAGG;IACH,qBAAwB;IAExB;;;OAGG;IACH,eAAkB;IAElB;;;OAGG;IACH,sBAAsB;IAEtB;;;OAGG;IACH,sBAAsB;IAEtB;;;OAGG;IACH,qBAAqB;IAErB;;;OAGG;IACH,sBAAsB;IAEtB;;;OAGG;IACH,sBAAsB;IAEtB;;;OAGG;IACH,sBAAsB;IAEtB;;;OAGG;IACH,6BAAiC;IAEjC;;;OAGG;IACH,uBAAuB;IAEvB;;;OAGG;IACH,oBAAyB;IAEzB;;;OAGG;IACH,oBAAoB;IAEpB;;;OAGG;IACH,cAAe;IAEf;;;OAGG;IACH,qBAAqB;IAErB;;;OAGG;IACH,qBAAqB;IAErB;;;OAGG;IACH,4BAAgC;IAEhC;;;OAGG;IACH,sBAAsB;IAEtB;;;OAGG;IACH,mBAAwB;IAExB;;;OAGG;IACH,uBAA0B;IAE1B;;;OAGG;IACH,yBAA4B;IAE5B;;;OAGG;IACH,mBAAsB;IAEtB;;;OAGG;IACH,0BAA2B;IAE3B;;;OAGG;IACH,2BAA2C;IAG7C;;;;;;OAMG;IACH,oBA0EC;IAED;;;;;;OAMG;IACH,kBA6DC;IAED;;;;;;;;OAQG;IACH,sBAsBC;IAED;;;;;;;OAOG;IACH,mBAWC;IAED;;;;;;OAMG;IACH,qBAHW,OAAO,sBAAsB,EAAE,OAAO,QAyChD;IAeD;;OAEG;IACH,wBAFW,OAAO,oBAAoB,EAAE,SAAS,QAIhD;IAED;;;;;;OAMG;IACH,uBAHW,OAAO,wBAAwB,EAAE,OAAO,GAAC,OAAO,eAAe,EAAE,OAAO,QAoDlF;IAqBD;;;;;OAKG;IACH,iCAFW,OAAO,kCAAkC,EAAE,OAAO,QAO5D;IAED;;;;;OAKG;IACH,oBAFW,OAAO,qBAAqB,EAAE,OAAO,GAAC,OAAO,eAAe,EAAE,OAAO,QAmB/E;IAED;;;;;OAKG;IACH,yBAFW,OAAO,0BAA0B,EAAE,OAAO,GAAC,OAAO,eAAe,EAAE,OAAO,QAmBpF;IAED;;;;;OAKG;IACH,yBAFW,OAAO,0BAA0B,EAAE,OAAO,GAAC,OAAO,eAAe,EAAE,OAAO,QAgCpF;IAED;;;;;OAKG;IACH,8BAFW,OAAO,+BAA+B,EAAE,OAAO,GAAC,OAAO,eAAe,EAAE,OAAO,QAuCzF;IAED;;;;;OAKG;IACH,sBAFW,OAAO,uBAAuB,EAAE,OAAO,GAAC,OAAO,eAAe,EAAE,OAAO,QAwCjF;IAED;;;;OAIG;IACH,2BAFW,OAAO,4BAA4B,EAAE,OAAO,QA0CtD;IAED;;;OAGG;IACH,6BAcC;IAED;;;OAGG;IACH,+BAuDC;IAED;;;OAGG;IACH,
|
|
1
|
+
{"version":3,"file":"Immediate.d.ts","sourceRoot":"","sources":["Immediate.js"],"names":[],"mappings":";AA+BA;;;;;;;;GAQG;AACH;IACE;;;;;;;;OAQG;IACH,qBARW,wBAAwB,cACxB,MAAM,UACN,OAAO,iBAAiB,EAAE,MAAM,aAChC,OAAO,oBAAoB,EAAE,SAAS,gBACtC,MAAM,wHA0NhB;IA3MC;;;OAGG;IACH,iBAAuB;IAEvB;;;OAGG;IACH,oBAA6B;IAE7B;;;OAGG;IACH,gBAAqB;IAErB;;;OAGG;IACH,mBAA2B;IAE3B;;;OAGG;IACH,sBAAiC;IAEjC;;;OAGG;IACH,0BAA6C;IAE7C;;;OAGG;IACH,uBAAuC;IAEvC;;;OAGG;IACH,0BAA6B;IAE7B;;;OAGG;IACH,4BAA+B;IAE/B;;;OAGG;IACH,0BAA6B;IAE7B;;;OAGG;IACH,mBAAsB;IAEtB;;;OAGG;IACH,qBAAwB;IAExB;;;OAGG;IACH,eAAkB;IAElB;;;OAGG;IACH,sBAAsB;IAEtB;;;OAGG;IACH,sBAAsB;IAEtB;;;OAGG;IACH,qBAAqB;IAErB;;;OAGG;IACH,sBAAsB;IAEtB;;;OAGG;IACH,sBAAsB;IAEtB;;;OAGG;IACH,sBAAsB;IAEtB;;;OAGG;IACH,6BAAiC;IAEjC;;;OAGG;IACH,uBAAuB;IAEvB;;;OAGG;IACH,oBAAyB;IAEzB;;;OAGG;IACH,oBAAoB;IAEpB;;;OAGG;IACH,cAAe;IAEf;;;OAGG;IACH,qBAAqB;IAErB;;;OAGG;IACH,qBAAqB;IAErB;;;OAGG;IACH,4BAAgC;IAEhC;;;OAGG;IACH,sBAAsB;IAEtB;;;OAGG;IACH,mBAAwB;IAExB;;;OAGG;IACH,uBAA0B;IAE1B;;;OAGG;IACH,yBAA4B;IAE5B;;;OAGG;IACH,mBAAsB;IAEtB;;;OAGG;IACH,0BAA2B;IAE3B;;;OAGG;IACH,2BAA2C;IAG7C;;;;;;OAMG;IACH,oBA0EC;IAED;;;;;;OAMG;IACH,kBA6DC;IAED;;;;;;;;OAQG;IACH,sBAsBC;IAED;;;;;;;OAOG;IACH,mBAWC;IAED;;;;;;OAMG;IACH,qBAHW,OAAO,sBAAsB,EAAE,OAAO,QAyChD;IAeD;;OAEG;IACH,wBAFW,OAAO,oBAAoB,EAAE,SAAS,QAIhD;IAED;;;;;;OAMG;IACH,uBAHW,OAAO,wBAAwB,EAAE,OAAO,GAAC,OAAO,eAAe,EAAE,OAAO,QAoDlF;IAqBD;;;;;OAKG;IACH,iCAFW,OAAO,kCAAkC,EAAE,OAAO,QAO5D;IAED;;;;;OAKG;IACH,oBAFW,OAAO,qBAAqB,EAAE,OAAO,GAAC,OAAO,eAAe,EAAE,OAAO,QAmB/E;IAED;;;;;OAKG;IACH,yBAFW,OAAO,0BAA0B,EAAE,OAAO,GAAC,OAAO,eAAe,EAAE,OAAO,QAmBpF;IAED;;;;;OAKG;IACH,yBAFW,OAAO,0BAA0B,EAAE,OAAO,GAAC,OAAO,eAAe,EAAE,OAAO,QAgCpF;IAED;;;;;OAKG;IACH,8BAFW,OAAO,+BAA+B,EAAE,OAAO,GAAC,OAAO,eAAe,EAAE,OAAO,QAuCzF;IAED;;;;;OAKG;IACH,sBAFW,OAAO,uBAAuB,EAAE,OAAO,GAAC,OAAO,eAAe,EAAE,OAAO,QAwCjF;IAED;;;;OAIG;IACH,2BAFW,OAAO,4BAA4B,EAAE,OAAO,QA0CtD;IAED;;;OAGG;IACH,6BAcC;IAED;;;OAGG;IACH,+BAuDC;IAED;;;OAGG;IACH,6BA6BC;IAiED;;;;;OAKG;IACH,0BAFW,OAAO,sBAAsB,EAAE,OAAO,QAqBhD;IAED;;;;;OAKG;IACH,wBAFW,OAAO,qBAAqB,EAAE,OAAO,QA6F/C;CACF"}
|
|
@@ -947,10 +947,8 @@ class CanvasImmediateRenderer extends VectorContext {
|
|
|
947
947
|
: defaultTextAlign;
|
|
948
948
|
if (!contextTextState) {
|
|
949
949
|
context.font = textState.font;
|
|
950
|
-
context.textAlign =
|
|
951
|
-
context.textBaseline =
|
|
952
|
-
textState.textBaseline
|
|
953
|
-
);
|
|
950
|
+
context.textAlign = textAlign;
|
|
951
|
+
context.textBaseline = textState.textBaseline;
|
|
954
952
|
this.contextTextState_ = {
|
|
955
953
|
font: textState.font,
|
|
956
954
|
textAlign: textAlign,
|
|
@@ -962,16 +960,12 @@ class CanvasImmediateRenderer extends VectorContext {
|
|
|
962
960
|
context.font = textState.font;
|
|
963
961
|
}
|
|
964
962
|
if (contextTextState.textAlign != textAlign) {
|
|
965
|
-
contextTextState.textAlign =
|
|
966
|
-
context.textAlign =
|
|
963
|
+
contextTextState.textAlign = textAlign;
|
|
964
|
+
context.textAlign = textAlign;
|
|
967
965
|
}
|
|
968
966
|
if (contextTextState.textBaseline != textState.textBaseline) {
|
|
969
|
-
contextTextState.textBaseline =
|
|
970
|
-
|
|
971
|
-
);
|
|
972
|
-
context.textBaseline = /** @type {CanvasTextBaseline} */ (
|
|
973
|
-
textState.textBaseline
|
|
974
|
-
);
|
|
967
|
+
contextTextState.textBaseline = textState.textBaseline;
|
|
968
|
+
context.textBaseline = textState.textBaseline;
|
|
975
969
|
}
|
|
976
970
|
}
|
|
977
971
|
}
|
package/render/canvas.d.ts
CHANGED
|
@@ -93,10 +93,10 @@ export function drawImageOrLabel(context: CanvasRenderingContext2D, transform: i
|
|
|
93
93
|
/**
|
|
94
94
|
* @typedef {Object} TextState
|
|
95
95
|
* @property {string} font Font.
|
|
96
|
-
* @property {
|
|
97
|
-
* @property {
|
|
98
|
-
* @property {
|
|
99
|
-
* @property {import(
|
|
96
|
+
* @property {CanvasTextAlign} [textAlign] TextAlign.
|
|
97
|
+
* @property {import("../style/Text.js").TextJustify} [justify] Justify.
|
|
98
|
+
* @property {CanvasTextBaseline} textBaseline TextBaseline.
|
|
99
|
+
* @property {import("../style/Text.js").TextPlacement} [placement] Placement.
|
|
100
100
|
* @property {number} [maxAngle] MaxAngle.
|
|
101
101
|
* @property {boolean} [overflow] Overflow.
|
|
102
102
|
* @property {import("../style/Fill.js").default} [backgroundFill] BackgroundFill.
|
|
@@ -158,14 +158,14 @@ export const defaultMiterLimit: number;
|
|
|
158
158
|
export const defaultStrokeStyle: import("../colorlike.js").ColorLike;
|
|
159
159
|
/**
|
|
160
160
|
* @const
|
|
161
|
-
* @type {
|
|
161
|
+
* @type {CanvasTextAlign}
|
|
162
162
|
*/
|
|
163
|
-
export const defaultTextAlign:
|
|
163
|
+
export const defaultTextAlign: CanvasTextAlign;
|
|
164
164
|
/**
|
|
165
165
|
* @const
|
|
166
|
-
* @type {
|
|
166
|
+
* @type {CanvasTextBaseline}
|
|
167
167
|
*/
|
|
168
|
-
export const defaultTextBaseline:
|
|
168
|
+
export const defaultTextBaseline: CanvasTextBaseline;
|
|
169
169
|
/**
|
|
170
170
|
* @const
|
|
171
171
|
* @type {Array<number>}
|
|
@@ -317,15 +317,15 @@ export type TextState = {
|
|
|
317
317
|
/**
|
|
318
318
|
* TextAlign.
|
|
319
319
|
*/
|
|
320
|
-
textAlign?:
|
|
320
|
+
textAlign?: CanvasTextAlign | undefined;
|
|
321
321
|
/**
|
|
322
322
|
* Justify.
|
|
323
323
|
*/
|
|
324
|
-
justify?:
|
|
324
|
+
justify?: import("../style/Text.js").TextJustify | undefined;
|
|
325
325
|
/**
|
|
326
326
|
* TextBaseline.
|
|
327
327
|
*/
|
|
328
|
-
textBaseline:
|
|
328
|
+
textBaseline: CanvasTextBaseline;
|
|
329
329
|
/**
|
|
330
330
|
* Placement.
|
|
331
331
|
*/
|
package/render/canvas.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"canvas.d.ts","sourceRoot":"","sources":["canvas.js"],"names":[],"mappings":"AA8UA;;;;GAIG;AACH,uCAJW,MAAM,QACN,MAAM,GACL,MAAM,CAIjB;AAED;;;;;;GAMG;AACH,+CALW,MAAM,QACN,MAAM;QACC,MAAM,GAAE,MAAM;IACpB,MAAM,CAWjB;AAED;;;;GAIG;AACH,6CAJW,SAAS,UACT,MAAM,MAAM,CAAC;WACJ,MAAM;YAAU,MAAM;YAAU,MAAM,MAAM,CAAC;aAAW,MAAM,MAAM,CAAC;gBAAc,MAAM,MAAM,CAAC;EA4BnH;AAED;;;;;GAKG;AACH,wCALW,wBAAwB,YACxB,MAAM,WACN,MAAM,WACN,MAAM,QAQhB;AAED;;;;;;;;;;;;GAYG;AACH,0CAZW,wBAAwB,aACxB,OAAO,iBAAiB,EAAE,SAAS,GAAC,IAAI,WACxC,MAAM,gBACN,KAAK,GAAC,iBAAiB,GAAC,gBAAgB,GAAC,gBAAgB,WACzD,MAAM,WACN,MAAM,KACN,MAAM,KACN,MAAM,KACN,MAAM,KACN,MAAM,SACN,OAAO,YAAY,EAAE,IAAI,QAgEnC;AA1dD;;GAEG;AAEH;;;GAGG;AAEH;;;;;GAKG;AAEH;;;;;;;;;;;;;;;;;;;GAmBG;AAEH;;;;;;;;;GASG;AAEH;;;;;;;;;;;;;GAaG;AAEH;;;;;;;;GAQG;AAEH;;GAEG;AAEH;;;GAGG;AACH,0BAFU,MAAM,CAE6B;AAE7C;;;GAGG;AACH,+BAFU,OAAO,iBAAiB,EAAE,SAAS,CAEN;AAEvC;;;GAGG;AACH,6BAFU,aAAa,CAEe;AAEtC;;;GAGG;AACH,8BAFU,MAAM,MAAM,CAAC,CAEW;AAElC;;;GAGG;AACH,oCAFU,MAAM,CAEuB;AAEvC;;;GAGG;AACH,8BAFU,cAAc,CAEe;AAEvC;;;GAGG;AACH,gCAFU,MAAM,CAEoB;AAEpC;;;GAGG;AACH,iCAFU,OAAO,iBAAiB,EAAE,SAAS,CAEJ;AAEzC;;;GAGG;AACH,+BAFU,
|
|
1
|
+
{"version":3,"file":"canvas.d.ts","sourceRoot":"","sources":["canvas.js"],"names":[],"mappings":"AA8UA;;;;GAIG;AACH,uCAJW,MAAM,QACN,MAAM,GACL,MAAM,CAIjB;AAED;;;;;;GAMG;AACH,+CALW,MAAM,QACN,MAAM;QACC,MAAM,GAAE,MAAM;IACpB,MAAM,CAWjB;AAED;;;;GAIG;AACH,6CAJW,SAAS,UACT,MAAM,MAAM,CAAC;WACJ,MAAM;YAAU,MAAM;YAAU,MAAM,MAAM,CAAC;aAAW,MAAM,MAAM,CAAC;gBAAc,MAAM,MAAM,CAAC;EA4BnH;AAED;;;;;GAKG;AACH,wCALW,wBAAwB,YACxB,MAAM,WACN,MAAM,WACN,MAAM,QAQhB;AAED;;;;;;;;;;;;GAYG;AACH,0CAZW,wBAAwB,aACxB,OAAO,iBAAiB,EAAE,SAAS,GAAC,IAAI,WACxC,MAAM,gBACN,KAAK,GAAC,iBAAiB,GAAC,gBAAgB,GAAC,gBAAgB,WACzD,MAAM,WACN,MAAM,KACN,MAAM,KACN,MAAM,KACN,MAAM,KACN,MAAM,SACN,OAAO,YAAY,EAAE,IAAI,QAgEnC;AA1dD;;GAEG;AAEH;;;GAGG;AAEH;;;;;GAKG;AAEH;;;;;;;;;;;;;;;;;;;GAmBG;AAEH;;;;;;;;;GASG;AAEH;;;;;;;;;;;;;GAaG;AAEH;;;;;;;;GAQG;AAEH;;GAEG;AAEH;;;GAGG;AACH,0BAFU,MAAM,CAE6B;AAE7C;;;GAGG;AACH,+BAFU,OAAO,iBAAiB,EAAE,SAAS,CAEN;AAEvC;;;GAGG;AACH,6BAFU,aAAa,CAEe;AAEtC;;;GAGG;AACH,8BAFU,MAAM,MAAM,CAAC,CAEW;AAElC;;;GAGG;AACH,oCAFU,MAAM,CAEuB;AAEvC;;;GAGG;AACH,8BAFU,cAAc,CAEe;AAEvC;;;GAGG;AACH,gCAFU,MAAM,CAEoB;AAEpC;;;GAGG;AACH,iCAFU,OAAO,iBAAiB,EAAE,SAAS,CAEJ;AAEzC;;;GAGG;AACH,+BAFU,eAAe,CAEgB;AAEzC;;;GAGG;AACH,kCAFU,kBAAkB,CAEgB;AAE5C;;;GAGG;AACH,6BAFU,MAAM,MAAM,CAAC,CAEoB;AAE3C;;;GAGG;AACH,+BAFU,MAAM,CAEkB;AAElC;;GAEG;AACH,2BAFU,UAAU,CAEyB;AAY7C;;GAEG;AACH;QAFkB,MAAM,GAAE,MAAM;EAEF;AA2ErB,kDAmBN;AAYM,yDAiCN;0BAjTU,QAAQ,GAAG,OAAO,GAAG,YAAY,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS;;;;;eAKjE,OAAO,iBAAiB,EAAE,SAAS;;;;;;WAKnC,MAAM;;;;YACN,MAAM;;;;yBACN,MAAM,MAAM,GAAC,MAAM,CAAC;;;;;;;;;;;;;;;;;;qBAQpB,MAAM,MAAM,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;cASb,MAAM,MAAM,CAAC;;;;;;;;;;;;;;;;;;;;;;aASb,aAAa;;;;cACb,MAAM,MAAM,CAAC;;;;oBACb,MAAM;;;;cACN,cAAc;;;;eACd,MAAM;;;;gBACN,MAAM;;;;iBACN,OAAO,iBAAiB,EAAE,SAAS;;;;;;UAKnC,MAAM;;;;;;;;;;;;kBAGN,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAYlB,UAAQ;;;;8BACR,UAAQ;;;;iBACR,MAAM,MAAM,CAAC;;;;;;;;;;;;;;;;;;;;;QAOP,MAAM,GAAE,OAAO,sBAAsB,EAAE,sBAAsB"}
|
package/render/canvas.js
CHANGED
|
@@ -58,10 +58,10 @@ import {getFontParameters} from '../css.js';
|
|
|
58
58
|
/**
|
|
59
59
|
* @typedef {Object} TextState
|
|
60
60
|
* @property {string} font Font.
|
|
61
|
-
* @property {
|
|
62
|
-
* @property {
|
|
63
|
-
* @property {
|
|
64
|
-
* @property {import(
|
|
61
|
+
* @property {CanvasTextAlign} [textAlign] TextAlign.
|
|
62
|
+
* @property {import("../style/Text.js").TextJustify} [justify] Justify.
|
|
63
|
+
* @property {CanvasTextBaseline} textBaseline TextBaseline.
|
|
64
|
+
* @property {import("../style/Text.js").TextPlacement} [placement] Placement.
|
|
65
65
|
* @property {number} [maxAngle] MaxAngle.
|
|
66
66
|
* @property {boolean} [overflow] Overflow.
|
|
67
67
|
* @property {import("../style/Fill.js").default} [backgroundFill] BackgroundFill.
|
|
@@ -134,13 +134,13 @@ export const defaultStrokeStyle = '#000';
|
|
|
134
134
|
|
|
135
135
|
/**
|
|
136
136
|
* @const
|
|
137
|
-
* @type {
|
|
137
|
+
* @type {CanvasTextAlign}
|
|
138
138
|
*/
|
|
139
139
|
export const defaultTextAlign = 'center';
|
|
140
140
|
|
|
141
141
|
/**
|
|
142
142
|
* @const
|
|
143
|
-
* @type {
|
|
143
|
+
* @type {CanvasTextBaseline}
|
|
144
144
|
*/
|
|
145
145
|
export const defaultTextBaseline = 'middle';
|
|
146
146
|
|
package/style/IconImage.d.ts
CHANGED
|
@@ -29,6 +29,11 @@ declare class IconImage extends EventTarget {
|
|
|
29
29
|
* @type {HTMLImageElement|HTMLCanvasElement}
|
|
30
30
|
*/
|
|
31
31
|
private image_;
|
|
32
|
+
/**
|
|
33
|
+
* @private
|
|
34
|
+
* @type {string|null}
|
|
35
|
+
*/
|
|
36
|
+
private crossOrigin_;
|
|
32
37
|
/**
|
|
33
38
|
* @private
|
|
34
39
|
* @type {Object<number, HTMLCanvasElement>}
|
|
@@ -59,6 +64,10 @@ declare class IconImage extends EventTarget {
|
|
|
59
64
|
* @type {string|undefined}
|
|
60
65
|
*/
|
|
61
66
|
private src_;
|
|
67
|
+
/**
|
|
68
|
+
* @private
|
|
69
|
+
*/
|
|
70
|
+
private initializeImage_;
|
|
62
71
|
/**
|
|
63
72
|
* @private
|
|
64
73
|
* @return {boolean} The image canvas is tainted.
|
package/style/IconImage.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"IconImage.d.ts","sourceRoot":"","sources":["IconImage.js"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"IconImage.d.ts","sourceRoot":"","sources":["IconImage.js"],"names":[],"mappings":"AA+SA;;;;;;;;GAQG;AACH,2BARW,gBAAgB,GAAC,iBAAiB,OAClC,MAAM,QACN,OAAO,YAAY,EAAE,IAAI,eACxB,MAAM,iCAEP,OAAO,aAAa,EAAE,KAAK,GAC1B,SAAS,CASpB;;AA9SD;IACE;;;;;;;OAOG;IACH,mBAPW,gBAAgB,GAAC,iBAAiB,OAClC,MAAM,GAAC,SAAS,QAChB,OAAO,YAAY,EAAE,IAAI,eACxB,MAAM,iCAEP,OAAO,aAAa,EAAE,KAAK,EA+DrC;IA1DC;;;OAGG;IACH,2BAA8B;IAE9B;;;OAGG;IACH,eAAmB;IAEnB;;;OAGG;IACH,qBAA+B;IAE/B;;;OAGG;IACH,gBAAiB;IAEjB;;;OAGG;IACH,eAAmB;IAEnB;;;OAGG;IACH,kBAAqB;IAErB;;;OAGG;IACH,oBAA6B;IAE7B;;;OAGG;IACH,cAAiB;IAEjB;;;OAGG;IACH,aAAe;IAQjB;;OAEG;IACH,yBAKC;IAED;;;OAGG;IACH,mBAeC;IAPK,8BAAqB;IAS3B;;OAEG;IACH,6BAEC;IAED;;OAEG;IACH,0BAIC;IAED;;OAEG;IACH,yBAUC;IAED;;;OAGG;IACH,qBAHW,MAAM,GACL,gBAAgB,GAAC,iBAAiB,CAQ7C;IAED;;;OAGG;IACH,0BAHW,MAAM,GACL,MAAM,CAKjB;IAED;;OAEG;IACH,qBAEC;IAED;;OAEG;IACH,wBAFY,gBAAgB,GAAC,iBAAiB,CAkB7C;IAED;;;OAGG;IACH,WAFY,OAAO,YAAY,EAAE,IAAI,CAIpC;IAED;;OAEG;IACH,UAFY,MAAM,GAAC,SAAS,CAI3B;IAED;;OAEG;IACH,aAmBC;IAED;;;OAGG;IACH,sBA6CC;IAED;;;;OAIG;IACH,uBAKC;CACF"}
|
package/style/IconImage.js
CHANGED
|
@@ -37,11 +37,13 @@ class IconImage extends EventTarget {
|
|
|
37
37
|
* @private
|
|
38
38
|
* @type {HTMLImageElement|HTMLCanvasElement}
|
|
39
39
|
*/
|
|
40
|
-
this.image_ =
|
|
40
|
+
this.image_ = image;
|
|
41
41
|
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
42
|
+
/**
|
|
43
|
+
* @private
|
|
44
|
+
* @type {string|null}
|
|
45
|
+
*/
|
|
46
|
+
this.crossOrigin_ = crossOrigin;
|
|
45
47
|
|
|
46
48
|
/**
|
|
47
49
|
* @private
|
|
@@ -85,6 +87,16 @@ class IconImage extends EventTarget {
|
|
|
85
87
|
this.tainted_;
|
|
86
88
|
}
|
|
87
89
|
|
|
90
|
+
/**
|
|
91
|
+
* @private
|
|
92
|
+
*/
|
|
93
|
+
initializeImage_() {
|
|
94
|
+
this.image_ = new Image();
|
|
95
|
+
if (this.crossOrigin_ !== null) {
|
|
96
|
+
this.image_.crossOrigin = this.crossOrigin_;
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
|
|
88
100
|
/**
|
|
89
101
|
* @private
|
|
90
102
|
* @return {boolean} The image canvas is tainted.
|
|
@@ -142,6 +154,9 @@ class IconImage extends EventTarget {
|
|
|
142
154
|
* @return {HTMLImageElement|HTMLCanvasElement} Image or Canvas element.
|
|
143
155
|
*/
|
|
144
156
|
getImage(pixelRatio) {
|
|
157
|
+
if (!this.image_) {
|
|
158
|
+
this.initializeImage_();
|
|
159
|
+
}
|
|
145
160
|
this.replaceColor_(pixelRatio);
|
|
146
161
|
return this.canvas_[pixelRatio] ? this.canvas_[pixelRatio] : this.image_;
|
|
147
162
|
}
|
|
@@ -166,6 +181,9 @@ class IconImage extends EventTarget {
|
|
|
166
181
|
* @return {HTMLImageElement|HTMLCanvasElement} Image element.
|
|
167
182
|
*/
|
|
168
183
|
getHitDetectionImage() {
|
|
184
|
+
if (!this.image_) {
|
|
185
|
+
this.initializeImage_();
|
|
186
|
+
}
|
|
169
187
|
if (!this.hitDetectionImage_) {
|
|
170
188
|
if (this.isTainted_()) {
|
|
171
189
|
const width = this.size_[0];
|
|
@@ -199,19 +217,24 @@ class IconImage extends EventTarget {
|
|
|
199
217
|
* Load not yet loaded URI.
|
|
200
218
|
*/
|
|
201
219
|
load() {
|
|
202
|
-
if (this.imageState_
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
);
|
|
220
|
+
if (this.imageState_ !== ImageState.IDLE) {
|
|
221
|
+
return;
|
|
222
|
+
}
|
|
223
|
+
if (!this.image_) {
|
|
224
|
+
this.initializeImage_();
|
|
225
|
+
}
|
|
226
|
+
|
|
227
|
+
this.imageState_ = ImageState.LOADING;
|
|
228
|
+
try {
|
|
229
|
+
/** @type {HTMLImageElement} */ (this.image_).src = this.src_;
|
|
230
|
+
} catch (e) {
|
|
231
|
+
this.handleImageError_();
|
|
214
232
|
}
|
|
233
|
+
this.unlisten_ = listenImage(
|
|
234
|
+
this.image_,
|
|
235
|
+
this.handleImageLoad_.bind(this),
|
|
236
|
+
this.handleImageError_.bind(this)
|
|
237
|
+
);
|
|
215
238
|
}
|
|
216
239
|
|
|
217
240
|
/**
|
package/style/Text.d.ts
CHANGED
|
@@ -6,10 +6,11 @@ export default Text;
|
|
|
6
6
|
* {@link module :ol/geom/MultiPolygon~MultiPolygon}.
|
|
7
7
|
*/
|
|
8
8
|
export type TextPlacement = 'point' | 'line';
|
|
9
|
+
export type TextJustify = 'left' | 'center' | 'right';
|
|
9
10
|
export type Options = {
|
|
10
11
|
/**
|
|
11
|
-
* Font style as CSS
|
|
12
|
-
* https://developer.mozilla.org/en-US/docs/Web/API/CanvasRenderingContext2D/font. Default is '10px sans-serif'
|
|
12
|
+
* Font style as CSS `font` value, see:
|
|
13
|
+
* https://developer.mozilla.org/en-US/docs/Web/API/CanvasRenderingContext2D/font. Default is `'10px sans-serif'`
|
|
13
14
|
*/
|
|
14
15
|
font?: string | undefined;
|
|
15
16
|
/**
|
|
@@ -55,23 +56,23 @@ export type Options = {
|
|
|
55
56
|
*/
|
|
56
57
|
text?: string | string[] | undefined;
|
|
57
58
|
/**
|
|
58
|
-
* Text alignment. Possible values: 'left'
|
|
59
|
-
* Default is 'center' for `placement: 'point'`. For `placement: 'line'`, the default is to let the renderer choose a
|
|
59
|
+
* Text alignment. Possible values: `'left'`, `'right'`, `'center'`, `'end'` or `'start'`.
|
|
60
|
+
* Default is `'center'` for `placement: 'point'`. For `placement: 'line'`, the default is to let the renderer choose a
|
|
60
61
|
* placement where `maxAngle` is not exceeded.
|
|
61
62
|
*/
|
|
62
|
-
textAlign?:
|
|
63
|
+
textAlign?: CanvasTextAlign | undefined;
|
|
63
64
|
/**
|
|
64
65
|
* Text justification within the text box.
|
|
65
66
|
* If not set, text is justified towards the `textAlign` anchor.
|
|
66
67
|
* Otherwise, use options `'left'`, `'center'`, or `'right'` to justify the text within the text box.
|
|
67
68
|
* **Note:** `justify` is ignored for immediate rendering and also for `placement: 'line'`.
|
|
68
69
|
*/
|
|
69
|
-
justify?:
|
|
70
|
+
justify?: TextJustify | undefined;
|
|
70
71
|
/**
|
|
71
|
-
* Text base line. Possible values: 'bottom'
|
|
72
|
-
* 'hanging'
|
|
72
|
+
* Text base line. Possible values: `'bottom'`, `'top'`, `'middle'`, `'alphabetic'`,
|
|
73
|
+
* `'hanging'`, `'ideographic'`.
|
|
73
74
|
*/
|
|
74
|
-
textBaseline?:
|
|
75
|
+
textBaseline?: CanvasTextBaseline | undefined;
|
|
75
76
|
/**
|
|
76
77
|
* Fill style. If none is provided, we'll use a dark fill-style (#333).
|
|
77
78
|
*/
|
|
@@ -98,8 +99,8 @@ export type Options = {
|
|
|
98
99
|
};
|
|
99
100
|
/**
|
|
100
101
|
* @typedef {Object} Options
|
|
101
|
-
* @property {string} [font] Font style as CSS
|
|
102
|
-
* https://developer.mozilla.org/en-US/docs/Web/API/CanvasRenderingContext2D/font. Default is '10px sans-serif'
|
|
102
|
+
* @property {string} [font] Font style as CSS `font` value, see:
|
|
103
|
+
* https://developer.mozilla.org/en-US/docs/Web/API/CanvasRenderingContext2D/font. Default is `'10px sans-serif'`
|
|
103
104
|
* @property {number} [maxAngle=Math.PI/4] When `placement` is set to `'line'`, allow a maximum angle between adjacent characters.
|
|
104
105
|
* The expected value is in radians, and the default is 45° (`Math.PI / 4`).
|
|
105
106
|
* @property {number} [offsetX=0] Horizontal text offset in pixels. A positive will shift the text right.
|
|
@@ -115,15 +116,15 @@ export type Options = {
|
|
|
115
116
|
* render and the font to use (or `''` to use the text style's font). A line break has to be a separate tuple (i.e. `'\n', ''`).
|
|
116
117
|
* **Example:** `['foo', 'bold 10px sans-serif', ' bar', 'italic 10px sans-serif', ' baz', '']` will yield "**foo** *bar* baz".
|
|
117
118
|
* **Note:** Rich text is not supported for the immediate rendering API.
|
|
118
|
-
* @property {
|
|
119
|
-
* Default is 'center' for `placement: 'point'`. For `placement: 'line'`, the default is to let the renderer choose a
|
|
119
|
+
* @property {CanvasTextAlign} [textAlign] Text alignment. Possible values: `'left'`, `'right'`, `'center'`, `'end'` or `'start'`.
|
|
120
|
+
* Default is `'center'` for `placement: 'point'`. For `placement: 'line'`, the default is to let the renderer choose a
|
|
120
121
|
* placement where `maxAngle` is not exceeded.
|
|
121
|
-
* @property {
|
|
122
|
+
* @property {TextJustify} [justify] Text justification within the text box.
|
|
122
123
|
* If not set, text is justified towards the `textAlign` anchor.
|
|
123
124
|
* Otherwise, use options `'left'`, `'center'`, or `'right'` to justify the text within the text box.
|
|
124
125
|
* **Note:** `justify` is ignored for immediate rendering and also for `placement: 'line'`.
|
|
125
|
-
* @property {
|
|
126
|
-
* 'hanging'
|
|
126
|
+
* @property {CanvasTextBaseline} [textBaseline='middle'] Text base line. Possible values: `'bottom'`, `'top'`, `'middle'`, `'alphabetic'`,
|
|
127
|
+
* `'hanging'`, `'ideographic'`.
|
|
127
128
|
* @property {import("./Fill.js").default} [fill] Fill style. If none is provided, we'll use a dark fill-style (#333).
|
|
128
129
|
* @property {import("./Stroke.js").default} [stroke] Stroke style.
|
|
129
130
|
* @property {import("./Fill.js").default} [backgroundFill] Fill style for the text background when `placement` is
|
|
@@ -175,17 +176,17 @@ declare class Text {
|
|
|
175
176
|
private text_;
|
|
176
177
|
/**
|
|
177
178
|
* @private
|
|
178
|
-
* @type {
|
|
179
|
+
* @type {CanvasTextAlign|undefined}
|
|
179
180
|
*/
|
|
180
181
|
private textAlign_;
|
|
181
182
|
/**
|
|
182
183
|
* @private
|
|
183
|
-
* @type {
|
|
184
|
+
* @type {TextJustify|undefined}
|
|
184
185
|
*/
|
|
185
186
|
private justify_;
|
|
186
187
|
/**
|
|
187
188
|
* @private
|
|
188
|
-
* @type {
|
|
189
|
+
* @type {CanvasTextBaseline|undefined}
|
|
189
190
|
*/
|
|
190
191
|
private textBaseline_;
|
|
191
192
|
/**
|
|
@@ -323,22 +324,22 @@ declare class Text {
|
|
|
323
324
|
getText(): string | Array<string> | undefined;
|
|
324
325
|
/**
|
|
325
326
|
* Get the text alignment.
|
|
326
|
-
* @return {
|
|
327
|
+
* @return {CanvasTextAlign|undefined} Text align.
|
|
327
328
|
* @api
|
|
328
329
|
*/
|
|
329
|
-
getTextAlign():
|
|
330
|
+
getTextAlign(): CanvasTextAlign | undefined;
|
|
330
331
|
/**
|
|
331
332
|
* Get the justification.
|
|
332
|
-
* @return {
|
|
333
|
+
* @return {TextJustify|undefined} Justification.
|
|
333
334
|
* @api
|
|
334
335
|
*/
|
|
335
|
-
getJustify():
|
|
336
|
+
getJustify(): TextJustify | undefined;
|
|
336
337
|
/**
|
|
337
338
|
* Get the text baseline.
|
|
338
|
-
* @return {
|
|
339
|
+
* @return {CanvasTextBaseline|undefined} Text baseline.
|
|
339
340
|
* @api
|
|
340
341
|
*/
|
|
341
|
-
getTextBaseline():
|
|
342
|
+
getTextBaseline(): CanvasTextBaseline | undefined;
|
|
342
343
|
/**
|
|
343
344
|
* Get the background fill style for the text.
|
|
344
345
|
* @return {import("./Fill.js").default} Fill style.
|
|
@@ -444,24 +445,24 @@ declare class Text {
|
|
|
444
445
|
/**
|
|
445
446
|
* Set the text alignment.
|
|
446
447
|
*
|
|
447
|
-
* @param {
|
|
448
|
+
* @param {CanvasTextAlign|undefined} textAlign Text align.
|
|
448
449
|
* @api
|
|
449
450
|
*/
|
|
450
|
-
setTextAlign(textAlign:
|
|
451
|
+
setTextAlign(textAlign: CanvasTextAlign | undefined): void;
|
|
451
452
|
/**
|
|
452
453
|
* Set the justification.
|
|
453
454
|
*
|
|
454
|
-
* @param {
|
|
455
|
+
* @param {TextJustify|undefined} justify Justification.
|
|
455
456
|
* @api
|
|
456
457
|
*/
|
|
457
|
-
setJustify(justify:
|
|
458
|
+
setJustify(justify: TextJustify | undefined): void;
|
|
458
459
|
/**
|
|
459
460
|
* Set the text baseline.
|
|
460
461
|
*
|
|
461
|
-
* @param {
|
|
462
|
+
* @param {CanvasTextBaseline|undefined} textBaseline Text baseline.
|
|
462
463
|
* @api
|
|
463
464
|
*/
|
|
464
|
-
setTextBaseline(textBaseline:
|
|
465
|
+
setTextBaseline(textBaseline: CanvasTextBaseline | undefined): void;
|
|
465
466
|
/**
|
|
466
467
|
* Set the background fill.
|
|
467
468
|
*
|
package/style/Text.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Text.d.ts","sourceRoot":"","sources":["Text.js"],"names":[],"mappings":";;;;;;;4BAOa,OAAO,GAAG,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"Text.d.ts","sourceRoot":"","sources":["Text.js"],"names":[],"mappings":"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"}
|
package/style/Text.js
CHANGED
|
@@ -12,6 +12,10 @@ import {toSize} from '../size.js';
|
|
|
12
12
|
* {@link module:ol/geom/MultiPolygon~MultiPolygon}.
|
|
13
13
|
*/
|
|
14
14
|
|
|
15
|
+
/**
|
|
16
|
+
* @typedef {'left' | 'center' | 'right'} TextJustify
|
|
17
|
+
*/
|
|
18
|
+
|
|
15
19
|
/**
|
|
16
20
|
* The default fill color to use if no fill was set at construction time; a
|
|
17
21
|
* blackish `#333`.
|
|
@@ -22,8 +26,8 @@ const DEFAULT_FILL_COLOR = '#333';
|
|
|
22
26
|
|
|
23
27
|
/**
|
|
24
28
|
* @typedef {Object} Options
|
|
25
|
-
* @property {string} [font] Font style as CSS
|
|
26
|
-
* https://developer.mozilla.org/en-US/docs/Web/API/CanvasRenderingContext2D/font. Default is '10px sans-serif'
|
|
29
|
+
* @property {string} [font] Font style as CSS `font` value, see:
|
|
30
|
+
* https://developer.mozilla.org/en-US/docs/Web/API/CanvasRenderingContext2D/font. Default is `'10px sans-serif'`
|
|
27
31
|
* @property {number} [maxAngle=Math.PI/4] When `placement` is set to `'line'`, allow a maximum angle between adjacent characters.
|
|
28
32
|
* The expected value is in radians, and the default is 45° (`Math.PI / 4`).
|
|
29
33
|
* @property {number} [offsetX=0] Horizontal text offset in pixels. A positive will shift the text right.
|
|
@@ -39,15 +43,15 @@ const DEFAULT_FILL_COLOR = '#333';
|
|
|
39
43
|
* render and the font to use (or `''` to use the text style's font). A line break has to be a separate tuple (i.e. `'\n', ''`).
|
|
40
44
|
* **Example:** `['foo', 'bold 10px sans-serif', ' bar', 'italic 10px sans-serif', ' baz', '']` will yield "**foo** *bar* baz".
|
|
41
45
|
* **Note:** Rich text is not supported for the immediate rendering API.
|
|
42
|
-
* @property {
|
|
43
|
-
* Default is 'center' for `placement: 'point'`. For `placement: 'line'`, the default is to let the renderer choose a
|
|
46
|
+
* @property {CanvasTextAlign} [textAlign] Text alignment. Possible values: `'left'`, `'right'`, `'center'`, `'end'` or `'start'`.
|
|
47
|
+
* Default is `'center'` for `placement: 'point'`. For `placement: 'line'`, the default is to let the renderer choose a
|
|
44
48
|
* placement where `maxAngle` is not exceeded.
|
|
45
|
-
* @property {
|
|
49
|
+
* @property {TextJustify} [justify] Text justification within the text box.
|
|
46
50
|
* If not set, text is justified towards the `textAlign` anchor.
|
|
47
51
|
* Otherwise, use options `'left'`, `'center'`, or `'right'` to justify the text within the text box.
|
|
48
52
|
* **Note:** `justify` is ignored for immediate rendering and also for `placement: 'line'`.
|
|
49
|
-
* @property {
|
|
50
|
-
* 'hanging'
|
|
53
|
+
* @property {CanvasTextBaseline} [textBaseline='middle'] Text base line. Possible values: `'bottom'`, `'top'`, `'middle'`, `'alphabetic'`,
|
|
54
|
+
* `'hanging'`, `'ideographic'`.
|
|
51
55
|
* @property {import("./Fill.js").default} [fill] Fill style. If none is provided, we'll use a dark fill-style (#333).
|
|
52
56
|
* @property {import("./Stroke.js").default} [stroke] Stroke style.
|
|
53
57
|
* @property {import("./Fill.js").default} [backgroundFill] Fill style for the text background when `placement` is
|
|
@@ -108,19 +112,19 @@ class Text {
|
|
|
108
112
|
|
|
109
113
|
/**
|
|
110
114
|
* @private
|
|
111
|
-
* @type {
|
|
115
|
+
* @type {CanvasTextAlign|undefined}
|
|
112
116
|
*/
|
|
113
117
|
this.textAlign_ = options.textAlign;
|
|
114
118
|
|
|
115
119
|
/**
|
|
116
120
|
* @private
|
|
117
|
-
* @type {
|
|
121
|
+
* @type {TextJustify|undefined}
|
|
118
122
|
*/
|
|
119
123
|
this.justify_ = options.justify;
|
|
120
124
|
|
|
121
125
|
/**
|
|
122
126
|
* @private
|
|
123
|
-
* @type {
|
|
127
|
+
* @type {CanvasTextBaseline|undefined}
|
|
124
128
|
*/
|
|
125
129
|
this.textBaseline_ = options.textBaseline;
|
|
126
130
|
|
|
@@ -345,7 +349,7 @@ class Text {
|
|
|
345
349
|
|
|
346
350
|
/**
|
|
347
351
|
* Get the text alignment.
|
|
348
|
-
* @return {
|
|
352
|
+
* @return {CanvasTextAlign|undefined} Text align.
|
|
349
353
|
* @api
|
|
350
354
|
*/
|
|
351
355
|
getTextAlign() {
|
|
@@ -354,7 +358,7 @@ class Text {
|
|
|
354
358
|
|
|
355
359
|
/**
|
|
356
360
|
* Get the justification.
|
|
357
|
-
* @return {
|
|
361
|
+
* @return {TextJustify|undefined} Justification.
|
|
358
362
|
* @api
|
|
359
363
|
*/
|
|
360
364
|
getJustify() {
|
|
@@ -363,7 +367,7 @@ class Text {
|
|
|
363
367
|
|
|
364
368
|
/**
|
|
365
369
|
* Get the text baseline.
|
|
366
|
-
* @return {
|
|
370
|
+
* @return {CanvasTextBaseline|undefined} Text baseline.
|
|
367
371
|
* @api
|
|
368
372
|
*/
|
|
369
373
|
getTextBaseline() {
|
|
@@ -521,7 +525,7 @@ class Text {
|
|
|
521
525
|
/**
|
|
522
526
|
* Set the text alignment.
|
|
523
527
|
*
|
|
524
|
-
* @param {
|
|
528
|
+
* @param {CanvasTextAlign|undefined} textAlign Text align.
|
|
525
529
|
* @api
|
|
526
530
|
*/
|
|
527
531
|
setTextAlign(textAlign) {
|
|
@@ -531,7 +535,7 @@ class Text {
|
|
|
531
535
|
/**
|
|
532
536
|
* Set the justification.
|
|
533
537
|
*
|
|
534
|
-
* @param {
|
|
538
|
+
* @param {TextJustify|undefined} justify Justification.
|
|
535
539
|
* @api
|
|
536
540
|
*/
|
|
537
541
|
setJustify(justify) {
|
|
@@ -541,7 +545,7 @@ class Text {
|
|
|
541
545
|
/**
|
|
542
546
|
* Set the text baseline.
|
|
543
547
|
*
|
|
544
|
-
* @param {
|
|
548
|
+
* @param {CanvasTextBaseline|undefined} textBaseline Text baseline.
|
|
545
549
|
* @api
|
|
546
550
|
*/
|
|
547
551
|
setTextBaseline(textBaseline) {
|