gpt4 book ai didi

ruby-on-rails - Prawn gem 支持阿拉伯语吗?

转载 作者:太空宇宙 更新时间:2023-11-03 16:25:46 24 4
gpt4 key购买 nike

我将创建一个阿拉伯语的 pdf 报告,但字母是分开的并且顺序相反,我使用以下代码生成一个 pdf 文件

class InstitutesPdf < Prawn::Document
def initialize(institute)
super()
font(Rails.root.join("app/assets/fonts/arial.ttf"))
@institute = institute
text "Institute ID : #{@institute.id}"
move_down(30)
text "Institute name : #{@institute.name.mb_chars.to_s}"
end
end

当我将最后一行更改为

text "Institute name : #{@institute.name.mb_chars.reverse.to_s}"

单词字母按正确顺序显示但仍然分开

我使用 rails 4 和 prawn 版本 '1.1.0'

最佳答案

我开发了一个 gem 来解决这个问题,特别是与 Sinan 重构到这个项目中的 prawn 一起使用:

https://github.com/staii/arabic-letter-connector

所以在控制台中:

gem install arabic-letter-connector

然后在代码中:

require 'prawn'
require 'arabic-letter-connector'
Prawn::Document.generate("arabic.pdf") do
text_direction :rtl
font("/path/to/arabic/font.ttf") do # For example: http://www.amirifont.org/
text "مرحبا يا العالم".connect_arabic_letters
end
end

由于您有混合文本并且可能不想使用 :rtl,因此解决方法是在打印到 pdf 之前自行反转字符串。

关于ruby-on-rails - Prawn gem 支持阿拉伯语吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24651908/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com