@react-native-ohos/react-native-svg 15.12.1-rc.10 → 15.12.1-rc.11
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/harmony/svg/BuildProfile.ets +16 -16
- package/harmony/svg/oh-package.json5 +1 -1
- package/harmony/svg/src/main/cpp/CMakeLists.txt +5 -0
- package/harmony/svg/src/main/cpp/SVGPackage.h +10 -0
- package/harmony/svg/src/main/cpp/SvgViewManager.cpp +3 -0
- package/harmony/svg/src/main/cpp/SvgViewManager.h +2 -0
- package/harmony/svg.har +0 -0
- package/package.json +3 -3
- package/harmony/svg/build/default/cache/default/default@HarCompileArkTS/esmodule/.ts_checker_cache +0 -3052
- package/harmony/svg/build/default/cache/default/default@HarCompileArkTS/esmodule/.tsbuildinfo +0 -1
- package/harmony/svg/build/default/cache/default/default@HarCompileArkTS/esmodule/.tsbuildinfo.linter +0 -1
- package/harmony/svg/build/default/cache/default/default@HarCompileArkTS/esmodule/compileInfo.json +0 -1
- package/harmony/svg/build/default/cache/default/default@HarCompileArkTS/esmodule/debug/compiler.cache/modules/RNSVGImageModule.ts-7c464e69f4a700eeeaae44cf66ca5fd3b3e84299010d5c3a5643612ba1a48d70.msgpack +0 -0
- package/harmony/svg/build/default/cache/default/default@HarCompileArkTS/esmodule/debug/compiler.cache/modules/RNSVGRenderableModule.ts-c2df5206c2aa9e868b7f24f706a131fff1236faaff78688ffdeec3ce25bf5d91.msgpack +0 -0
- package/harmony/svg/build/default/cache/default/default@HarCompileArkTS/esmodule/debug/compiler.cache/modules/RNSVGSvgViewModule.ts-b9a699770b693eeaa2eb98307323dc9087e44afc9c01b08d222555636b3fac0d.msgpack +0 -0
- package/harmony/svg/build/default/cache/default/default@HarCompileArkTS/esmodule/debug/compiler.cache/modules/SvgPackage.ts-08ac57d81b1742792af8813eac27abe5eca1a5714b1a5b76f97436b13abe48e4.msgpack +0 -0
- package/harmony/svg/build/default/cache/default/default@HarCompileArkTS/esmodule/debug/compiler.cache/modules/index.ets-0e520bf323178f6f973ec12f44622042dcdd19e5032efd9bd02ac5606fb58275.msgpack +0 -0
- package/harmony/svg/build/default/cache/default/default@HarCompileArkTS/esmodule/debug/compiler.cache/modules/ts.ts-1d50b47087f159616212dd3c5ecd04a204a5be09940b7dbba77a59e3a66499c2.msgpack +0 -0
- package/harmony/svg/build/default/cache/default/default@HarCompileArkTS/esmodule/debug/compiler.cache/other/pkgName2SourceRoots.msgpack +0 -1
- package/harmony/svg/build/default/cache/default/default@HarCompileArkTS/esmodule/debug/compiler.cache/plugins/plugins.msgpack +0 -0
- package/harmony/svg/build/default/cache/default/default@HarCompileArkTS/esmodule/debug/dep_info.json +0 -1
- package/harmony/svg/build/default/cache/default/default@PackageHar/BuildProfile.ets +0 -17
- package/harmony/svg/build/default/cache/default/default@PackageHar/ResourceTable.txt +0 -1
- package/harmony/svg/build/default/cache/default/default@PackageHar/build-profile.json5 +0 -9
- package/harmony/svg/build/default/cache/default/default@PackageHar/hvigorfile.ts +0 -2
- package/harmony/svg/build/default/cache/default/default@PackageHar/index.ets +0 -7
- package/harmony/svg/build/default/cache/default/default@PackageHar/oh-package-lock.json5 +0 -19
- package/harmony/svg/build/default/cache/default/default@PackageHar/oh-package.json5 +0 -1
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/Attribute.h +0 -52
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/CMakeLists.txt +0 -32
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/FallbackProps.h +0 -0
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/FontHolderBase.cpp +0 -22
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/FontHolderBase.h +0 -54
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/SVGPackage.cpp +0 -135
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/SVGPackage.h +0 -157
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/SvgArkUINode.cpp +0 -78
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/SvgArkUINode.h +0 -51
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/SvgBaseAttribute.h +0 -83
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/SvgCircle.cpp +0 -29
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/SvgCircle.h +0 -29
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/SvgClipPath.h +0 -22
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/SvgContext.cpp +0 -56
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/SvgContext.h +0 -71
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/SvgDefs.h +0 -46
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/SvgEllipse.cpp +0 -32
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/SvgEllipse.h +0 -34
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/SvgFilter.cpp +0 -505
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/SvgFilter.h +0 -112
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/SvgForeignObjectNode.cpp +0 -86
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/SvgForeignObjectNode.h +0 -81
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/SvgForeignObjectNodeDelegate.h +0 -30
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/SvgForeignProps.h +0 -39
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/SvgGradient.cpp +0 -117
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/SvgGradient.h +0 -49
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/SvgGraphic.cpp +0 -553
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/SvgGraphic.h +0 -77
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/SvgGroup.cpp +0 -93
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/SvgGroup.h +0 -41
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/SvgHost.cpp +0 -27
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/SvgHost.h +0 -38
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/SvgImage.cpp +0 -168
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/SvgImage.h +0 -52
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/SvgLine.cpp +0 -28
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/SvgLine.h +0 -32
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/SvgMarker.cpp +0 -61
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/SvgMarker.h +0 -86
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/SvgMask.cpp +0 -72
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/SvgMask.h +0 -68
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/SvgNode.cpp +0 -395
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/SvgNode.h +0 -377
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/SvgPath.cpp +0 -42
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/SvgPath.h +0 -29
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/SvgPattern.cpp +0 -77
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/SvgPattern.h +0 -64
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/SvgQuote.h +0 -87
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/SvgRect.cpp +0 -58
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/SvgRect.h +0 -33
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/SvgSvg.cpp +0 -83
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/SvgSvg.h +0 -52
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/SvgSymbol.cpp +0 -25
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/SvgSymbol.h +0 -37
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/SvgTSpan.cpp +0 -501
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/SvgTSpan.h +0 -101
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/SvgText.cpp +0 -48
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/SvgText.h +0 -29
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/SvgTextPath.cpp +0 -35
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/SvgTextPath.h +0 -51
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/SvgUse.cpp +0 -65
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/SvgUse.h +0 -46
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/SvgViewManager.cpp +0 -36
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/SvgViewManager.h +0 -37
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/TextBase.cpp +0 -20
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/TextBase.h +0 -114
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/componentInstances/RNSVGBaseComponentInstance.h +0 -212
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/componentInstances/RNSVGCircleComponentInstance.cpp +0 -31
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/componentInstances/RNSVGCircleComponentInstance.h +0 -27
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/componentInstances/RNSVGClipPathComponentInstance.cpp +0 -23
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/componentInstances/RNSVGClipPathComponentInstance.h +0 -27
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/componentInstances/RNSVGDefsComponentInstance.cpp +0 -23
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/componentInstances/RNSVGDefsComponentInstance.h +0 -28
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/componentInstances/RNSVGEllipseComponentInstance.cpp +0 -27
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/componentInstances/RNSVGEllipseComponentInstance.h +0 -27
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/componentInstances/RNSVGFeBlendComponentInstance.cpp +0 -40
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/componentInstances/RNSVGFeBlendComponentInstance.h +0 -48
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/componentInstances/RNSVGFeColorMatrixComponentInstance.cpp +0 -33
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/componentInstances/RNSVGFeColorMatrixComponentInstance.h +0 -48
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/componentInstances/RNSVGFeCompositeComponentInstance.cpp +0 -39
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/componentInstances/RNSVGFeCompositeComponentInstance.h +0 -55
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/componentInstances/RNSVGFeFloodComponentInstance.cpp +0 -33
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/componentInstances/RNSVGFeFloodComponentInstance.h +0 -49
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/componentInstances/RNSVGFeGaussianBlurComponentInstance.cpp +0 -34
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/componentInstances/RNSVGFeGaussianBlurComponentInstance.h +0 -48
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/componentInstances/RNSVGFeOffsetComponentInstance.cpp +0 -35
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/componentInstances/RNSVGFeOffsetComponentInstance.h +0 -46
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/componentInstances/RNSVGFilterComponentInstance.cpp +0 -199
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/componentInstances/RNSVGFilterComponentInstance.h +0 -48
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/componentInstances/RNSVGForeignObjectComponentInstance.cpp +0 -93
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/componentInstances/RNSVGForeignObjectComponentInstance.h +0 -55
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/componentInstances/RNSVGGroupComponentInstance.cpp +0 -32
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/componentInstances/RNSVGGroupComponentInstance.h +0 -31
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/componentInstances/RNSVGImageComponentInstance.cpp +0 -103
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/componentInstances/RNSVGImageComponentInstance.h +0 -43
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/componentInstances/RNSVGLineComponentInstance.cpp +0 -27
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/componentInstances/RNSVGLineComponentInstance.h +0 -27
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/componentInstances/RNSVGLinearGradientComponentInstance.cpp +0 -30
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/componentInstances/RNSVGLinearGradientComponentInstance.h +0 -28
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/componentInstances/RNSVGMarkerComponentInstance.cpp +0 -35
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/componentInstances/RNSVGMarkerComponentInstance.h +0 -27
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/componentInstances/RNSVGMaskComponentInstance.cpp +0 -30
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/componentInstances/RNSVGMaskComponentInstance.h +0 -27
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/componentInstances/RNSVGPathComponentInstance.cpp +0 -33
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/componentInstances/RNSVGPathComponentInstance.h +0 -29
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/componentInstances/RNSVGPatternComponentInstance.cpp +0 -40
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/componentInstances/RNSVGPatternComponentInstance.h +0 -27
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/componentInstances/RNSVGRadialGradientComponentInstance.cpp +0 -32
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/componentInstances/RNSVGRadialGradientComponentInstance.h +0 -28
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/componentInstances/RNSVGRectComponentInstance.cpp +0 -36
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/componentInstances/RNSVGRectComponentInstance.h +0 -27
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/componentInstances/RNSVGSvgViewComponentInstance.cpp +0 -124
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/componentInstances/RNSVGSvgViewComponentInstance.h +0 -56
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/componentInstances/RNSVGSymbolComponentInstance.cpp +0 -30
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/componentInstances/RNSVGSymbolComponentInstance.h +0 -27
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/componentInstances/RNSVGTSpanComponentInstance.cpp +0 -27
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/componentInstances/RNSVGTSpanComponentInstance.h +0 -27
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/componentInstances/RNSVGTextComponentInstance.cpp +0 -25
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/componentInstances/RNSVGTextComponentInstance.h +0 -27
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/componentInstances/RNSVGTextPathComponentInstance.cpp +0 -32
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/componentInstances/RNSVGTextPathComponentInstance.h +0 -27
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/componentInstances/RNSVGUseComponentInstance.cpp +0 -32
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/componentInstances/RNSVGUseComponentInstance.h +0 -32
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/downloadUtils/HttpTaskProcessor.cpp +0 -266
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/downloadUtils/HttpTaskProcessor.h +0 -88
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/downloadUtils/ImageSourceResolver.cpp +0 -134
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/downloadUtils/ImageSourceResolver.h +0 -93
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/downloadUtils/LRUCache.h +0 -98
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/drawing/Brush.cpp +0 -50
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/drawing/Brush.h +0 -52
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/drawing/GlyPathBag.cpp +0 -20
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/drawing/GlyPathBag.h +0 -31
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/drawing/Matrix.cpp +0 -100
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/drawing/Matrix.h +0 -68
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/drawing/Path.cpp +0 -173
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/drawing/Path.h +0 -127
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/drawing/Pen.cpp +0 -57
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/drawing/Pen.h +0 -59
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/drawing/Rect.cpp +0 -47
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/drawing/Rect.h +0 -56
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/drawing/RoundRect.cpp +0 -24
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/drawing/RoundRect.h +0 -39
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/drawing/ShaderEffect.cpp +0 -37
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/drawing/ShaderEffect.h +0 -51
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/drawing/TextStyle.cpp +0 -49
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/drawing/TextStyle.h +0 -41
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/drawing/Typography.cpp +0 -9
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/drawing/Typography.h +0 -25
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/drawing/TypographyStyle.cpp +0 -31
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/drawing/TypographyStyle.h +0 -41
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/generated/RNOH/generated/components/RNSVGCircleJSIBinder.h +0 -54
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/generated/RNOH/generated/components/RNSVGClipPathJSIBinder.h +0 -54
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/generated/RNOH/generated/components/RNSVGDefsJSIBinder.h +0 -38
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/generated/RNOH/generated/components/RNSVGEllipseJSIBinder.h +0 -55
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/generated/RNOH/generated/components/RNSVGFeBlendJSIBinder.h +0 -26
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/generated/RNOH/generated/components/RNSVGFeColorMatrixJSIBinder.h +0 -26
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/generated/RNOH/generated/components/RNSVGFeCompositeJSIBinder.h +0 -30
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/generated/RNOH/generated/components/RNSVGFeFloodJSIBinder.h +0 -26
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/generated/RNOH/generated/components/RNSVGFeGaussianBlurJSIBinder.h +0 -27
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/generated/RNOH/generated/components/RNSVGFeOffsetJSIBinder.h +0 -26
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/generated/RNOH/generated/components/RNSVGFilterJSIBinder.h +0 -44
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/generated/RNOH/generated/components/RNSVGForeignObjectJSIBinder.h +0 -57
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/generated/RNOH/generated/components/RNSVGGroupJSIBinder.h +0 -54
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/generated/RNOH/generated/components/RNSVGImageJSIBinder.h +0 -58
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/generated/RNOH/generated/components/RNSVGLineJSIBinder.h +0 -55
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/generated/RNOH/generated/components/RNSVGLinearGradientJSIBinder.h +0 -45
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/generated/RNOH/generated/components/RNSVGMarkerJSIBinder.h +0 -66
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/generated/RNOH/generated/components/RNSVGMaskJSIBinder.h +0 -60
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/generated/RNOH/generated/components/RNSVGPathJSIBinder.h +0 -52
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/generated/RNOH/generated/components/RNSVGPatternJSIBinder.h +0 -67
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/generated/RNOH/generated/components/RNSVGRadialGradientJSIBinder.h +0 -47
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/generated/RNOH/generated/components/RNSVGRectJSIBinder.h +0 -57
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/generated/RNOH/generated/components/RNSVGSvgViewAndroidJSIBinder.h +0 -67
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/generated/RNOH/generated/components/RNSVGSvgViewJSIBinder.h +0 -36
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/generated/RNOH/generated/components/RNSVGSymbolJSIBinder.h +0 -60
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/generated/RNOH/generated/components/RNSVGTSpanJSIBinder.h +0 -66
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/generated/RNOH/generated/components/RNSVGTextJSIBinder.h +0 -65
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/generated/RNOH/generated/components/RNSVGTextPathJSIBinder.h +0 -71
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/generated/RNOH/generated/components/RNSVGUseJSIBinder.h +0 -56
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/generated/react/renderer/components/react_native_svg/ComponentDescriptors.h +0 -48
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/generated/react/renderer/components/react_native_svg/EventEmitters.cpp +0 -20
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/generated/react/renderer/components/react_native_svg/EventEmitters.h +0 -253
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/generated/react/renderer/components/react_native_svg/Props.cpp +0 -977
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/generated/react/renderer/components/react_native_svg/Props.h +0 -1280
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/generated/react/renderer/components/react_native_svg/ShadowNodes.cpp +0 -45
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/generated/react/renderer/components/react_native_svg/ShadowNodes.h +0 -331
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/generated/react/renderer/components/react_native_svg/States.cpp +0 -18
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/generated/react/renderer/components/react_native_svg/States.h +0 -441
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/properties/Color.cpp +0 -458
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/properties/Color.h +0 -144
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/properties/Decoration.cpp +0 -41
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/properties/Decoration.h +0 -483
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/properties/Dimension.cpp +0 -64
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/properties/Dimension.h +0 -257
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/properties/Font.cpp +0 -166
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/properties/Font.h +0 -163
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/properties/Offset.h +0 -119
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/properties/PaintState.h +0 -240
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/properties/Rect.h +0 -423
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/properties/Size.h +0 -246
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/properties/SvgPaintState.h +0 -452
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/properties/TextProperties.cpp +0 -91
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/properties/TextProperties.h +0 -56
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/properties/ViewBox.h +0 -108
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/svgImage/RNSVGImageComponentDescriptor.h +0 -41
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/svgImage/RNSVGImageShadowNode.cpp +0 -62
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/svgImage/RNSVGImageShadowNode.h +0 -63
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/svgImage/RNSVGImageState.cpp +0 -17
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/svgImage/RNSVGImageState.h +0 -58
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/turboModules/RNSVGImageModule.cpp +0 -83
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/turboModules/RNSVGImageModule.h +0 -32
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/turboModules/RNSVGRenderableModule.cpp +0 -101
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/turboModules/RNSVGRenderableModule.h +0 -32
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/turboModules/RNSVGSvgViewModule.cpp +0 -71
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/turboModules/RNSVGSvgViewModule.h +0 -32
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/utils/DynamicUtils.h +0 -55
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/utils/FilterManager.h +0 -190
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/utils/GlyphContext.cpp +0 -221
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/utils/GlyphContext.h +0 -106
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/utils/LinearMap.h +0 -69
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/utils/PathParserUtils.cpp +0 -591
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/utils/PathParserUtils.h +0 -93
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/utils/StringUtils.cpp +0 -134
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/utils/StringUtils.h +0 -644
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/utils/SvgAttributesParser.cpp +0 -239
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/utils/SvgAttributesParser.h +0 -277
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/utils/SvgMarkerPositionUtils.h +0 -200
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/utils/SvgUtils.h +0 -176
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/utils/TextPathHelper.cpp +0 -94
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/utils/TextPathHelper.h +0 -61
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/ets/RNSVGImageModule.ts +0 -21
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/ets/RNSVGRenderableModule.ts +0 -16
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/ets/RNSVGSvgViewModule.ts +0 -18
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/ets/SvgPackage.ts +0 -58
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/module.json +0 -30
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/resources/base/element/string.json +0 -8
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/resources/en_US/element/string.json +0 -8
- package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/resources/zh_CN/element/string.json +0 -8
- package/harmony/svg/build/default/cache/default/default@PackageHar/ts.ts +0 -8
- package/harmony/svg/build/default/generated/pm/default/oh-package.json5 +0 -1
- package/harmony/svg/build/default/generated/r/default/ResourceTable.h +0 -24
- package/harmony/svg/build/default/intermediates/loader/default/loader.json +0 -26
- package/harmony/svg/build/default/intermediates/merge_profile/default/module.json +0 -27
- package/harmony/svg/build/default/intermediates/patch/default/base_native_libs.json +0 -1
- package/harmony/svg/build/default/intermediates/process_profile/default/module.json +0 -30
- package/harmony/svg/build/default/intermediates/res/default/ResourceTable.txt +0 -1
- package/harmony/svg/build/default/intermediates/res/default/ark_module.json +0 -1
- package/harmony/svg/build/default/intermediates/res/default/ids_map/id_defined.json +0 -7
- package/harmony/svg/build/default/intermediates/res/default/module.json +0 -28
- package/harmony/svg/build/default/intermediates/res/default/opt-compression.json +0 -1
- package/harmony/svg/build/default/intermediates/res/default/resConfig.json +0 -1
- package/harmony/svg/build/default/intermediates/res/default/resources/rawfile/rnoh.profdata +0 -0
- package/harmony/svg/build/default/intermediates/res/default/resources.index +0 -0
- package/harmony/svg/build/default/outputs/default/svg.har +0 -0
package/harmony/svg/build/default/cache/default/default@PackageHar/src/main/cpp/utils/StringUtils.h
DELETED
|
@@ -1,644 +0,0 @@
|
|
|
1
|
-
/*
|
|
2
|
-
* Copyright (c) 2024 Huawei Device Co., Ltd. All rights reserved
|
|
3
|
-
* Use of this source code is governed by a MIT license that can be
|
|
4
|
-
* found in the LICENSE file.
|
|
5
|
-
*
|
|
6
|
-
* This file incorporates from the OpenHarmony project, licensed under
|
|
7
|
-
* the Apache License, Version 2.0. Specifically:
|
|
8
|
-
* - [OpenHarmony/arkui_ace_engine] (https://gitee.com/openharmony/arkui_ace_engine)
|
|
9
|
-
*
|
|
10
|
-
* Licensed under the Apache License, Version 2.0 (the "License"); you may not
|
|
11
|
-
* use this file except in compliance with the License. You may obtain a copy
|
|
12
|
-
* of the License at:
|
|
13
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
14
|
-
*
|
|
15
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
16
|
-
* distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
|
|
17
|
-
* WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
|
|
18
|
-
* License for the specific language governing permissions and limitations
|
|
19
|
-
* under the License.
|
|
20
|
-
*/
|
|
21
|
-
|
|
22
|
-
// from ArkUI "frameworks/base/utils/string_utils.h"
|
|
23
|
-
#pragma once
|
|
24
|
-
|
|
25
|
-
#include <climits>
|
|
26
|
-
#include <cmath>
|
|
27
|
-
#include <codecvt>
|
|
28
|
-
#include <cstring>
|
|
29
|
-
#include <locale>
|
|
30
|
-
#include <sstream>
|
|
31
|
-
#include <string>
|
|
32
|
-
#include <vector>
|
|
33
|
-
#include "properties/Dimension.h"
|
|
34
|
-
#include "utils/SvgUtils.h"
|
|
35
|
-
#include "native_drawing/drawing_bitmap.h"
|
|
36
|
-
|
|
37
|
-
namespace rnoh {
|
|
38
|
-
namespace svg {
|
|
39
|
-
|
|
40
|
-
namespace StringUtils {
|
|
41
|
-
extern const char DEFAULT_STRING[];
|
|
42
|
-
extern const std::wstring DEFAULT_WSTRING;
|
|
43
|
-
extern const std::u16string DEFAULT_USTRING;
|
|
44
|
-
extern const std::u32string DEFAULT_U32STRING;
|
|
45
|
-
constexpr int32_t TEXT_CASE_LOWERCASE = 1;
|
|
46
|
-
constexpr int32_t TEXT_CASE_UPPERCASE = 2;
|
|
47
|
-
constexpr double PERCENT_VALUE = 100.0;
|
|
48
|
-
constexpr double DEGREES_VALUE = 360.0; // one turn means 360 deg
|
|
49
|
-
constexpr double GRADIANS_VALUE = 400.0; // one turn means 400 grad
|
|
50
|
-
constexpr double RADIANS_VALUE = 2 * M_PI; // one turn means 2*pi rad
|
|
51
|
-
const char ELLIPSIS[] = "...";
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
inline bool NotInUtf16Bmp(char16_t c) { return (c & 0xF800) == 0xD800; }
|
|
55
|
-
|
|
56
|
-
inline bool NotInBmp(wchar_t ch) { return ch >= 0xD800 && ch <= 0xDBFF; }
|
|
57
|
-
|
|
58
|
-
inline bool IsNumber(const std::string &value) {
|
|
59
|
-
if (value.empty()) {
|
|
60
|
-
return false;
|
|
61
|
-
}
|
|
62
|
-
return std::all_of(value.begin(), value.end(), [](char i) { return isdigit(i); });
|
|
63
|
-
}
|
|
64
|
-
|
|
65
|
-
inline void ReplaceSpace(std::string &data) {
|
|
66
|
-
bool isFirstSpace = true;
|
|
67
|
-
auto iter = data.begin();
|
|
68
|
-
while (iter != data.end()) {
|
|
69
|
-
if (*iter == ' ') {
|
|
70
|
-
if (isFirstSpace) {
|
|
71
|
-
iter++;
|
|
72
|
-
isFirstSpace = false;
|
|
73
|
-
} else {
|
|
74
|
-
iter = data.erase(iter);
|
|
75
|
-
}
|
|
76
|
-
} else if (*iter == '\t') {
|
|
77
|
-
*iter = ' ';
|
|
78
|
-
} else {
|
|
79
|
-
isFirstSpace = true;
|
|
80
|
-
iter++;
|
|
81
|
-
}
|
|
82
|
-
}
|
|
83
|
-
}
|
|
84
|
-
|
|
85
|
-
inline void ReplaceTabAndNewLine(std::string &data) {
|
|
86
|
-
for (auto &i : data) {
|
|
87
|
-
if (i == '\r' || i == '\n') {
|
|
88
|
-
i = ' ';
|
|
89
|
-
}
|
|
90
|
-
}
|
|
91
|
-
ReplaceSpace(data);
|
|
92
|
-
}
|
|
93
|
-
|
|
94
|
-
inline std::string RestoreEscape(const std::string &src) {
|
|
95
|
-
std::string res;
|
|
96
|
-
for (auto &c : src) {
|
|
97
|
-
switch (c) {
|
|
98
|
-
case '\n':
|
|
99
|
-
res += "\\n";
|
|
100
|
-
break;
|
|
101
|
-
case '\r':
|
|
102
|
-
res += "\\r";
|
|
103
|
-
break;
|
|
104
|
-
case '\t':
|
|
105
|
-
res += "\\t";
|
|
106
|
-
break;
|
|
107
|
-
default:
|
|
108
|
-
res.push_back(c);
|
|
109
|
-
break;
|
|
110
|
-
}
|
|
111
|
-
}
|
|
112
|
-
return res;
|
|
113
|
-
}
|
|
114
|
-
|
|
115
|
-
inline int32_t StringToInt(const std::string &value) {
|
|
116
|
-
errno = 0;
|
|
117
|
-
char *pEnd = nullptr;
|
|
118
|
-
int64_t result = std::strtol(value.c_str(), &pEnd, 10);
|
|
119
|
-
if (pEnd == value.c_str() || (result < INT_MIN || result > INT_MAX) || errno == ERANGE) {
|
|
120
|
-
return 0;
|
|
121
|
-
} else {
|
|
122
|
-
return result;
|
|
123
|
-
}
|
|
124
|
-
}
|
|
125
|
-
|
|
126
|
-
inline int64_t StringToLongInt(const std::string &value, int64_t defaultErr = 0) {
|
|
127
|
-
errno = 0;
|
|
128
|
-
char *pEnd = nullptr;
|
|
129
|
-
int64_t result = std::strtoll(value.c_str(), &pEnd, 10);
|
|
130
|
-
if (pEnd == value.c_str() || errno == ERANGE) {
|
|
131
|
-
return defaultErr;
|
|
132
|
-
} else {
|
|
133
|
-
return result;
|
|
134
|
-
}
|
|
135
|
-
}
|
|
136
|
-
|
|
137
|
-
inline uint64_t StringToLongUint(const std::string &value, uint64_t defaultErr = 0) {
|
|
138
|
-
errno = 0;
|
|
139
|
-
char *pEnd = nullptr;
|
|
140
|
-
uint64_t result = std::strtoull(value.c_str(), &pEnd, 10);
|
|
141
|
-
if (pEnd == value.c_str() || errno == ERANGE) {
|
|
142
|
-
return defaultErr;
|
|
143
|
-
} else {
|
|
144
|
-
return result;
|
|
145
|
-
}
|
|
146
|
-
}
|
|
147
|
-
|
|
148
|
-
inline uint32_t StringToUintCheck(const std::string &value, uint32_t defaultErr = 0) {
|
|
149
|
-
errno = 0;
|
|
150
|
-
char *pEnd = nullptr;
|
|
151
|
-
uint64_t result = std::strtoull(value.c_str(), &pEnd, 10);
|
|
152
|
-
if ((pEnd == value.c_str()) || ((pEnd != nullptr) && (*pEnd != '\0')) || result > UINT32_MAX || errno == ERANGE) {
|
|
153
|
-
return defaultErr;
|
|
154
|
-
} else {
|
|
155
|
-
return result;
|
|
156
|
-
}
|
|
157
|
-
}
|
|
158
|
-
|
|
159
|
-
inline uint32_t StringToUint(const std::string &value, uint32_t defaultErr = 0) {
|
|
160
|
-
errno = 0;
|
|
161
|
-
char *pEnd = nullptr;
|
|
162
|
-
uint64_t result = std::strtoull(value.c_str(), &pEnd, 10);
|
|
163
|
-
if (pEnd == value.c_str() || result > UINT32_MAX || errno == ERANGE) {
|
|
164
|
-
return defaultErr;
|
|
165
|
-
} else {
|
|
166
|
-
return result;
|
|
167
|
-
}
|
|
168
|
-
}
|
|
169
|
-
|
|
170
|
-
// generic string to double value method without success check
|
|
171
|
-
inline double StringToDouble(const std::string &value) {
|
|
172
|
-
char *pEnd = nullptr;
|
|
173
|
-
errno = 0;
|
|
174
|
-
double result = std::strtod(value.c_str(), &pEnd);
|
|
175
|
-
if (pEnd == value.c_str() || errno == ERANGE) {
|
|
176
|
-
return 0.0;
|
|
177
|
-
} else {
|
|
178
|
-
return result;
|
|
179
|
-
}
|
|
180
|
-
}
|
|
181
|
-
// string to double method with success check, and support for parsing number string with percentage case
|
|
182
|
-
inline bool StringToDouble(const std::string &value, double &result) {
|
|
183
|
-
errno = 0;
|
|
184
|
-
char *pEnd = nullptr;
|
|
185
|
-
double res = std::strtod(value.c_str(), &pEnd);
|
|
186
|
-
if (pEnd == value.c_str() || errno == ERANGE) {
|
|
187
|
-
return false;
|
|
188
|
-
} else if (pEnd != nullptr) {
|
|
189
|
-
if (std::strcmp(pEnd, "%") == 0) {
|
|
190
|
-
result = res / PERCENT_VALUE;
|
|
191
|
-
return true;
|
|
192
|
-
} else if (std::strcmp(pEnd, "") == 0) {
|
|
193
|
-
result = res;
|
|
194
|
-
return true;
|
|
195
|
-
}
|
|
196
|
-
}
|
|
197
|
-
return false;
|
|
198
|
-
}
|
|
199
|
-
|
|
200
|
-
inline float StringToFloat(const std::string &value) {
|
|
201
|
-
errno = 0;
|
|
202
|
-
char *pEnd = nullptr;
|
|
203
|
-
float result = std::strtof(value.c_str(), &pEnd);
|
|
204
|
-
if (pEnd == value.c_str() || errno == ERANGE) {
|
|
205
|
-
return 0.0f;
|
|
206
|
-
} else {
|
|
207
|
-
return result;
|
|
208
|
-
}
|
|
209
|
-
}
|
|
210
|
-
|
|
211
|
-
static Dimension FromString(const std::string &str) {
|
|
212
|
-
static const int32_t percentUnit = 100;
|
|
213
|
-
static const std::unordered_map<std::string, DimensionUnit> uMap{
|
|
214
|
-
{"px", DimensionUnit::PX}, {"vp", DimensionUnit::VP}, {"fp", DimensionUnit::FP},
|
|
215
|
-
{"%", DimensionUnit::PERCENT}, {"lpx", DimensionUnit::LPX}, {"auto", DimensionUnit::AUTO},
|
|
216
|
-
};
|
|
217
|
-
|
|
218
|
-
double value = 0.0;
|
|
219
|
-
DimensionUnit unit = DimensionUnit::FP;
|
|
220
|
-
|
|
221
|
-
if (str.empty()) {
|
|
222
|
-
return Dimension(value, unit);
|
|
223
|
-
}
|
|
224
|
-
|
|
225
|
-
for (int32_t i = str.length() - 1; i >= 0; --i) {
|
|
226
|
-
if (str[i] >= '0' && str[i] <= '9') {
|
|
227
|
-
value = StringUtils::StringToDouble(str.substr(0, i + 1));
|
|
228
|
-
auto subStr = str.substr(i + 1);
|
|
229
|
-
unit = uMap.count(subStr) ? uMap.at(subStr) : unit;
|
|
230
|
-
value = unit == DimensionUnit::PERCENT ? value / percentUnit : value;
|
|
231
|
-
break;
|
|
232
|
-
}
|
|
233
|
-
}
|
|
234
|
-
return Dimension(value, unit);
|
|
235
|
-
};
|
|
236
|
-
|
|
237
|
-
static Dimension StringToDimensionWithUnit(const std::string &value, DimensionUnit defaultUnit = DimensionUnit::PX,
|
|
238
|
-
float defaultValue = 0.0f, bool isCalc = false) {
|
|
239
|
-
errno = 0;
|
|
240
|
-
if (std::strcmp(value.c_str(), "auto") == 0) {
|
|
241
|
-
return Dimension(defaultValue, DimensionUnit::AUTO);
|
|
242
|
-
}
|
|
243
|
-
char *pEnd = nullptr;
|
|
244
|
-
double result = std::strtod(value.c_str(), &pEnd);
|
|
245
|
-
if (pEnd == value.c_str() || errno == ERANGE) {
|
|
246
|
-
return Dimension(defaultValue, defaultUnit);
|
|
247
|
-
}
|
|
248
|
-
if (pEnd != nullptr) {
|
|
249
|
-
if (std::strcmp(pEnd, "%") == 0) {
|
|
250
|
-
// Parse percent, transfer from [0, 100] to [0, 1]
|
|
251
|
-
return Dimension(result / 100.0, DimensionUnit::PERCENT);
|
|
252
|
-
}
|
|
253
|
-
if (std::strcmp(pEnd, "px") == 0) {
|
|
254
|
-
return Dimension(result, DimensionUnit::PX);
|
|
255
|
-
}
|
|
256
|
-
if (std::strcmp(pEnd, "vp") == 0) {
|
|
257
|
-
return Dimension(result, DimensionUnit::VP);
|
|
258
|
-
}
|
|
259
|
-
if (std::strcmp(pEnd, "fp") == 0) {
|
|
260
|
-
return Dimension(result, DimensionUnit::FP);
|
|
261
|
-
}
|
|
262
|
-
if (std::strcmp(pEnd, "lpx") == 0) {
|
|
263
|
-
return Dimension(result, DimensionUnit::LPX);
|
|
264
|
-
}
|
|
265
|
-
if ((std::strcmp(pEnd, "\0") == 0) && isCalc) {
|
|
266
|
-
return Dimension(result, DimensionUnit::NONE);
|
|
267
|
-
}
|
|
268
|
-
if (isCalc) {
|
|
269
|
-
return Dimension(result, DimensionUnit::INVALID);
|
|
270
|
-
}
|
|
271
|
-
}
|
|
272
|
-
return Dimension(result, defaultUnit);
|
|
273
|
-
}
|
|
274
|
-
|
|
275
|
-
inline Dimension StringToDimension(const std::string &value, bool useVp = false) {
|
|
276
|
-
return StringToDimensionWithUnit(value, useVp ? DimensionUnit::VP : DimensionUnit::PX);
|
|
277
|
-
}
|
|
278
|
-
|
|
279
|
-
static bool StringToDimensionWithUnitNG(const std::string &value, Dimension &dimensionResult,
|
|
280
|
-
DimensionUnit defaultUnit = DimensionUnit::PX, float defaultValue = 0.0f,
|
|
281
|
-
bool isCalc = false) {
|
|
282
|
-
errno = 0;
|
|
283
|
-
if (std::strcmp(value.c_str(), "auto") == 0) {
|
|
284
|
-
dimensionResult = Dimension(defaultValue, DimensionUnit::AUTO);
|
|
285
|
-
return true;
|
|
286
|
-
}
|
|
287
|
-
char *pEnd = nullptr;
|
|
288
|
-
double result = std::strtod(value.c_str(), &pEnd);
|
|
289
|
-
if (pEnd == value.c_str() || errno == ERANGE) {
|
|
290
|
-
dimensionResult = Dimension(defaultValue, defaultUnit);
|
|
291
|
-
return false;
|
|
292
|
-
}
|
|
293
|
-
if (pEnd != nullptr) {
|
|
294
|
-
if (std::strcmp(pEnd, "%") == 0) {
|
|
295
|
-
// Parse percent, transfer from [0, 100] to [0, 1]
|
|
296
|
-
dimensionResult = Dimension(result / 100.0, DimensionUnit::PERCENT);
|
|
297
|
-
return true;
|
|
298
|
-
}
|
|
299
|
-
if (std::strcmp(pEnd, "px") == 0) {
|
|
300
|
-
dimensionResult = Dimension(result, DimensionUnit::PX);
|
|
301
|
-
return true;
|
|
302
|
-
}
|
|
303
|
-
if (std::strcmp(pEnd, "vp") == 0) {
|
|
304
|
-
dimensionResult = Dimension(result, DimensionUnit::VP);
|
|
305
|
-
return true;
|
|
306
|
-
}
|
|
307
|
-
if (std::strcmp(pEnd, "fp") == 0) {
|
|
308
|
-
dimensionResult = Dimension(result, DimensionUnit::FP);
|
|
309
|
-
return true;
|
|
310
|
-
}
|
|
311
|
-
if (std::strcmp(pEnd, "lpx") == 0) {
|
|
312
|
-
dimensionResult = Dimension(result, DimensionUnit::LPX);
|
|
313
|
-
return true;
|
|
314
|
-
}
|
|
315
|
-
if ((std::strcmp(pEnd, "\0") == 0) && isCalc) {
|
|
316
|
-
dimensionResult = Dimension(result, DimensionUnit::NONE);
|
|
317
|
-
return true;
|
|
318
|
-
}
|
|
319
|
-
if (isCalc) {
|
|
320
|
-
dimensionResult = Dimension(result, DimensionUnit::INVALID);
|
|
321
|
-
return true;
|
|
322
|
-
}
|
|
323
|
-
if ((std::strcmp(pEnd, "\0") != 0)) {
|
|
324
|
-
dimensionResult = Dimension(result, DimensionUnit::NONE);
|
|
325
|
-
return false;
|
|
326
|
-
}
|
|
327
|
-
}
|
|
328
|
-
dimensionResult = Dimension(result, defaultUnit);
|
|
329
|
-
return true;
|
|
330
|
-
}
|
|
331
|
-
|
|
332
|
-
inline std::string ReplaceChar(std::string str, char old_char, char new_char) {
|
|
333
|
-
for (char &it : str) {
|
|
334
|
-
if (it == old_char) {
|
|
335
|
-
it = new_char;
|
|
336
|
-
}
|
|
337
|
-
}
|
|
338
|
-
return str;
|
|
339
|
-
}
|
|
340
|
-
|
|
341
|
-
inline double StringToDegree(const std::string &value) {
|
|
342
|
-
// https://developer.mozilla.org/zh-CN/docs/Web/CSS/angle
|
|
343
|
-
|
|
344
|
-
errno = 0;
|
|
345
|
-
char *pEnd = nullptr;
|
|
346
|
-
double result = std::strtod(value.c_str(), &pEnd);
|
|
347
|
-
if (pEnd == value.c_str() || errno == ERANGE) {
|
|
348
|
-
return 0.0;
|
|
349
|
-
} else if (pEnd) {
|
|
350
|
-
if ((std::strcmp(pEnd, "deg")) == 0) {
|
|
351
|
-
return result;
|
|
352
|
-
} else if (std::strcmp(pEnd, "grad") == 0) {
|
|
353
|
-
return result / GRADIANS_VALUE * DEGREES_VALUE;
|
|
354
|
-
} else if (std::strcmp(pEnd, "rad") == 0) {
|
|
355
|
-
return result / RADIANS_VALUE * DEGREES_VALUE;
|
|
356
|
-
} else if (std::strcmp(pEnd, "turn") == 0) {
|
|
357
|
-
return result * DEGREES_VALUE;
|
|
358
|
-
}
|
|
359
|
-
}
|
|
360
|
-
return StringToDouble(value);
|
|
361
|
-
}
|
|
362
|
-
|
|
363
|
-
// StringToDegree with check. If the string is valid, change result and return true, otherwise return false.
|
|
364
|
-
inline bool StringToDegree(const std::string &value, double &result) {
|
|
365
|
-
errno = 0;
|
|
366
|
-
char *pEnd = nullptr;
|
|
367
|
-
double temp = std::strtod(value.c_str(), &pEnd);
|
|
368
|
-
if (pEnd == value.c_str() || errno == ERANGE) {
|
|
369
|
-
return false;
|
|
370
|
-
} else if (pEnd) {
|
|
371
|
-
if (*pEnd == '\0') {
|
|
372
|
-
result = temp;
|
|
373
|
-
return true;
|
|
374
|
-
}
|
|
375
|
-
if (std::strcmp(pEnd, "deg") == 0) {
|
|
376
|
-
result = temp;
|
|
377
|
-
return true;
|
|
378
|
-
}
|
|
379
|
-
if (std::strcmp(pEnd, "grad") == 0) {
|
|
380
|
-
result = temp / GRADIANS_VALUE * DEGREES_VALUE;
|
|
381
|
-
return true;
|
|
382
|
-
}
|
|
383
|
-
if (std::strcmp(pEnd, "rad") == 0) {
|
|
384
|
-
result = temp / RADIANS_VALUE * DEGREES_VALUE;
|
|
385
|
-
return true;
|
|
386
|
-
}
|
|
387
|
-
if (std::strcmp(pEnd, "turn") == 0) {
|
|
388
|
-
result = temp * DEGREES_VALUE;
|
|
389
|
-
return true;
|
|
390
|
-
}
|
|
391
|
-
}
|
|
392
|
-
return false;
|
|
393
|
-
}
|
|
394
|
-
|
|
395
|
-
template <class T>
|
|
396
|
-
inline void StringSplitter(const std::string &source, char delimiter, T (*func)(const std::string &),
|
|
397
|
-
std::vector<T> &out) {
|
|
398
|
-
out.erase(out.begin(), out.end());
|
|
399
|
-
|
|
400
|
-
if (source.empty()) {
|
|
401
|
-
return;
|
|
402
|
-
}
|
|
403
|
-
|
|
404
|
-
std::size_t startIndex = 0;
|
|
405
|
-
for (std::size_t index = 0; index < source.size(); index++) {
|
|
406
|
-
if (source[index] != delimiter) {
|
|
407
|
-
continue;
|
|
408
|
-
}
|
|
409
|
-
|
|
410
|
-
if (index > startIndex) {
|
|
411
|
-
out.emplace_back(func(source.substr(startIndex, index - startIndex)));
|
|
412
|
-
}
|
|
413
|
-
startIndex = index + 1;
|
|
414
|
-
}
|
|
415
|
-
|
|
416
|
-
if (startIndex < source.size()) {
|
|
417
|
-
out.emplace_back(func(source.substr(startIndex)));
|
|
418
|
-
}
|
|
419
|
-
}
|
|
420
|
-
|
|
421
|
-
inline bool ParseStringToArray(const std::string &input, std::vector<float> &output) {
|
|
422
|
-
std::istringstream iss(StringUtils::ReplaceChar(input, ',', ' '));
|
|
423
|
-
std::string token;
|
|
424
|
-
|
|
425
|
-
while (iss >> token) {
|
|
426
|
-
double value;
|
|
427
|
-
if (!StringToDouble(token, value)) {
|
|
428
|
-
return false;
|
|
429
|
-
}
|
|
430
|
-
output.emplace_back(value);
|
|
431
|
-
}
|
|
432
|
-
|
|
433
|
-
return true;
|
|
434
|
-
}
|
|
435
|
-
|
|
436
|
-
inline void StringSplitter(const std::string &source, char delimiter, std::vector<std::string> &out) {
|
|
437
|
-
using Func = std::string (*)(const std::string &);
|
|
438
|
-
Func func = [](const std::string &value) { return value; };
|
|
439
|
-
StringSplitter(source, delimiter, func, out);
|
|
440
|
-
}
|
|
441
|
-
|
|
442
|
-
inline void StringSplitter(const std::string &source, char delimiter, std::vector<double> &out) {
|
|
443
|
-
using Func = double (*)(const std::string &);
|
|
444
|
-
Func func = [](const std::string &value) { return StringToDouble(value); };
|
|
445
|
-
StringSplitter(source, delimiter, func, out);
|
|
446
|
-
}
|
|
447
|
-
|
|
448
|
-
inline void StringSplitter(const std::string &source, char delimiter, std::vector<float> &out) {
|
|
449
|
-
using Func = float (*)(const std::string &);
|
|
450
|
-
Func func = [](const std::string &value) { return StringToFloat(value); };
|
|
451
|
-
StringSplitter(source, delimiter, func, out);
|
|
452
|
-
}
|
|
453
|
-
|
|
454
|
-
inline void StringSplitter(const std::string &source, char delimiter, std::vector<int> &out) {
|
|
455
|
-
using Func = int32_t (*)(const std::string &);
|
|
456
|
-
Func func = [](const std::string &value) { return StringToInt(value); };
|
|
457
|
-
StringSplitter(source, delimiter, func, out);
|
|
458
|
-
}
|
|
459
|
-
|
|
460
|
-
inline void StringSplitter(const std::string &source, char delimiter, std::vector<Dimension> &out) {
|
|
461
|
-
using Func = Dimension (*)(const std::string &);
|
|
462
|
-
Func func = [](const std::string &value) { return StringToDimension(value); };
|
|
463
|
-
StringSplitter(source, delimiter, func, out);
|
|
464
|
-
}
|
|
465
|
-
|
|
466
|
-
inline std::string DoubleToString(double value, int32_t precision = 2) {
|
|
467
|
-
std::ostringstream result;
|
|
468
|
-
result.precision(precision);
|
|
469
|
-
if (NearEqual(value, Infinity<double>())) {
|
|
470
|
-
result << "Infinity";
|
|
471
|
-
} else {
|
|
472
|
-
result << std::fixed << value;
|
|
473
|
-
}
|
|
474
|
-
return result.str();
|
|
475
|
-
}
|
|
476
|
-
|
|
477
|
-
inline void DeleteAllMark(std::string &str, const char mark) {
|
|
478
|
-
str.erase(std::remove(str.begin(), str.end(), mark), str.end());
|
|
479
|
-
}
|
|
480
|
-
|
|
481
|
-
inline std::string TrimStr(const std::string &str, char cTrim = ' ') {
|
|
482
|
-
auto firstPos = str.find_first_not_of(cTrim);
|
|
483
|
-
if (firstPos == std::string::npos) {
|
|
484
|
-
return str;
|
|
485
|
-
}
|
|
486
|
-
auto endPos = str.find_last_not_of(cTrim);
|
|
487
|
-
return str.substr(firstPos, endPos - firstPos + 1);
|
|
488
|
-
}
|
|
489
|
-
|
|
490
|
-
inline void TrimStrLeadingAndTrailing(std::string &str, char cTrim = ' ') {
|
|
491
|
-
auto firstIndexNotOfSpace = str.find_first_not_of(" ");
|
|
492
|
-
if (firstIndexNotOfSpace == std::string::npos) {
|
|
493
|
-
str = "";
|
|
494
|
-
return;
|
|
495
|
-
}
|
|
496
|
-
str.erase(0, firstIndexNotOfSpace);
|
|
497
|
-
auto lastIndexNotOfSpace = str.find_last_not_of(" ");
|
|
498
|
-
if (lastIndexNotOfSpace == std::string::npos) {
|
|
499
|
-
str = "";
|
|
500
|
-
return;
|
|
501
|
-
}
|
|
502
|
-
str.erase(lastIndexNotOfSpace + 1);
|
|
503
|
-
}
|
|
504
|
-
|
|
505
|
-
inline void SplitStr(const std::string &str, const std::string &sep, std::vector<std::string> &out,
|
|
506
|
-
bool needTrim = true) {
|
|
507
|
-
out.erase(out.begin(), out.end());
|
|
508
|
-
|
|
509
|
-
if (str.empty() || sep.empty()) {
|
|
510
|
-
return;
|
|
511
|
-
}
|
|
512
|
-
|
|
513
|
-
std::string strPart;
|
|
514
|
-
std::string::size_type startPos = 0;
|
|
515
|
-
std::string::size_type pos = str.find_first_of(sep, startPos);
|
|
516
|
-
while (pos != std::string::npos) {
|
|
517
|
-
if (pos > startPos) {
|
|
518
|
-
strPart = needTrim ? TrimStr(str.substr(startPos, pos - startPos)) : str.substr(startPos, pos - startPos);
|
|
519
|
-
out.emplace_back(std::move(strPart));
|
|
520
|
-
}
|
|
521
|
-
startPos = pos + sep.size();
|
|
522
|
-
pos = str.find_first_of(sep, startPos);
|
|
523
|
-
}
|
|
524
|
-
|
|
525
|
-
if (startPos < str.size()) {
|
|
526
|
-
strPart = needTrim ? TrimStr(str.substr(startPos)) : str.substr(startPos);
|
|
527
|
-
out.emplace_back(std::move(strPart));
|
|
528
|
-
}
|
|
529
|
-
}
|
|
530
|
-
|
|
531
|
-
inline void SplitStr(const std::string &str, const std::string &sep, std::vector<Dimension> &out,
|
|
532
|
-
bool needTrim = true) {
|
|
533
|
-
out.erase(out.begin(), out.end());
|
|
534
|
-
if (str.empty() || sep.empty()) {
|
|
535
|
-
return;
|
|
536
|
-
}
|
|
537
|
-
std::string strPart;
|
|
538
|
-
std::string::size_type startPos = 0;
|
|
539
|
-
std::string::size_type pos = str.find_first_of(sep, startPos);
|
|
540
|
-
while (pos != std::string::npos) {
|
|
541
|
-
if (pos > startPos) {
|
|
542
|
-
strPart = needTrim ? TrimStr(str.substr(startPos, pos - startPos)) : str.substr(startPos, pos - startPos);
|
|
543
|
-
if (!strPart.empty()) {
|
|
544
|
-
out.emplace_back(StringToDimension(std::move(strPart)));
|
|
545
|
-
}
|
|
546
|
-
}
|
|
547
|
-
startPos = pos + sep.size();
|
|
548
|
-
pos = str.find_first_of(sep, startPos);
|
|
549
|
-
}
|
|
550
|
-
if (startPos < str.size()) {
|
|
551
|
-
strPart = needTrim ? TrimStr(str.substr(startPos)) : str.substr(startPos);
|
|
552
|
-
if (!strPart.empty()) {
|
|
553
|
-
out.emplace_back(StringToDimension(std::move(strPart)));
|
|
554
|
-
}
|
|
555
|
-
}
|
|
556
|
-
}
|
|
557
|
-
|
|
558
|
-
inline bool StartWith(const std::string &dst, const std::string &prefix) {
|
|
559
|
-
return dst.compare(0, prefix.size(), prefix) == 0;
|
|
560
|
-
}
|
|
561
|
-
|
|
562
|
-
inline bool StartWith(const std::string &str, const char *prefix, size_t prefixLen) {
|
|
563
|
-
return ((str.length() >= prefixLen) && (str.compare(0, prefixLen, prefix) == 0));
|
|
564
|
-
}
|
|
565
|
-
|
|
566
|
-
inline bool EndWith(const std::string &dst, const std::string &suffix) {
|
|
567
|
-
return (dst.size() >= suffix.size()) && dst.compare(dst.size() - suffix.size(), suffix.size(), suffix) == 0;
|
|
568
|
-
}
|
|
569
|
-
|
|
570
|
-
inline bool EndWith(const std::string &str, const char *suffix, size_t suffixLen) {
|
|
571
|
-
size_t len = str.length();
|
|
572
|
-
return ((len >= suffixLen) && (str.compare(len - suffixLen, suffixLen, suffix) == 0));
|
|
573
|
-
}
|
|
574
|
-
|
|
575
|
-
inline void TransformStrCase(std::string &str, int32_t textCase) {
|
|
576
|
-
if (str.empty()) {
|
|
577
|
-
return;
|
|
578
|
-
}
|
|
579
|
-
|
|
580
|
-
switch (textCase) {
|
|
581
|
-
case TEXT_CASE_LOWERCASE:
|
|
582
|
-
transform(str.begin(), str.end(), str.begin(), ::tolower);
|
|
583
|
-
break;
|
|
584
|
-
case TEXT_CASE_UPPERCASE:
|
|
585
|
-
transform(str.begin(), str.end(), str.begin(), ::toupper);
|
|
586
|
-
break;
|
|
587
|
-
default:
|
|
588
|
-
break;
|
|
589
|
-
}
|
|
590
|
-
}
|
|
591
|
-
|
|
592
|
-
bool IsAscii(const std::string &str);
|
|
593
|
-
|
|
594
|
-
inline std::vector<double> stringVectorToDoubleVector(const std::vector<std::string> &stringVec,
|
|
595
|
-
const double pixelDensity) {
|
|
596
|
-
std::vector<double> doubleVec;
|
|
597
|
-
doubleVec.reserve(stringVec.size()); // 预分配内存以提高效率
|
|
598
|
-
for (const std::string &str : stringVec) {
|
|
599
|
-
auto value = StringToDouble(str);
|
|
600
|
-
doubleVec.push_back(pixelDensity * value);
|
|
601
|
-
}
|
|
602
|
-
return doubleVec;
|
|
603
|
-
}
|
|
604
|
-
|
|
605
|
-
inline std::string doubleVectorToString(const std::vector<double> &doubleVec) {
|
|
606
|
-
std::ostringstream oss;
|
|
607
|
-
for (const double &num : doubleVec) {
|
|
608
|
-
oss << num << ", "; // 将每个元素转换为字符串并拼接到流中
|
|
609
|
-
}
|
|
610
|
-
return oss.str(); // 将流中的内容转换为字符串并返回
|
|
611
|
-
}
|
|
612
|
-
|
|
613
|
-
std::string base64_encode(unsigned char const *bytes_to_encode, size_t in_len, bool url = false);
|
|
614
|
-
std::string bitmapToBase64(OH_Drawing_Bitmap *bitmap);
|
|
615
|
-
|
|
616
|
-
inline std::string getFileExtension(const std::string &uri) {
|
|
617
|
-
size_t pos = uri.rfind('.');
|
|
618
|
-
if (pos != std::string::npos) {
|
|
619
|
-
return uri.substr(pos); // 返回后缀名,包括点 ".jpg"
|
|
620
|
-
}
|
|
621
|
-
return ""; // 如果没有扩展名,返回空字符串
|
|
622
|
-
}
|
|
623
|
-
|
|
624
|
-
inline std::string generateHash(const std::string &url) {
|
|
625
|
-
std::hash<std::string> hash_fn;
|
|
626
|
-
size_t hash = hash_fn(url);
|
|
627
|
-
// 将哈希值转换为固定宽度的十六进制字符串(16位)
|
|
628
|
-
std::stringstream ss;
|
|
629
|
-
ss << std::hex << std::setw(16) << std::setfill('0') << hash;
|
|
630
|
-
return ss.str();
|
|
631
|
-
}
|
|
632
|
-
|
|
633
|
-
inline std::string generateHashedFileName(const std::string &uri) {
|
|
634
|
-
// 获取文件后缀名
|
|
635
|
-
std::string extension = StringUtils::getFileExtension(uri);
|
|
636
|
-
// 对URI进行哈希
|
|
637
|
-
std::string hash = StringUtils::generateHash(uri);
|
|
638
|
-
// 返回哈希值 + 文件后缀
|
|
639
|
-
return hash + extension;
|
|
640
|
-
}
|
|
641
|
-
|
|
642
|
-
} // namespace StringUtils
|
|
643
|
-
} // namespace svg
|
|
644
|
-
} // namespace rnoh
|