diff --git a/.github/workflows/rust.yml b/.github/workflows/rust.yml index 7c00dab46..13ec20ffc 100644 --- a/.github/workflows/rust.yml +++ b/.github/workflows/rust.yml @@ -19,15 +19,6 @@ jobs: steps: - name: Checkout source code uses: actions/checkout@v2 - with: - path: typst - - - name: Checkout pdf-writer - uses: actions/checkout@v2 - with: - repository: typst/pdf-writer - token: ${{ secrets.TYPSTC_ACTION_TOKEN }} - path: pdf-writer - name: Install Rust uses: actions-rs/toolchain@v1 @@ -43,16 +34,16 @@ jobs: uses: actions-rs/cargo@v1 with: command: build - args: --manifest-path typst/Cargo.toml --all-features + args: --all-features - name: Test uses: actions-rs/cargo@v1 with: command: test - args: --manifest-path typst/Cargo.toml --all-features + args: --all-features - name: Test without incremental uses: actions-rs/cargo@v1 with: command: test - args: --manifest-path typst/Cargo.toml --no-default-features --features fs + args: --no-default-features --features fs diff --git a/Cargo.toml b/Cargo.toml index 2cb23c4e8..20bd5f5c5 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -26,8 +26,8 @@ decorum = { version = "0.3.1", default-features = false, features = ["serialize- fxhash = "0.2.1" image = { version = "0.23", default-features = false, features = ["png", "jpeg"] } miniz_oxide = "0.3" -pdf-writer = { path = "../pdf-writer" } -rustybuzz = { git = "https://github.com/laurmaedje/rustybuzz" } +pdf-writer = "0.3" +rustybuzz = "0.4" serde = { version = "1", features = ["derive", "rc"] } ttf-parser = "0.12" unicode-bidi = "0.3.5" diff --git a/src/layout/shaping.rs b/src/layout/shaping.rs index d8901471c..021e9eccc 100644 --- a/src/layout/shaping.rs +++ b/src/layout/shaping.rs @@ -275,12 +275,12 @@ fn shape_segment<'a>( let info = &infos[i]; let cluster = info.cluster as usize; - if info.codepoint != 0 || !fallback { + if info.glyph_id != 0 || !fallback { // Add the glyph to the shaped output. // TODO: Don't ignore y_advance and y_offset. glyphs.push(ShapedGlyph { face_id, - glyph_id: info.codepoint as u16, + glyph_id: info.glyph_id as u16, x_advance: face.to_em(pos[i].x_advance).to_length(state.size), x_offset: face.to_em(pos[i].x_offset).to_length(state.size), text_index: base + cluster, @@ -291,7 +291,7 @@ fn shape_segment<'a>( let range = { // First, search for the end of the tofu sequence. let k = i; - while infos.get(i + 1).map_or(false, |info| info.codepoint == 0) { + while infos.get(i + 1).map_or(false, |info| info.glyph_id == 0) { i += 1; }