将unicode编码为latin1,用相似字符替换不可用字符

Encoding unicode to latin1, replacing unavailable character with similar character

当没有对应的时候,一个字符通常用单个字符代替,通常是"?"。有没有办法对字符进行编码,当丢失时,使用类似的字符,例如"ł" -> "l",而不是问号?我知道这两件事都是独立可能的。不知道有没有结合两者的解决方案

这是一个使用主动支持的示例,但如果您不适合,还有其他音译解决方案:

require 'active_support'
"łé".encode(Encoding::ISO_8859_1, fallback: proc{|c| I18n.transliterate(c)})