Jawa / Говнокод #26976 Ссылка на оригинал

0

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  7. 7
/**
     * Change the zoom level to the specified value. Specify 0.0 to reset the
     * zoom level.
     *
     * @param zoomLevel The zoom level to be set.
     */
    public void setZoomLevel(double zoomLevel);

Когда-то я думал, что zoom 100% это 1.0. И что на zoom нужно умножать. Но оказалось, что я анскильный.

Запостил: DypHuu_niBEHb DypHuu_niBEHb, (Updated )

Комментарии (23) RSS

    • интуитивно кажется, что раза в полтора всё стало больше:)

      Это CEF.
      Ответить
        • Значит, чтобы увеличить изображение в два раза, мне нужно указать zoomLevel = 3.8?
          Ответить
          • Дяденька, я сварщик то не настоящий, формулу на помойке нагуглил.
            Ответить
            • А где, кстати? В комментариях этого факта нет, в исходниках тоже не нашёл (там функция делегирует свои полномочия другой функции и так по цепочке).
              Ответить
              • На стековерфлоу какой-то чувак запостил.

                > в исходниках

                Да оно поди в недра хрома уходит?
                Ответить
                • Нашёл:
                  https://github.com/chromium/chromium/blob/55f44515cd0b9e7739b434d1c62f4b7e321cd530/third_party/blink/public/web/web_view.h#L191

                  // Zoom ----------------------------------------------------------------
                  
                  // Returns the current zoom level.  0 is "original size", and each increment
                  // above or below represents zooming 20% larger or smaller to default limits
                  // of 300% and 50% of original size, respectively.  Only plugins use
                  // non whole-numbers, since they might choose to have specific zoom level so
                  // that fixed-width content is fit-to-page-width, for example.
                  virtual double ZoomLevel() = 0;


                  Угу, основание равно 1,2. Причём там ещё лимит: нельзя зожать более, чем в два раза, и розжать более, чем в три раза.
                  Ответить
                  • питушок, я правильно понимаю, что разницы между 0.9 и 0 нету для хрома, а 1 это на 20%, а 2.0 это на 40% итд?
                    Ответить
                      • то есть если я хочу увеличиться в полтора раза, то мне нужно ехать в ращ-ку за математиком?

                        да не, так-то макака понял. 20% от 120 это 24, потому и вот.

                        но конечно пиздец
                        Ответить
                        • К сожалению да. Без ло-га-риф-мов тут никак. 2.224 для 1.5х
                          Ответить
                          • а дробная хуня работает только для плагинов, сиречь 40% не получить никак, ку?

                            надо запустить и проверить конечно
                            Ответить
                            • Через гуйню - нет наверное. Здесь это скорее всего имелось в виду, а не то что ты программно не можешь.
                              Ответить
                              • уф)
                                как-то так, да?
                                from math import log, pow
                                
                                
                                def percent_by_zoom(zoom):
                                    return 120 * pow(1.2, zoom - 1)
                                
                                
                                def zoom_by_percent(percent):
                                    return log(percent / 120, 1.2) + 1


                                блядь, геометрическую прогрессию же в школе еще проходили.. Вот что значит, быть мокакой
                                Ответить
                                  • ну потому что первый член прогрессии 120 (почему то я посчитал с 1.0, лол), вот я и сделал влоб, я же макака

                                    но ты прав, можно считать его равным 100, и тогда убрать мусор

                                    Не факт кстати, что в моем языке есть log с основанием, может придется делать натуральный лог от числа и основания и делить вроде
                                    Ответить
                                    • Вот теперь мои трусики мокренькие, как и положено. Кстати, обратили внимание, насколько компактнее выглядит код на "PHP" по сравнению с кодом на том языке? И без ебучих отступов.
                                      Ответить

Добавить комментарий

Помни, guest, за тобой могут следить!

    А не использовать ли нам bbcode?


    8