{"_id":"@ads.silva/textkit","name":"@ads.silva/textkit","dist-tags":{"latest":"4.0.0"},"versions":{"4.0.0":{"name":"@ads.silva/textkit","license":"MIT","version":"4.0.0","description":"An advanced text layout framework","main":"./lib/textkit.cjs.js","module":"./lib/textkit.es.js","repository":{"type":"git","url":"git+https://github.com/diegomura/react-pdf.git","directory":"packages/textkit"},"contributors":[{"name":"Devon Govett","email":"devongovett@gmail.com"},{"name":"Diego Muracciole","email":"diegomuracciole@gmail.com"}],"scripts":{"test":"jest","build":"rimraf ./lib && rollup -c","watch":"rimraf ./lib && rollup -c -w"},"dependencies":{"@babel/runtime":"^7.16.4","@ads.silva/fns":"1.0.0","hyphen":"^1.6.4","unicode-properties":"^1.4.1"},"gitHead":"f207c177650d9109b80b2983434fa3741ac485f9","bugs":{"url":"https://github.com/diegomura/react-pdf/issues"},"homepage":"https://github.com/diegomura/react-pdf#readme","_id":"@ads.silva/textkit@4.0.0","_nodeVersion":"16.15.1","_npmVersion":"8.11.0","dist":{"integrity":"sha512-0HjlKrZXD9RSXrXPCQUuZG8m29qUpnn2TCA3ZAtl1CjTF5b6L8fCwjPm11/vJK9+NuJSlBlGnwO11RCczU0zcA==","shasum":"79ba3e3652d90fb1edf4a4c34496579a8da89019","tarball":"https://registry.npmjs.org/@ads.silva/textkit/-/textkit-4.0.0.tgz","fileCount":4,"unpackedSize":172405,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCmskyigrjWySA90dgXeB/QmVaFaSuemqozUMY86q/NPAIhAPHnCKL8yQRIXjY5WLhSgL62xBUWpmE41z/j/xVzhYiE"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJi9V91ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoXig//QUvyz+hhAsau/KLoUdbLGQRqUgWg0errB/T6uUocFaoqOFN/\r\nOc5G6/HMMyi+q8Qg+DxDoXKbdhvSJv3vcevDDYjM1hNBXtJTC+edacljMeke\r\nSkvkbpohYPg5ke2E2k4OFnmghzSzbEwFjH3Os+MAmcZvwBv3SnhqHp9agL6l\r\njdw1mPojTkA05fXWLWAHucJapcn4rh4BV9ml2Kl1Q2clJxFAeLWY/9tew4bR\r\nxTzA4CAuXy9fPNt2dRb4b+shUG3IY28WoYVVi5DeCaqjj7m4Gu0VdPp7maGn\r\nzry7B/Bm0pFAq72617X7LWnOck79vNfMCN6iiDBU2E5Z7NkEDtW99TIvfDWq\r\nMDasK7JzuGhqSCcvMbvJwnqBxe/HDgFVD05ABAVUvrwqmf9ZrVPwuEmMRoIh\r\nmivSIkvq7+knYhZ/cKh7r7VUVEDRgrysATIviAnaDwfwj5mVvZ3VJ9SRr0VF\r\nsfA92RlOKsIGOPbpGj4MRfNZRKgafo5MYdWN/uK4D2bVRy2tX/YQGPBsrDbD\r\n6prXaeYjchfZpxi/GVuigosaN/qklT7P/8Rn8ehZRNJ7eGZa/al4ijx0DCvu\r\niXarVbiIPZMaVU/JqKgPxOY63BhmF2bUBtZpvPLrpFjBdpm6uDatKFgp9/Ao\r\nuCmS+Xd1UD2lC8luU8sVNNfOH6HHd2b6pPQ=\r\n=A222\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"ads.silva","email":"dautodroid@gmail.com"},"directories":{},"maintainers":[{"name":"ads.silva","email":"dautodroid@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/textkit_4.0.0_1660247924987_0.05253692432677548"},"_hasShrinkwrap":false}},"time":{"created":"2022-08-11T19:58:44.918Z","4.0.0":"2022-08-11T19:58:45.162Z","modified":"2022-08-11T19:58:45.283Z"},"maintainers":[{"name":"ads.silva","email":"dautodroid@gmail.com"}],"description":"An advanced text layout framework","homepage":"https://github.com/diegomura/react-pdf#readme","repository":{"type":"git","url":"git+https://github.com/diegomura/react-pdf.git","directory":"packages/textkit"},"contributors":[{"name":"Devon Govett","email":"devongovett@gmail.com"},{"name":"Diego Muracciole","email":"diegomuracciole@gmail.com"}],"bugs":{"url":"https://github.com/diegomura/react-pdf/issues"},"license":"MIT","readme":"<p align=\"center\">\n  <img src=\"https://user-images.githubusercontent.com/5600341/27505816-c8bc37aa-587f-11e7-9a86-08a2d081a8b9.png\" height=\"280px\">\n</p>\n\n# @ads.silva/textkit\n\n## Acknowledges\n\nThis project is a fork of [textkit](https://github.com/foliojs/textkit) by @devongovett and continued under the scope of this project since it has react-pdf specific features. Any recongnition should go to him and the original project mantainers.\n\n## Layout process\n\n1. split into paragraphs\n2. get bidi runs and paragraph direction\n3. font substitution - map to resolved font runs\n4. script itemization\n5. font shaping - text to glyphs\n6. line breaking\n7. bidi reordering\n8. justification\n9. get a list of rectangles by intersecting path, line, and exclusion paths\n10. perform line breaking to get acceptable break points for each fragment\n11. ellipsize line if necessary\n12. bidi reordering\n13. justification\n","readmeFilename":"README.md"}