Патчі шрифтів OpenJDK-8 / Oracle JDK 8 для Ubuntu


8

Чи є виправлена ​​версія OpenJDK-8 або Oracle JDK 8 для Ubuntu 14.10, яка виправляє некрасиві шрифти в додатках Java (продукти Jetbrains, Netbeans тощо)?

Раніше я встановив виправлену версію OpenJDK7 для Ubuntu 14.04 у цій статті, але вона, здається, не доступна для 14.10. Я також не зміг знайти виправлену версію для OpenJDK8 / OracleJDK8.

Якщо є якась виправлена ​​версія або патч для OpenJDK8 / OracleJDK8, який я міг би встановити, я дуже буду вдячний, якщо хтось може вказати на це.

Дякую.


Сучасні версії IntelliJ представляють власний JVM. Швидше за все, вдасться впоратися з подібними речами.
Thorbjørn Ravn Andersen

Відповіді:


9

Прочитавши різні підручники та поплутавшись з купою виправлень, я знайшов спосіб, який ідеально працює.

Перш за все завантажте JDK 8 з Oracle і виконайте наступні рядки в терміналі:

cd Downloads
tar -xvf jdk-8u25-linux-x64.tar.gz
rm jdk-8u25-linux-x64.tar.gz
sudo mkdir -p /usr/lib/jvm/
sudo mv jdk1.8.0_25 /usr/lib/jvm/

Тепер завантажте виправлення шрифту JDK (люб’язно з Уршуляка Ярослава ), виконавши наступне:

cd ~/Downloads
wget http://urshulyak.com/jdk-8u5-tuxjdk-b08.tar.gz
tar -xvf jdk-8u5-tuxjdk-b08.tar.gz
sudo mv jdk-8u5-tuxjdk-b08 /usr/lib/jvm
rm jdk-8u5-tuxjdk-b08.tar.gz

Це отримає завантажений zip та перемістить його в / usr / lib / jvm /. Тепер запустіть у терміналі наступне:

cd ~
sudo gedit .bashrc

Потім додайте наступні рядки до самого низу файлу bashrc.

JAVA_HOME=/usr/lib/jvm/jdk1.8.0_25/
export JAVA_HOME

Збережіть його, тоді gedit idea.sh. (Місце вашого сценарію може бути різним)

gedit /home/USER/Downloads/idea/bin/idea.sh

У самому низу скрипту замініть рядки (-и) в операторі "Хоча" внизу цими двома рядками:

eval "/usr/lib/jvm/jdk-8u5-tuxjdk-b08/bin/java" $ALL_JVM_ARGS -Djb.restart.code=88 $MAIN_CLASS_NAME "$@"
test $? -ne 88 && break

Збережіть його, тоді відкрийте IntelliJ, шрифти повинні працювати, і ви використовуєте Oracle JDK 8 для розробки. Вам, ймовірно, доведеться відредагувати Налаштування проекту та знову встановити JDK, але обов'язково використовуйте фактичний JDK, а не виправлення шрифту.

Це виправлення також працює з CLion , Android Studio та PyCharm .

Ці інструкції передбачають, що версія JDK була 1.8.0_25, імена файлів / шляхів будуть змінені для майбутніх версій.


Дякую за детальну відповідь. Я спробував ваше рішення, але мої шрифти стали більшими та сміливішими. Я міг зменшити розмір шрифту, але не зміг жирних шрифтів змінити на звичайні.
Глибокий

Так, розмір збільшений до 14 (я змінив свою на 11), але шрифти не були напівжирними? Я припускаю, що ви спробували інші шрифти, щоб перевірити, чи вони ще жирні?

Так, не всі шрифти є жирними. Шрифт, який я зараз використовую, став жирним. Я думаю, що мені, можливо, доведеться з цим жити. Чи є спосіб застосувати це рішення до всіх програм Java, окрім зміни їх виконуваних файлів? Я маю на увазі також jar файли? Не можу я використовувати цей виправлений jdk як свій jdk за замовчуванням? Чи це не повний jdk?
Глибокий

1
Вибачте, я не можу допомогти із жирними шрифтами. Можна, можливо, спробувати завантажити ще одну копію шрифту, яку варто зняти, якщо вона вас так турбує. Ви можете спробувати заплутатися з виправленням шрифту, у мене виникли деякі проблеми з використанням його як мого JDK, ви можете спробувати завантажити повний openJDK і об'єднати два, які могли б працювати.

