{
  "_id": "6af32cebbe2268deb4a3a00d",
  "Package": "textshaping",
  "Title": "Bindings to the 'HarfBuzz' and 'Fribidi' Libraries for Text\nShaping",
  "Version": "1.0.5.9000",
  "Authors@R": "c(\nperson(\"Thomas Lin\", \"Pedersen\", , \"thomas.pedersen@posit.co\", role = c(\"cre\", \"aut\"),\ncomment = c(ORCID = \"0000-0002-5147-4711\")),\nperson(\"Posit Software, PBC\", role = c(\"cph\", \"fnd\"),\ncomment = c(ROR = \"03wc8by49\"))\n)",
  "Description": "Provides access to the text shaping functionality in the\n'HarfBuzz' library and the bidirectional algorithm in the\n'Fribidi' library. 'textshaping' is a low-level utility package\nmainly for graphic devices that expands upon the font tool-set\nprovided by the 'systemfonts' package.",
  "License": "MIT + file LICENSE",
  "URL": "https://github.com/r-lib/textshaping",
  "BugReports": "https://github.com/r-lib/textshaping/issues",
  "VignetteBuilder": "knitr",
  "Config/build/compilation-database": "true",
  "Config/testthat/edition": "3",
  "Config/usethis/last-upkeep": "2025-04-23",
  "Encoding": "UTF-8",
  "Roxygen": "list(markdown = TRUE)",
  "RoxygenNote": "7.3.3",
  "SystemRequirements": "freetype2, harfbuzz, fribidi",
  "Remotes": [
    "r-lib/systemfonts"
  ],
  "Config/pak/sysreqs": "libfontconfig1-dev libfreetype6-dev libfribidi-dev\nlibharfbuzz-dev libicu-dev",
  "Repository": "https://r-lib.r-universe.dev",
  "Date/Publication": "2026-11-10 11:55:51 UTC",
  "RemoteUrl": "https://github.com/r-lib/textshaping",
  "RemoteRef": "HEAD",
  "RemoteSha": "781f89fc826303473c59025c7370c17b5054c8e9",
  "NeedsCompilation": "yes",
  "Packaged": {
    "Date": "2026-11-10 13:26:09 UTC",
    "User": "root"
  },
  "Author": "Thomas Lin Pedersen [cre, aut] (ORCID:\n<https://orcid.org/0000-0002-5147-4711>),\nPosit Software, PBC [cph, fnd] (ROR: <https://ror.org/03wc8by49>)",
  "Maintainer": "Thomas Lin Pedersen <thomas.pedersen@posit.co>",
  "_user": "r-lib",
  "_type": "src",
  "_file": "textshaping_1.0.5.9000.tar.gz",
  "_fileid": "https://r2.ropensci.org/93035b25e598dafe9d26c6dbd51defc4055ab3e3c3d89f0ee41dca8be34d7fc6",
  "_filesize": 316822,
  "_sha256": "93035b25e598dafe9d26c6dbd51defc4055ab3e3c3d89f0ee41dca8be34d7fc6",
  "_expires": "2027-02-18T14:40:41.000Z",
  "_created": "2026-11-10T13:26:09.000Z",
  "_published": "2026-11-10T14:40:42.930Z",
  "_upstream": "https://github.com/r-lib/textshaping",
  "_status": "success",
  "_maintainer": {
    "name": "Thomas Lin Pedersen",
    "email": "thomas.pedersen@posit.co",
    "login": "thomasp85",
    "mastodon": "@thomasp85@fosstodon.org",
    "linkedin": "in/thomasp85",
    "orcid": "0000-0002-5147-4711",
    "twitter": "@thomasp85",
    "description": "Maker of tools focusing on data science and data visualisation",
    "uuid": 1775316
  },
  "_jobs": [
    {
      "job": 129858481718,
      "time": 135,
      "config": "linux-devel-arm64",
      "r": "4.7.0",
      "check": "OK",
      "artifact": "13768696372"
    },
    {
      "job": 129858481394,
      "time": 170,
      "config": "linux-devel-x86_64",
      "r": "4.7.0",
      "check": "OK",
      "artifact": "13768197034"
    },
    {
      "job": 129858481387,
      "time": 116,
      "config": "linux-release-arm64",
      "r": "4.6.2",
      "check": "OK",
      "artifact": "13767979687"
    },
    {
      "job": 129858481497,
      "time": 188,
      "config": "linux-release-x86_64",
      "r": "4.6.2",
      "check": "OK",
      "artifact": "13769565339"
    },
    {
      "job": 129858481464,
      "time": 126,
      "config": "macos-oldrel-arm64",
      "r": "4.5.3",
      "check": "OK",
      "artifact": "13768507242"
    },
    {
      "job": 129858481490,
      "time": 329,
      "config": "macos-oldrel-x86_64",
      "r": "4.5.3",
      "check": "OK",
      "artifact": "13770954221"
    },
    {
      "job": 129858481480,
      "time": 131,
      "config": "macos-release-arm64",
      "r": "4.6.2",
      "check": "OK",
      "artifact": "13774940381"
    },
    {
      "job": 129858481465,
      "time": 424,
      "config": "macos-release-x86_64",
      "r": "4.6.2",
      "check": "OK",
      "artifact": "13773726021"
    },
    {
      "job": 129855431200,
      "time": 285,
      "config": "source",
      "r": "4.6.2",
      "check": "OK",
      "artifact": "13767719714"
    },
    {
      "job": 129858481397,
      "time": 105,
      "config": "wasm-release",
      "r": "4.6.0",
      "check": "FAIL",
      "artifact": ""
    },
    {
      "job": 129858481378,
      "time": 206,
      "config": "windows-devel-arm64",
      "r": "4.7.0",
      "check": "OK",
      "artifact": "13769265917"
    },
    {
      "job": 129858481470,
      "time": 199,
      "config": "windows-devel-x86_64",
      "r": "4.7.0",
      "check": "OK",
      "artifact": "13767954855"
    },
    {
      "job": 129858481411,
      "time": 113,
      "config": "windows-oldrel-x86_64",
      "r": "4.5.3",
      "check": "OK",
      "artifact": "13769875630"
    },
    {
      "job": 129858481421,
      "time": 235,
      "config": "windows-release-arm64",
      "r": "4.6.2",
      "check": "OK",
      "artifact": "13768871324"
    },
    {
      "job": 129858481463,
      "time": 145,
      "config": "windows-release-x86_64",
      "r": "4.6.2",
      "check": "OK",
      "artifact": "13768351642"
    }
  ],
  "_buildurl": "https://github.com/r-universe/r-lib/actions/runs/42823590184",
  "_commit": {
    "id": "781f89fc826303473c59025c7370c17b5054c8e9",
    "author": "Michael Chirico <chiricom@google.com>",
    "committer": "GitHub <noreply@github.com>",
    "message": "Unify soft/hard wrap handling to correct line break handling for ICU 79 (#81)",
    "time": 1794311751
  },
  "_distro": "resolute",
  "_host": "GitHub-Actions",
  "_registered": true,
  "_dependencies": [
    {
      "package": "R",
      "version": ">= 3.2.0",
      "role": "Depends"
    },
    {
      "package": "cpp11",
      "version": ">= 0.2.1",
      "role": "LinkingTo"
    },
    {
      "package": "systemfonts",
      "version": ">= 1.0.0",
      "role": "LinkingTo"
    },
    {
      "package": "lifecycle",
      "role": "Imports"
    },
    {
      "package": "stats",
      "role": "Imports"
    },
    {
      "package": "stringi",
      "role": "Imports"
    },
    {
      "package": "systemfonts",
      "version": ">= 1.3.2.9000",
      "role": "Imports"
    },
    {
      "package": "utils",
      "role": "Imports"
    },
    {
      "package": "covr",
      "role": "Suggests"
    },
    {
      "package": "grDevices",
      "role": "Suggests"
    },
    {
      "package": "grid",
      "role": "Suggests"
    },
    {
      "package": "knitr",
      "role": "Suggests"
    },
    {
      "package": "rmarkdown",
      "role": "Suggests"
    },
    {
      "package": "testthat",
      "version": ">= 3.3.0",
      "role": "Suggests"
    }
  ],
  "_owner": "r-lib",
  "_selfowned": true,
  "_usedby": 785,
  "_updates": [
    {
      "week": "2026-10",
      "n": 8
    },
    {
      "week": "2026-12",
      "n": 2
    },
    {
      "week": "2026-46",
      "n": 8
    }
  ],
  "_tags": [
    {
      "name": "v1.0.5",
      "date": "2026-03-06"
    }
  ],
  "_stars": 20,
  "_contributors": [
    {
      "user": "thomasp85",
      "count": 207,
      "uuid": 1775316
    },
    {
      "user": "jeroen",
      "count": 23,
      "uuid": 216319
    },
    {
      "user": "michaelchirico",
      "count": 4,
      "uuid": 7606389
    },
    {
      "user": "jimhester",
      "count": 2,
      "uuid": 205275
    },
    {
      "user": "gaborcsardi",
      "count": 1,
      "uuid": 660288
    },
    {
      "user": "bisaloo",
      "count": 1,
      "uuid": 10783929
    },
    {
      "user": "musvaage",
      "count": 1,
      "uuid": 112724366
    }
  ],
  "_userbio": {
    "uuid": 22618716,
    "type": "organization",
    "name": "R infrastructure",
    "followers": 775
  },
  "_downloads": {
    "count": 596527,
    "source": "https://cranlogs.r-pkg.org/downloads/total/last-month/textshaping"
  },
  "_devurl": "https://github.com/r-lib/textshaping",
  "_searchresults": 259,
  "_topics": [
    "harfbuzz",
    "freetype",
    "fribidi",
    "cpp"
  ],
  "_abi": {
    "exports": [
      {
        "key": "textshaping/include",
        "hash": "853e6330e882510e"
      },
      {
        "key": "textshaping::ts_string_shape()",
        "hash": "3ec67735c4233d2f"
      },
      {
        "key": "textshaping::ts_string_shape2()",
        "hash": "c8c22176fdaa8d2f"
      },
      {
        "key": "textshaping::ts_string_shape_new()",
        "hash": "8e9faab606801845"
      },
      {
        "key": "textshaping::ts_string_width()",
        "hash": "938858385d84d870"
      },
      {
        "key": "textshaping::ts_string_width2()",
        "hash": "d2361c9fcd284e8e"
      }
    ],
    "imports": [
      {
        "key": "systemfonts::check_ft_version()",
        "hash": "202e53b34f9837f5"
      },
      {
        "key": "systemfonts::detect_emoji_embedding()",
        "hash": "6b21368051738ebc"
      },
      {
        "key": "systemfonts::get_cached_face()",
        "hash": "5c576f237eea1df3"
      },
      {
        "key": "systemfonts::get_cached_face2()",
        "hash": "eab797e64b3502fe"
      },
      {
        "key": "systemfonts::get_fallback2()",
        "hash": "d4fdea216d8585b2"
      },
      {
        "key": "systemfonts::locate_font_with_features2()",
        "hash": "7e6cb6bb55f7fed9"
      }
    ]
  },
  "_rbuild": "4.6.2",
  "_assets": [
    "extra/citation.cff",
    "extra/citation.html",
    "extra/citation.json",
    "extra/citation.txt",
    "extra/contents.json",
    "extra/manual.pdf",
    "extra/NEWS.html",
    "extra/NEWS.txt",
    "extra/readme.html",
    "extra/readme.md",
    "extra/textshaping.html",
    "LICENSE"
  ],
  "_homeurl": "https://github.com/r-lib/textshaping",
  "_realowner": "r-lib",
  "_cranurl": true,
  "_releases": [
    {
      "version": "0.1.0",
      "date": "2020-09-17"
    },
    {
      "version": "0.1.1",
      "date": "2020-09-29"
    },
    {
      "version": "0.1.2",
      "date": "2020-10-08"
    },
    {
      "version": "0.2.0",
      "date": "2020-11-12"
    },
    {
      "version": "0.2.1",
      "date": "2020-11-13"
    },
    {
      "version": "0.3.0",
      "date": "2021-02-10"
    },
    {
      "version": "0.3.1",
      "date": "2021-02-22"
    },
    {
      "version": "0.3.2",
      "date": "2021-03-10"
    },
    {
      "version": "0.3.3",
      "date": "2021-03-16"
    },
    {
      "version": "0.3.4",
      "date": "2021-05-11"
    },
    {
      "version": "0.3.5",
      "date": "2021-06-09"
    },
    {
      "version": "0.3.6",
      "date": "2021-10-13"
    },
    {
      "version": "0.3.7",
      "date": "2023-10-09"
    },
    {
      "version": "0.4.0",
      "date": "2024-05-24"
    },
    {
      "version": "0.4.1",
      "date": "2024-12-06"
    },
    {
      "version": "1.0.0",
      "date": "2025-01-20"
    },
    {
      "version": "1.0.1",
      "date": "2025-05-01"
    },
    {
      "version": "1.0.2",
      "date": "2025-09-01"
    },
    {
      "version": "1.0.3",
      "date": "2025-09-02"
    },
    {
      "version": "1.0.4",
      "date": "2025-10-10"
    },
    {
      "version": "1.0.5",
      "date": "2026-03-06"
    }
  ],
  "_exports": [
    "get_font_features",
    "grid.math",
    "lorem_bidi",
    "lorem_text",
    "math_grob",
    "plot_math",
    "plot_shape",
    "shape_math",
    "shape_text",
    "text_width"
  ],
  "_help": [
    {
      "page": "get_font_features",
      "title": "Get available OpenType features in a font",
      "topics": [
        "get_font_features"
      ]
    },
    {
      "page": "lorem_text",
      "title": "Get gibberish text in various scripts",
      "topics": [
        "lorem_bidi",
        "lorem_text"
      ]
    },
    {
      "page": "math_grob",
      "title": "Create a grid grob for a math expression",
      "topics": [
        "grid.math",
        "math_grob"
      ]
    },
    {
      "page": "plot_math",
      "title": "Preview shaped math expression",
      "topics": [
        "plot_math"
      ]
    },
    {
      "page": "plot_shape",
      "title": "Preview shaped text and the metrics for the text box",
      "topics": [
        "plot_shape"
      ]
    },
    {
      "page": "shape_math",
      "title": "Shape math expression (LaTeX or Typst)",
      "topics": [
        "shape_math"
      ]
    },
    {
      "page": "shape_text",
      "title": "Calculate glyph positions for strings",
      "topics": [
        "shape_text"
      ]
    },
    {
      "page": "text_width",
      "title": "Calculate the width of a string, ignoring new-lines",
      "topics": [
        "text_width"
      ]
    }
  ],
  "_readme": "https://github.com/r-lib/textshaping/raw/HEAD/README.md",
  "_rundeps": [
    "base64enc",
    "cli",
    "cpp11",
    "jsonlite",
    "lifecycle",
    "rlang",
    "stringi",
    "systemfonts"
  ],
  "_sysdeps": [
    {
      "shlib": "libharfbuzz",
      "package": "libharfbuzz0b",
      "headers": "libharfbuzz-dev",
      "source": "harfbuzz",
      "version": "12.3.2-2",
      "name": "harfbuzz",
      "homepage": "https://harfbuzz.github.io/",
      "description": "OpenType text shaping engine (shared library)"
    },
    {
      "shlib": "libfreetype",
      "package": "libfreetype6",
      "headers": "libfreetype-dev",
      "source": "freetype",
      "version": "2.14.2+dfsg-1ubuntu0.2",
      "name": "freetype",
      "homepage": "https://freetype.org",
      "description": "Freetype 2 font engine, shared library files"
    },
    {
      "shlib": "libfribidi",
      "package": "libfribidi0",
      "headers": "libfribidi-dev",
      "source": "fribidi",
      "version": "1.0.16-5",
      "name": "fribidi",
      "homepage": "http://www.fribidi.org/",
      "description": "Free Implementation of the Unicode BiDi algorithm"
    },
    {
      "shlib": "libstdc++",
      "package": "libstdc++6",
      "source": "gcc",
      "version": "16-20260322-1ubuntu1",
      "name": "c++",
      "homepage": "http://gcc.gnu.org/",
      "description": "GNU Standard C++ Library v3"
    }
  ],
  "_vignettes": [
    {
      "source": "c_interface.Rmd",
      "filename": "c_interface.html",
      "title": "textshaping C interface",
      "engine": "knitr::rmarkdown",
      "headings": [
        "String width",
        "String shape"
      ],
      "created": "2020-08-27 10:11:53",
      "modified": "2025-06-11 06:28:09",
      "commits": 5
    }
  ],
  "_score": 13.816193286133851,
  "_indexed": true,
  "_nocasepkg": "textshaping",
  "_universes": [
    "r-lib",
    "thomasp85"
  ],
  "_binaries": [
    {
      "r": "4.6.0",
      "os": "wasm",
      "version": "1.0.5.9000",
      "date": "2026-11-10T10:10:37.000Z",
      "arch": "emscripten",
      "commit": "2acea2f09d8973da9f834b232b53ff78cdf71192",
      "fileid": "https://r2.ropensci.org/893fad108485fc575b7b520cc273ac231606d0c006e2e37e4ecaa05c90aa7c95",
      "status": "success",
      "buildurl": "https://github.com/r-universe/r-lib/actions/runs/42795892365"
    },
    {
      "r": "4.7.0",
      "os": "linux",
      "version": "1.0.5.9000",
      "date": "2026-11-10T13:28:34.000Z",
      "distro": "resolute",
      "arch": "aarch64",
      "commit": "781f89fc826303473c59025c7370c17b5054c8e9",
      "fileid": "https://r2.ropensci.org/2d5689ef96ec6cf38007939fa49f198f6dfa0461b39427e4704eb643e51a9e67",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/r-lib/actions/runs/42823590184"
    },
    {
      "r": "4.7.0",
      "os": "linux",
      "version": "1.0.5.9000",
      "date": "2026-11-10T13:29:02.000Z",
      "distro": "resolute",
      "arch": "x86_64",
      "commit": "781f89fc826303473c59025c7370c17b5054c8e9",
      "fileid": "https://r2.ropensci.org/4c7f1f3ecac5e0bd04974f1f3aa68005a16a8fbd0da67b0d7e45f52a68f36640",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/r-lib/actions/runs/42823590184"
    },
    {
      "r": "4.6.2",
      "os": "linux",
      "version": "1.0.5.9000",
      "date": "2026-11-10T13:28:12.000Z",
      "distro": "resolute",
      "arch": "aarch64",
      "commit": "781f89fc826303473c59025c7370c17b5054c8e9",
      "fileid": "https://r2.ropensci.org/147cc3aa5d5939c0e7216f941323b9f7474387be801ec488ce26e3d01c15f193",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/r-lib/actions/runs/42823590184"
    },
    {
      "r": "4.6.2",
      "os": "linux",
      "version": "1.0.5.9000",
      "date": "2026-11-10T13:29:13.000Z",
      "distro": "resolute",
      "arch": "x86_64",
      "commit": "781f89fc826303473c59025c7370c17b5054c8e9",
      "fileid": "https://r2.ropensci.org/0b763a47d8d3f7e1498c4b549496981ccedcdaf791a197aea0b7d89c3a40c446",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/r-lib/actions/runs/42823590184"
    },
    {
      "r": "4.5.3",
      "os": "mac",
      "version": "1.0.5.9000",
      "date": "2026-11-10T13:34:53.000Z",
      "arch": "aarch64",
      "commit": "781f89fc826303473c59025c7370c17b5054c8e9",
      "fileid": "https://r2.ropensci.org/deaf8da0a173537dd4e7e651b15c61f8e596375e694ca6196bad1d8efde9bd62",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/r-lib/actions/runs/42823590184"
    },
    {
      "r": "4.5.3",
      "os": "mac",
      "version": "1.0.5.9000",
      "date": "2026-11-10T14:18:09.000Z",
      "arch": "x86_64",
      "commit": "781f89fc826303473c59025c7370c17b5054c8e9",
      "fileid": "https://r2.ropensci.org/dee0f850eace0b2a1d9a57443da274f624af02bdbdbbbea7e200449ddea48c62",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/r-lib/actions/runs/42823590184"
    },
    {
      "r": "4.6.2",
      "os": "mac",
      "version": "1.0.5.9000",
      "date": "2026-11-10T14:39:41.000Z",
      "arch": "aarch64",
      "commit": "781f89fc826303473c59025c7370c17b5054c8e9",
      "fileid": "https://r2.ropensci.org/35049fe08ccf1b3ef29eb1c325dcb21f337883aad25a58925895a0bb29c7b3f9",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/r-lib/actions/runs/42823590184"
    },
    {
      "r": "4.6.2",
      "os": "mac",
      "version": "1.0.5.9000",
      "date": "2026-11-10T14:29:32.000Z",
      "arch": "x86_64",
      "commit": "781f89fc826303473c59025c7370c17b5054c8e9",
      "fileid": "https://r2.ropensci.org/2f5a13b906e27af17810fe48d51df2cace551d7e6e6e970cc2b4616ae109b119",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/r-lib/actions/runs/42823590184"
    },
    {
      "r": "4.7.0",
      "os": "win",
      "version": "1.0.5.9000",
      "date": "2026-11-10T13:29:08.000Z",
      "arch": "aarch64",
      "commit": "781f89fc826303473c59025c7370c17b5054c8e9",
      "fileid": "https://r2.ropensci.org/6d4acb6a08b33de895721c33c4a9cf4a6ba0aec6053b507a0c67ec0aadacfb64",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/r-lib/actions/runs/42823590184"
    },
    {
      "r": "4.7.0",
      "os": "win",
      "version": "1.0.5.9000",
      "date": "2026-11-10T13:28:05.000Z",
      "arch": "x86_64",
      "commit": "781f89fc826303473c59025c7370c17b5054c8e9",
      "fileid": "https://r2.ropensci.org/e96f8ea3ddcd4db50d785fa14a0e7fc27a3a637ada9aa8f5cc5a04e1514e9ce9",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/r-lib/actions/runs/42823590184"
    },
    {
      "r": "4.5.3",
      "os": "win",
      "version": "1.0.5.9000",
      "date": "2026-11-10T13:27:33.000Z",
      "arch": "x86_64",
      "commit": "781f89fc826303473c59025c7370c17b5054c8e9",
      "fileid": "https://r2.ropensci.org/335d40f44f2605435427fa90196e4207b30a78b21f56899503fc0c5f240d08cb",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/r-lib/actions/runs/42823590184"
    },
    {
      "r": "4.6.2",
      "os": "win",
      "version": "1.0.5.9000",
      "date": "2026-11-10T13:29:35.000Z",
      "arch": "aarch64",
      "commit": "781f89fc826303473c59025c7370c17b5054c8e9",
      "fileid": "https://r2.ropensci.org/52cf8c4b513a427f4efcc30a4393dcbffb49d9d728810396e158b806354f397f",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/r-lib/actions/runs/42823590184"
    },
    {
      "r": "4.6.2",
      "os": "win",
      "version": "1.0.5.9000",
      "date": "2026-11-10T13:27:47.000Z",
      "arch": "x86_64",
      "commit": "781f89fc826303473c59025c7370c17b5054c8e9",
      "fileid": "https://r2.ropensci.org/cc109939510de29c5d4d46c95399fc8a4af53f133d0d33775bcf1401ab03c598",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/r-lib/actions/runs/42823590184"
    }
  ]
}