Gnuplot устанавливает ширину изображения в пикселях для определенного DPI

У меня была аналогичная проблема почти два года назад с двойной загрузкой Trisquel Linux с Windows 8. Я разместил вопрос/ответ здесь в разделе Суперпользователь (Мне сказали на время, когда вопросы о двойной -загрузке не были -в теме U&L по какой-то причине ).

Как вы увидите в этих сообщениях, проблема заключалась не в том, что Windows удаляла или перезаписывала -GRUB, а в том, что она периодически изменяла настройки UEFI, чтобы использовать загрузчик Windows, а не GRUB. Решение состояло в том, чтобы использовать bcdedit в Windows, чтобы установить путь загрузчика по умолчанию к GRUB, что решило мою проблему.

Я не знаю, сработает ли это решение для вас, но, возможно, стоит попробовать?

(Кроме того, я не думаю, что вам нужно включать безопасную загрузку для загрузки Windows. Я загружаюсь в Windows 8 с отключенным.)

0
03.11.2020, 18:05
1 ответ

Решение 1

Я предполагаю, что вы уже создали фигуру, которая как раз подходит по размеру 420x768. Чтобы создать изображение в формате PNG шириной 1063 пикселя (90 мм при разрешении 300 точек на дюйм )без изменения внешнего вида рисунка, настройте его следующим образом:

scale = 1063.0/420.0

set terminal pngcairo size 420*scale,768*scale fontscale scale linewidth scale pointscale scale

# PLOT HERE

В этом параметре ширина и высота рисунка умножаются на 1063,0/420,0 = 2,53, а размер шрифта, ширина линии и размер точки масштабируются с тем же коэффициентом.

Решение 2

Если вы хотите создать фигуру с нуля с заданным DPI, как насчет следующих настроек терминала,

dpi = 300 ## dpi (variable)
width = 90 ## mm (variable)
height = 164.5 ## mm (variable)

in2mm = 25.4 # mm (fixed)
pt2mm = 0.3528 # mm (fixed)

mm2px = dpi/in2mm
ptscale = pt2mm*mm2px
round(x) = x - floor(x) < 0.5 ? floor(x) : ceil(x)
wpx = round(width * mm2px)
hpx = round(height * mm2px)

set terminal pngcairo size wpx,hpx fontscale ptscale linewidth ptscale pointscale ptscale

# PLOT HERE

heightрассчитывается с использованием 764,0/420,0 *90, чтобы сохранить пропорции исходной фигуры.

4
18.03.2021, 22:53

Теги

Похожие вопросы