Saya mencoba menggunakan ~ / .fonts.conf untuk mengganti Helvetica dengan Droid Sans, inilah isi file tersebut:
<?xml version="1.0"?>
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
<fontconfig>
<match target="pattern">
<test qual="any" name="family"><string>Helvetica</string></test>
<edit name="family" mode="assign"><string>Droid Sans</string></edit>
</match>
</fontconfig>
tapi apa pun yang terjadi, sepertinya tidak ada yang terjadi. Saya mencoba menjalankan fc-cache, saya telah memeriksa /etc/fonts/conf.d
dan saya menemukan 50-user.conf
yang tampaknya secara eksplisit memanggil konfigurasi khusus pengguna.
Apa yang saya lewatkan?
Terima kasih
EDIT: setelah penyelidikan saya menemukan bahwa aturan lain dalam /etc/fonts/conf.d
menimpa konfigurasi pengguna, jadi menautkan user.conf
ke 00-user.conf
membantu. Tetap saja ini hanya sebagian keberhasilan, karena saya dapat menentukan font mana yang harus diganti, tetapi pengganti pilihan saya diabaikan: dengan kata lain, saya dapat membuat Helvetica
tidak valid dan sistem kembali ke font berikutnya (yaitu di browser, itu mengambil font berikutnya yang ditentukan dalam style sheet, jika tidak ada font ini menampilkan sans-serif standar).
sumber
Jawaban:
Saya pikir atribut yang mengikat tidak ada dalam konfigurasi Anda. (lihat juga font-conf ). Bergantung pada konfigurasi Anda yang lain, pengikatan "sama" atau "kuat" mungkin bekerja, sementara "lemah" mungkin tidak memberikan apa yang Anda inginkan.
sumber
binding
atribut membuat perbedaan. Saya menggunakan fontconfig-2.8.0.Saya pikir mekanisme alias akan bekerja untuk ini:
sumber
<accept>
diutamakan ketika font tidak diinstal,<prefer>
diutamakan terlepas jika font diinstal..conf
file yang berisi aturan ini dibaca terlebih dahulu.binding="strong"
digunakan bersama dengan<alias>
elemen!Apakah "fc-list" benar-benar menunjukkan "Helvetica"? Apa yang dikatakan fc-match? Di kotak saya (F-12) saya mendapatkan:
Mungkin Anda harus menambahkan font alias ke subtitusi Anda juga.
sumber
Saya mengalami masalah yang sama ketika mencoba alias Helvetica sebagai keluarga sans-serif. Bagi siapa pun yang memiliki masalah yang sama, lihat konfigurasi sistem
/etc/fonts/conf.d/
yang berisi tautan ke file-file dari/etc/fonts/conf.avail
. Saya harus menghapus banyak alias untuk mendapatkan perilaku deterministik.sumber