3
@Deepal Переконайтеся, що ви налаштовані також export _JAVA_OPTIONS="-Dawt.useSystemAAFontSettings=lcd -Dsun.java2d.xrender=true"у вашому башерку
Салем,

1

Для того, щоб прихильник DanielSteward завершився:

На жаль, tuxjdkGTK зовнішній вигляд використовує набір шрифтів у використовуваному gtkrc. Але більшість тем не встановлюють шрифту. В результаті netbeans використовуватиме жирний шрифт Arial 15 як шрифт UI.

Щоб виправити це створення gtkrc просто для netbeans з фіксованим шрифтом і сказати netbeans використовувати цей файл.

Я підготував спеціальний пусковий апарат, який робить це напівавтоматично:

#! / бін / баш

### Настроювані змінні: ###

# Шлях, де встановлено мережеві боби
NETBEANS_PATH = $ {NETBEANS_PATH: - ~ / opt / netbeans-dev-2015-06-04} / bin / netbeans
# Ім’я середовища робочого столу для використання стилю з
USED_DE = $ {USED_DE: -mate}
# Tuxjdk видається занадто великими шрифтами UI, тому використовуйте це значення, щоб зменшити їх
FONT_SUBTRAHENT = $ {FONT_SUBTRAHENT: -3}

#################################

функція remQutes () {
  відлуння "$ {@ // \ '/}"
}

функція зниженняFontSize () {
  місцевий субтрахед = $ 1; зрушення
  local args = "$ @"
  echo $ {args // [0-9] /} $ (($ {args // [! 0-9] /} - $ subtrahend))
}

theme = $ (remQuotes `gsettings отримує org. $ {USED_DE}. інтерфейс gtk-тема`)
font = $ (remQuotes `gsettings отримує org. $ {USED_DE}. шрифт-ім'я інтерфейсу`)
шрифт = $ (зменшити шрифт $ FONT_SUBTRAHENT $ шрифт)

themeDirs = $ (знайдіть ~ / .themes / / usr / share / themes / -type d -name "$ {topic}")
gtkRcPath = ""
для dir в "$ themeDirs"; робити
  if [[-f "$ dir / gtk-2.0 / gtkrc"]]; тоді
    gtkRcPath = "$ dir / gtk-2.0 / gtkrc"
    перерва;
  фі
зроблено

if [["$ gtkRcPath" == ""]]; тоді
  echo "Тема не знайдена"> / dev / stderr
  ./$NETBEANS_PATH $ @
фі

cat $ HOME / .netbeans / .gtkrc-2.0
включити "$ gtkRcPath"

стиль "шрифт користувача" {
    font_name = "$ font"
}

widget_class "*" style "user-font"

gtk-font-name = "$ font"

EOF

GTK2_RC_FILES = ~ / .netbeans / .gtkrc-2.0 $ NETBEANS_PATH $ @

Це прочитає ваші налаштування теми та створить підроблену тему лише для netbeans. Ви повинні пристосувати NETBEANS_PATHта USED_DEзмінні до свого оточення.


0

Я створив Openjdk 8u40 самостійно і застосував tuxjdk виправлення. Крім того, я повинен був створити файл local.confв /etc/fonts/з Fontmap скасовує Java для його логічних шрифтів подобаються Dialog, Monospacedі так далі Після цього, Гойдалки додаток на основі покращився. Подивіться ТУТ .


0

Наразі для tuxjdk є лише пакети rpm: http://download.opensuse.org/repositories/home:/TheIndifferent:/tuxjdk/

Мені потрібно трохи більше часу, щоб дізнатися про упаковку debian та підготувати належні пакунки, а також документувати деякі цікаві особливості версії 03 tuxjdk. Тож будьте в курсі, і повідомте про будь-які проблеми, з якими ви стикаєтеся з tuxjdk, на https://github.com/TheIndifferent/tuxjdk , тож я зможу відтворити та (сподіваюся) виправити їх.


0

Насправді вам не потрібно займатись модифікацією idea.sh, яка є нестабільною в оновленнях. Існує специфічний для користувача файл конфігурації ~/.IntelliJIdea2016.1/config/idea.jdk(назви змінюються відповідно), який зберігає завантажувальний JDK.

Офіційні довідки:

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.